summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/gpg.mock/README.md3
-rw-r--r--var/spack/gpg.mock/data/content.txt1
-rw-r--r--var/spack/gpg.mock/data/content.txt.asc17
-rw-r--r--var/spack/gpg.mock/keys/external.key30
-rw-r--r--var/spack/gpg/README.md5
-rw-r--r--var/spack/repos/builtin.mock/packages/a/package.py45
-rw-r--r--var/spack/repos/builtin.mock/packages/b/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/boost/package.py83
-rw-r--r--var/spack/repos/builtin.mock/packages/build-error/package.py49
-rw-r--r--var/spack/repos/builtin.mock/packages/c/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/callpath/package.py9
-rw-r--r--var/spack/repos/builtin.mock/packages/canfail/package.py41
-rw-r--r--var/spack/repos/builtin.mock/packages/cmake-client/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/cmake/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/conflict-parent/package.py46
-rw-r--r--var/spack/repos/builtin.mock/packages/conflict/package.py46
-rw-r--r--var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py41
-rw-r--r--var/spack/repos/builtin.mock/packages/dependency-install/package.py38
-rw-r--r--var/spack/repos/builtin.mock/packages/dependent-install/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/develop-test/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/direct-mpich/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dt-diamond/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild1/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild2/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtbuild3/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink1/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink2/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink3/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink4/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtlink5/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun1/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun2/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtrun3/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dttop/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dtuse/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/dyninst/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/e/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/extendee/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/extension1/package.py43
-rw-r--r--var/spack/repos/builtin.mock/packages/extension2/package.py44
-rw-r--r--var/spack/repos/builtin.mock/packages/externalmodule/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/externalprereq/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/externaltest/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/externaltool/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/externalvirtual/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/failing-build/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/fake/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/flake8/hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/flake8/package.py83
-rw-r--r--var/spack/repos/builtin.mock/packages/git-test/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/hg-test/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/hypre/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/indirect-mpich/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/libdwarf/package.py8
-rw-r--r--var/spack/repos/builtin.mock/packages/libelf/package.py15
-rw-r--r--var/spack/repos/builtin.mock/packages/mixedversions/package.py36
-rw-r--r--var/spack/repos/builtin.mock/packages/mpich/package.py8
-rw-r--r--var/spack/repos/builtin.mock/packages/mpich2/package.py8
-rw-r--r--var/spack/repos/builtin.mock/packages/mpileaks/package.py12
-rw-r--r--var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-base/package.py40
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod/package.py24
-rw-r--r--var/spack/repos/builtin.mock/packages/multivalue_variant/package.py59
-rw-r--r--var/spack/repos/builtin.mock/packages/netlib-blas/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/netlib-lapack/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/openblas/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/optional-dep-test/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/othervirtual/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/override-context-templates/package.py42
-rw-r--r--var/spack/repos/builtin.mock/packages/override-module-templates/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-a-dependency/foo.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-several-dependencies/bar.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-several-dependencies/baz.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-several-dependencies/foo.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py60
-rw-r--r--var/spack/repos/builtin.mock/packages/patch/bar.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch/baz.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch/foo.patch1
-rw-r--r--var/spack/repos/builtin.mock/packages/patch/package.py41
-rw-r--r--var/spack/repos/builtin.mock/packages/patchelf/package.py41
-rw-r--r--var/spack/repos/builtin.mock/packages/printing-package/package.py45
-rw-r--r--var/spack/repos/builtin.mock/packages/python/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py39
-rw-r--r--var/spack/repos/builtin.mock/packages/svn-test/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py6
-rw-r--r--var/spack/repos/builtin.mock/packages/url-list-test/package.py49
-rw-r--r--var/spack/repos/builtin.mock/packages/url-test/package.py35
-rw-r--r--var/spack/repos/builtin.mock/packages/zmpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/abinit/package.py148
-rw-r--r--var/spack/repos/builtin/packages/abyss/package.py59
-rw-r--r--var/spack/repos/builtin/packages/ack/package.py10
-rw-r--r--var/spack/repos/builtin/packages/activeharmony/package.py6
-rw-r--r--var/spack/repos/builtin/packages/adept-utils/package.py19
-rw-r--r--var/spack/repos/builtin/packages/adios/package.py162
-rw-r--r--var/spack/repos/builtin/packages/adios/python.patch10
-rw-r--r--var/spack/repos/builtin/packages/adios2/package.py119
-rw-r--r--var/spack/repos/builtin/packages/adlbx/package.py41
-rw-r--r--var/spack/repos/builtin/packages/adol-c/package.py76
-rw-r--r--var/spack/repos/builtin/packages/albert/package.py41
-rw-r--r--var/spack/repos/builtin/packages/alglib/Makefile20
-rw-r--r--var/spack/repos/builtin/packages/alglib/package.py61
-rw-r--r--var/spack/repos/builtin/packages/allinea-forge/package.py8
-rw-r--r--var/spack/repos/builtin/packages/allinea-reports/package.py8
-rw-r--r--var/spack/repos/builtin/packages/allpaths-lg/package.py45
-rw-r--r--var/spack/repos/builtin/packages/alquimia/package.py68
-rw-r--r--var/spack/repos/builtin/packages/alsa-lib/package.py36
-rw-r--r--var/spack/repos/builtin/packages/amg/package.py74
-rw-r--r--var/spack/repos/builtin/packages/amg2013/package.py77
-rw-r--r--var/spack/repos/builtin/packages/ampliconnoise/package.py67
-rw-r--r--var/spack/repos/builtin/packages/amr-exp-parabolic/package.py95
-rw-r--r--var/spack/repos/builtin/packages/amrex/package.py86
-rw-r--r--var/spack/repos/builtin/packages/andi/package.py42
-rw-r--r--var/spack/repos/builtin/packages/angsd/package.py50
-rw-r--r--var/spack/repos/builtin/packages/ant/package.py17
-rw-r--r--var/spack/repos/builtin/packages/antlr/gcc.patch15
-rw-r--r--var/spack/repos/builtin/packages/antlr/package.py29
-rw-r--r--var/spack/repos/builtin/packages/ape/package.py8
-rw-r--r--var/spack/repos/builtin/packages/apex/package.py38
-rw-r--r--var/spack/repos/builtin/packages/applewmproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/appres/package.py14
-rw-r--r--var/spack/repos/builtin/packages/apr-util/package.py98
-rw-r--r--var/spack/repos/builtin/packages/apr/package.py20
-rw-r--r--var/spack/repos/builtin/packages/archer/package.py49
-rw-r--r--var/spack/repos/builtin/packages/argtable/package.py36
-rw-r--r--var/spack/repos/builtin/packages/arlecore/package.py40
-rw-r--r--var/spack/repos/builtin/packages/armadillo/package.py44
-rw-r--r--var/spack/repos/builtin/packages/armadillo/undef_linux.patch4
-rw-r--r--var/spack/repos/builtin/packages/arpack-ng/package.py30
-rw-r--r--var/spack/repos/builtin/packages/arpack/package.py73
-rw-r--r--var/spack/repos/builtin/packages/ascent/package.py333
-rw-r--r--var/spack/repos/builtin/packages/asciidoc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/aspa/package.py71
-rw-r--r--var/spack/repos/builtin/packages/aspell/package.py85
-rw-r--r--var/spack/repos/builtin/packages/aspell6-de/package.py34
-rw-r--r--var/spack/repos/builtin/packages/aspell6-en/package.py34
-rw-r--r--var/spack/repos/builtin/packages/aspell6-es/package.py34
-rw-r--r--var/spack/repos/builtin/packages/assimp/package.py41
-rw-r--r--var/spack/repos/builtin/packages/astra/package.py6
-rw-r--r--var/spack/repos/builtin/packages/astral/astral.sh3
-rw-r--r--var/spack/repos/builtin/packages/astral/package.py64
-rw-r--r--var/spack/repos/builtin/packages/astyle/package.py19
-rw-r--r--var/spack/repos/builtin/packages/atk/package.py18
-rw-r--r--var/spack/repos/builtin/packages/atlas/package.py33
-rw-r--r--var/spack/repos/builtin/packages/atompaw/package.py8
-rw-r--r--var/spack/repos/builtin/packages/atop/package.py9
-rw-r--r--var/spack/repos/builtin/packages/augustus/package.py72
-rw-r--r--var/spack/repos/builtin/packages/autoconf/package.py33
-rw-r--r--var/spack/repos/builtin/packages/autodock-vina/main.patch29
-rw-r--r--var/spack/repos/builtin/packages/autodock-vina/package.py72
-rw-r--r--var/spack/repos/builtin/packages/autodock-vina/split.patch29
-rw-r--r--var/spack/repos/builtin/packages/autogen/package.py62
-rw-r--r--var/spack/repos/builtin/packages/automaded/package.py16
-rw-r--r--var/spack/repos/builtin/packages/automake/package.py19
-rw-r--r--var/spack/repos/builtin/packages/bamtools/package.py24
-rw-r--r--var/spack/repos/builtin/packages/bamutil/libstatgen-issue-9.patch11
-rw-r--r--var/spack/repos/builtin/packages/bamutil/package.py47
-rw-r--r--var/spack/repos/builtin/packages/bash-completion/package.py25
-rw-r--r--var/spack/repos/builtin/packages/bash/package.py32
-rw-r--r--var/spack/repos/builtin/packages/bats/package.py38
-rw-r--r--var/spack/repos/builtin/packages/bazel/package.py28
-rw-r--r--var/spack/repos/builtin/packages/bbcp/package.py6
-rw-r--r--var/spack/repos/builtin/packages/bbmap/package.py39
-rw-r--r--var/spack/repos/builtin/packages/bcftools/package.py14
-rw-r--r--var/spack/repos/builtin/packages/bcl2fastq2/cmake-macros.patch10
-rw-r--r--var/spack/repos/builtin/packages/bcl2fastq2/cxxConfigure-cmake.patch12
-rw-r--r--var/spack/repos/builtin/packages/bcl2fastq2/package.py110
-rw-r--r--var/spack/repos/builtin/packages/bdftopcf/package.py16
-rw-r--r--var/spack/repos/builtin/packages/bdw-gc/package.py22
-rw-r--r--var/spack/repos/builtin/packages/bear/package.py19
-rw-r--r--var/spack/repos/builtin/packages/beast2/package.py51
-rw-r--r--var/spack/repos/builtin/packages/bedtools2/package.py7
-rw-r--r--var/spack/repos/builtin/packages/beforelight/package.py14
-rw-r--r--var/spack/repos/builtin/packages/benchmark/package.py (renamed from var/spack/repos/builtin/packages/gbenchmark/package.py)35
-rw-r--r--var/spack/repos/builtin/packages/berkeley-db/package.py47
-rw-r--r--var/spack/repos/builtin/packages/bertini/package.py14
-rw-r--r--var/spack/repos/builtin/packages/bib2xhtml/package.py9
-rw-r--r--var/spack/repos/builtin/packages/bigreqsproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/binutils/binutilskrell-2.24.patch52
-rw-r--r--var/spack/repos/builtin/packages/binutils/package.py46
-rw-r--r--var/spack/repos/builtin/packages/bioawk/package.py51
-rw-r--r--var/spack/repos/builtin/packages/bison/package.py24
-rw-r--r--var/spack/repos/builtin/packages/bison/pgi.patch10
-rw-r--r--var/spack/repos/builtin/packages/bison/secure_snprintf.patch15
-rw-r--r--var/spack/repos/builtin/packages/bitmap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/blast-plus/blast-make-fix2.5.0.diff22
-rw-r--r--var/spack/repos/builtin/packages/blast-plus/package.py221
-rw-r--r--var/spack/repos/builtin/packages/blat/package.py44
-rw-r--r--var/spack/repos/builtin/packages/blaze/package.py58
-rw-r--r--var/spack/repos/builtin/packages/bliss/package.py6
-rw-r--r--var/spack/repos/builtin/packages/blitz/package.py6
-rw-r--r--var/spack/repos/builtin/packages/bml/package.py62
-rw-r--r--var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi.patch290
-rw-r--r--var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch250
-rw-r--r--var/spack/repos/builtin/packages/boost/call_once_variadic.patch (renamed from var/spack/repos/builtin/packages/boost/boost_10125.patch)6
-rw-r--r--var/spack/repos/builtin/packages/boost/package.py115
-rw-r--r--var/spack/repos/builtin/packages/boost/python_jam.patch42
-rw-r--r--var/spack/repos/builtin/packages/boost/python_jam_pre156.patch42
-rw-r--r--var/spack/repos/builtin/packages/boost/xl_1_62_0_le.patch787
-rw-r--r--var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py40
-rw-r--r--var/spack/repos/builtin/packages/bowtie/package.py53
-rw-r--r--var/spack/repos/builtin/packages/bowtie2/bowtie2-2.2.5.patch (renamed from var/spack/repos/builtin/packages/bowtie2/bowtie2-2.5.patch)0
-rw-r--r--var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.0.patch16
-rw-r--r--var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.1.patch17
-rw-r--r--var/spack/repos/builtin/packages/bowtie2/package.py51
-rw-r--r--var/spack/repos/builtin/packages/boxlib/package.py15
-rw-r--r--var/spack/repos/builtin/packages/bpp-core/package.py16
-rw-r--r--var/spack/repos/builtin/packages/bpp-phyl/package.py16
-rw-r--r--var/spack/repos/builtin/packages/bpp-seq/package.py16
-rw-r--r--var/spack/repos/builtin/packages/bpp-suite/package.py15
-rw-r--r--var/spack/repos/builtin/packages/braker/package.py52
-rw-r--r--var/spack/repos/builtin/packages/branson/package.py61
-rw-r--r--var/spack/repos/builtin/packages/brigand/package.py45
-rw-r--r--var/spack/repos/builtin/packages/bsseeker2/package.py49
-rw-r--r--var/spack/repos/builtin/packages/bucky/package.py57
-rw-r--r--var/spack/repos/builtin/packages/busco/package.py59
-rw-r--r--var/spack/repos/builtin/packages/butter/package.py46
-rw-r--r--var/spack/repos/builtin/packages/bwa/package.py19
-rw-r--r--var/spack/repos/builtin/packages/byobu/package.py37
-rw-r--r--var/spack/repos/builtin/packages/bzip2/package.py57
-rw-r--r--var/spack/repos/builtin/packages/c-blosc/package.py46
-rw-r--r--var/spack/repos/builtin/packages/caffe/package.py103
-rw-r--r--var/spack/repos/builtin/packages/cairo/package.py11
-rw-r--r--var/spack/repos/builtin/packages/caliper/package.py66
-rw-r--r--var/spack/repos/builtin/packages/callpath/package.py34
-rw-r--r--var/spack/repos/builtin/packages/candle-benchmarks/package.py52
-rw-r--r--var/spack/repos/builtin/packages/cantera/package.py155
-rw-r--r--var/spack/repos/builtin/packages/canu/package.py61
-rw-r--r--var/spack/repos/builtin/packages/cap3/package.py43
-rw-r--r--var/spack/repos/builtin/packages/cares/package.py41
-rw-r--r--var/spack/repos/builtin/packages/cask/package.py6
-rw-r--r--var/spack/repos/builtin/packages/catch/package.py23
-rw-r--r--var/spack/repos/builtin/packages/cbench/package.py92
-rw-r--r--var/spack/repos/builtin/packages/cblas/package.py6
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py97
-rw-r--r--var/spack/repos/builtin/packages/cbtf-argonavis/package.py103
-rw-r--r--var/spack/repos/builtin/packages/cbtf-krell/package.py198
-rw-r--r--var/spack/repos/builtin/packages/cbtf-lanl/package.py87
-rw-r--r--var/spack/repos/builtin/packages/cbtf/package.py124
-rw-r--r--var/spack/repos/builtin/packages/ccache/package.py11
-rw-r--r--var/spack/repos/builtin/packages/cctools/package.py67
-rw-r--r--var/spack/repos/builtin/packages/cdbfasta/package.py39
-rw-r--r--var/spack/repos/builtin/packages/cdd/package.py10
-rw-r--r--var/spack/repos/builtin/packages/cddlib/package.py29
-rw-r--r--var/spack/repos/builtin/packages/cdhit/package.py49
-rw-r--r--var/spack/repos/builtin/packages/cdo/package.py149
-rw-r--r--var/spack/repos/builtin/packages/cereal/Boost.patch14
-rw-r--r--var/spack/repos/builtin/packages/cereal/Boost2.patch10
-rw-r--r--var/spack/repos/builtin/packages/cereal/package.py40
-rw-r--r--var/spack/repos/builtin/packages/cereal/pointers.patch (renamed from var/spack/repos/builtin/packages/cereal/Werror.patch)14
-rw-r--r--var/spack/repos/builtin/packages/cfitsio/package.py37
-rw-r--r--var/spack/repos/builtin/packages/cgal/package.py36
-rw-r--r--var/spack/repos/builtin/packages/cgm/package.py56
-rw-r--r--var/spack/repos/builtin/packages/cgns/package.py34
-rw-r--r--var/spack/repos/builtin/packages/charm/package.py88
-rw-r--r--var/spack/repos/builtin/packages/check/package.py39
-rw-r--r--var/spack/repos/builtin/packages/chlorop/chlorop.patch36
-rw-r--r--var/spack/repos/builtin/packages/chlorop/package.py53
-rw-r--r--var/spack/repos/builtin/packages/chombo/Make.defs.local.template.patch23
-rw-r--r--var/spack/repos/builtin/packages/chombo/hdf5-16api.patch12
-rw-r--r--var/spack/repos/builtin/packages/chombo/package.py140
-rw-r--r--var/spack/repos/builtin/packages/cityhash/package.py16
-rw-r--r--var/spack/repos/builtin/packages/clamr/package.py78
-rw-r--r--var/spack/repos/builtin/packages/cleaveland4/package.py48
-rw-r--r--var/spack/repos/builtin/packages/cleverleaf/package.py21
-rw-r--r--var/spack/repos/builtin/packages/clfft/package.py53
-rw-r--r--var/spack/repos/builtin/packages/clhep/package.py52
-rw-r--r--var/spack/repos/builtin/packages/cloc/package.py50
-rw-r--r--var/spack/repos/builtin/packages/cloog/package.py6
-rw-r--r--var/spack/repos/builtin/packages/cloverleaf/package.py110
-rw-r--r--var/spack/repos/builtin/packages/cloverleaf3d/package.py93
-rw-r--r--var/spack/repos/builtin/packages/clustalo/package.py36
-rw-r--r--var/spack/repos/builtin/packages/clustalw/package.py34
-rw-r--r--var/spack/repos/builtin/packages/cmake/package.py97
-rw-r--r--var/spack/repos/builtin/packages/cmocka/package.py22
-rw-r--r--var/spack/repos/builtin/packages/cmor/package.py10
-rw-r--r--var/spack/repos/builtin/packages/cnmem/package.py13
-rw-r--r--var/spack/repos/builtin/packages/cnpy/package.py34
-rw-r--r--var/spack/repos/builtin/packages/cns-nospec/package.py109
-rw-r--r--var/spack/repos/builtin/packages/cntk/build.patch386
-rw-r--r--var/spack/repos/builtin/packages/cntk/kaldireader-openblas.patch32
-rw-r--r--var/spack/repos/builtin/packages/cntk/lock-file.patch20
-rw-r--r--var/spack/repos/builtin/packages/cntk/package.py123
-rw-r--r--var/spack/repos/builtin/packages/cntk1bitsgd/package.py44
-rw-r--r--var/spack/repos/builtin/packages/codar-cheetah/package.py45
-rw-r--r--var/spack/repos/builtin/packages/coevp/package.py89
-rw-r--r--var/spack/repos/builtin/packages/cohmm/package.py61
-rw-r--r--var/spack/repos/builtin/packages/coinhsl/package.py47
-rw-r--r--var/spack/repos/builtin/packages/comd/package.py112
-rw-r--r--var/spack/repos/builtin/packages/compiz/package.py14
-rw-r--r--var/spack/repos/builtin/packages/compositeproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/conduit/package.py90
-rw-r--r--var/spack/repos/builtin/packages/constype/package.py14
-rw-r--r--var/spack/repos/builtin/packages/converge/package.py209
-rw-r--r--var/spack/repos/builtin/packages/coreutils/package.py16
-rw-r--r--var/spack/repos/builtin/packages/corset/package.py44
-rw-r--r--var/spack/repos/builtin/packages/cosmomc/Makefile.patch26
-rw-r--r--var/spack/repos/builtin/packages/cosmomc/errorstop.patch11
-rw-r--r--var/spack/repos/builtin/packages/cosmomc/package.py210
-rw-r--r--var/spack/repos/builtin/packages/cosp2/package.py74
-rw-r--r--var/spack/repos/builtin/packages/cp2k/package.py114
-rw-r--r--var/spack/repos/builtin/packages/cppad/package.py13
-rw-r--r--var/spack/repos/builtin/packages/cppcheck/package.py15
-rw-r--r--var/spack/repos/builtin/packages/cpprestsdk/package.py41
-rw-r--r--var/spack/repos/builtin/packages/cppunit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/cppzmq/package.py40
-rw-r--r--var/spack/repos/builtin/packages/cram/package.py19
-rw-r--r--var/spack/repos/builtin/packages/cryptopp/package.py7
-rw-r--r--var/spack/repos/builtin/packages/cscope/package.py15
-rw-r--r--var/spack/repos/builtin/packages/csdp/package.py43
-rw-r--r--var/spack/repos/builtin/packages/cub/package.py41
-rw-r--r--var/spack/repos/builtin/packages/cube/package.py41
-rw-r--r--var/spack/repos/builtin/packages/cuda-memtest/package.py45
-rw-r--r--var/spack/repos/builtin/packages/cuda/package.py39
-rw-r--r--var/spack/repos/builtin/packages/cudnn/package.py43
-rw-r--r--var/spack/repos/builtin/packages/cufflinks/package.py46
-rw-r--r--var/spack/repos/builtin/packages/cups/package.py44
-rw-r--r--var/spack/repos/builtin/packages/curl/package.py33
-rw-r--r--var/spack/repos/builtin/packages/cvs/package.py36
-rw-r--r--var/spack/repos/builtin/packages/czmq/package.py40
-rw-r--r--var/spack/repos/builtin/packages/dakota/package.py42
-rw-r--r--var/spack/repos/builtin/packages/daligner/package.py51
-rw-r--r--var/spack/repos/builtin/packages/damageproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/damselfly/package.py16
-rw-r--r--var/spack/repos/builtin/packages/darshan-runtime/package.py8
-rw-r--r--var/spack/repos/builtin/packages/darshan-util/package.py8
-rw-r--r--var/spack/repos/builtin/packages/dash/package.py48
-rw-r--r--var/spack/repos/builtin/packages/datamash/package.py13
-rw-r--r--var/spack/repos/builtin/packages/dataspaces/package.py91
-rw-r--r--var/spack/repos/builtin/packages/dbus/package.py6
-rw-r--r--var/spack/repos/builtin/packages/dealii/package.py172
-rw-r--r--var/spack/repos/builtin/packages/dejagnu/package.py43
-rw-r--r--var/spack/repos/builtin/packages/delly2/package.py65
-rw-r--r--var/spack/repos/builtin/packages/dia/package.py24
-rw-r--r--var/spack/repos/builtin/packages/dialign-tx/package.py52
-rw-r--r--var/spack/repos/builtin/packages/direnv/package.py39
-rw-r--r--var/spack/repos/builtin/packages/discovar/package.py36
-rw-r--r--var/spack/repos/builtin/packages/dlpack/package.py37
-rw-r--r--var/spack/repos/builtin/packages/dmlc-core/cmake.patch21
-rw-r--r--var/spack/repos/builtin/packages/dmlc-core/package.py57
-rw-r--r--var/spack/repos/builtin/packages/dmxproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/docbook-xml/package.py10
-rw-r--r--var/spack/repos/builtin/packages/docbook-xsl/package.py10
-rw-r--r--var/spack/repos/builtin/packages/dos2unix/package.py37
-rw-r--r--var/spack/repos/builtin/packages/double-conversion/package.py50
-rw-r--r--var/spack/repos/builtin/packages/doxygen/package.py14
-rw-r--r--var/spack/repos/builtin/packages/dri2proto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/dri3proto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/dtcmp/package.py7
-rw-r--r--var/spack/repos/builtin/packages/dyninst/package.py20
-rw-r--r--var/spack/repos/builtin/packages/ea-utils/package.py51
-rw-r--r--var/spack/repos/builtin/packages/easybuild/package.py38
-rw-r--r--var/spack/repos/builtin/packages/ebms/package.py69
-rw-r--r--var/spack/repos/builtin/packages/eccodes/enable_only_jasper.patch26
-rw-r--r--var/spack/repos/builtin/packages/eccodes/enable_only_openjpeg.patch32
-rw-r--r--var/spack/repos/builtin/packages/eccodes/package.py94
-rw-r--r--var/spack/repos/builtin/packages/ecp-proxy-apps/package.py65
-rw-r--r--var/spack/repos/builtin/packages/editres/package.py14
-rw-r--r--var/spack/repos/builtin/packages/eigen/package.py38
-rw-r--r--var/spack/repos/builtin/packages/elemental/cmake_0.87.7.patch22
-rw-r--r--var/spack/repos/builtin/packages/elemental/elemental_cublas.patch668
-rw-r--r--var/spack/repos/builtin/packages/elemental/package.py172
-rw-r--r--var/spack/repos/builtin/packages/elfutils/package.py35
-rw-r--r--var/spack/repos/builtin/packages/elk/package.py27
-rw-r--r--var/spack/repos/builtin/packages/elpa/package.py87
-rw-r--r--var/spack/repos/builtin/packages/emacs/package.py34
-rw-r--r--var/spack/repos/builtin/packages/emboss/package.py40
-rw-r--r--var/spack/repos/builtin/packages/encodings/package.py6
-rw-r--r--var/spack/repos/builtin/packages/environment-modules/package.py11
-rw-r--r--var/spack/repos/builtin/packages/es/package.py41
-rw-r--r--var/spack/repos/builtin/packages/esmf/gcc.patch26
-rw-r--r--var/spack/repos/builtin/packages/esmf/mvapich2.patch225
-rw-r--r--var/spack/repos/builtin/packages/esmf/package.py256
-rw-r--r--var/spack/repos/builtin/packages/espresso/dspev_drv_elpa.patch42
-rw-r--r--var/spack/repos/builtin/packages/espresso/package.py121
-rw-r--r--var/spack/repos/builtin/packages/etsf-io/package.py6
-rw-r--r--var/spack/repos/builtin/packages/everytrace-example/package.py10
-rw-r--r--var/spack/repos/builtin/packages/everytrace/package.py10
-rw-r--r--var/spack/repos/builtin/packages/evieext/package.py13
-rw-r--r--var/spack/repos/builtin/packages/exabayes/package.py57
-rw-r--r--var/spack/repos/builtin/packages/exampm/package.py37
-rw-r--r--var/spack/repos/builtin/packages/exasp2/package.py94
-rw-r--r--var/spack/repos/builtin/packages/exmcutils/package.py37
-rw-r--r--var/spack/repos/builtin/packages/exodusii/cmake-exodus.patch9
-rw-r--r--var/spack/repos/builtin/packages/exodusii/package.py42
-rw-r--r--var/spack/repos/builtin/packages/exonerate/package.py8
-rw-r--r--var/spack/repos/builtin/packages/expat/package.py30
-rw-r--r--var/spack/repos/builtin/packages/expect/expect_detect_tcl_private_header_os_x_mountain_lion.patch23
-rw-r--r--var/spack/repos/builtin/packages/expect/package.py79
-rw-r--r--var/spack/repos/builtin/packages/extrae/package.py33
-rw-r--r--var/spack/repos/builtin/packages/exuberant-ctags/package.py14
-rw-r--r--var/spack/repos/builtin/packages/f90cache/package.py38
-rw-r--r--var/spack/repos/builtin/packages/falcon/package.py51
-rw-r--r--var/spack/repos/builtin/packages/farmhash/CMakeLists.txt25
-rw-r--r--var/spack/repos/builtin/packages/farmhash/package.py42
-rw-r--r--var/spack/repos/builtin/packages/fastjar/package.py36
-rw-r--r--var/spack/repos/builtin/packages/fastmath/package.py65
-rw-r--r--var/spack/repos/builtin/packages/fastme/package.py42
-rw-r--r--var/spack/repos/builtin/packages/fastphase/package.py39
-rw-r--r--var/spack/repos/builtin/packages/fastq-screen/package.py46
-rw-r--r--var/spack/repos/builtin/packages/fastqc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/fastqvalidator/package.py55
-rw-r--r--var/spack/repos/builtin/packages/fastx-toolkit/package.py14
-rw-r--r--var/spack/repos/builtin/packages/fenics/package.py51
-rw-r--r--var/spack/repos/builtin/packages/ferret/package.py24
-rw-r--r--var/spack/repos/builtin/packages/ffmpeg/package.py49
-rw-r--r--var/spack/repos/builtin/packages/fftw/package.py122
-rw-r--r--var/spack/repos/builtin/packages/fftw/pgi-3.3.6-pl2.patch121
-rw-r--r--var/spack/repos/builtin/packages/fimpute/package.py40
-rw-r--r--var/spack/repos/builtin/packages/findutils/package.py53
-rw-r--r--var/spack/repos/builtin/packages/fio/package.py56
-rw-r--r--var/spack/repos/builtin/packages/fish/package.py16
-rw-r--r--var/spack/repos/builtin/packages/fixesproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/flac/package.py39
-rw-r--r--var/spack/repos/builtin/packages/flang/package.py82
-rw-r--r--var/spack/repos/builtin/packages/flann/package.py149
-rw-r--r--var/spack/repos/builtin/packages/flash/package.py42
-rw-r--r--var/spack/repos/builtin/packages/flecsale/package.py58
-rw-r--r--var/spack/repos/builtin/packages/flecsi/package.py59
-rw-r--r--var/spack/repos/builtin/packages/flex/package.py38
-rw-r--r--var/spack/repos/builtin/packages/flint/package.py6
-rw-r--r--var/spack/repos/builtin/packages/fltk/package.py6
-rw-r--r--var/spack/repos/builtin/packages/flux/package.py33
-rw-r--r--var/spack/repos/builtin/packages/fmt/package.py47
-rw-r--r--var/spack/repos/builtin/packages/foam-extend/package.py546
-rw-r--r--var/spack/repos/builtin/packages/folly/package.py65
-rw-r--r--var/spack/repos/builtin/packages/font-adobe-100dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-adobe-75dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-adobe-utopia-100dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-adobe-utopia-75dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-adobe-utopia-type1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-alias/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-arabic-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-100dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-75dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-lucidatypewriter-100dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-lucidatypewriter-75dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-ttf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bh-type1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bitstream-100dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bitstream-75dpi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bitstream-speedo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-bitstream-type1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-cronyx-cyrillic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-cursor-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-daewoo-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-dec-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-ibm-type1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-isas-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-jis-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-micro-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-misc-cyrillic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-misc-ethiopic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-misc-meltho/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-misc-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-mutt-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-schumacher-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-screen-cyrillic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-sony-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-sun-misc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-util/package.py14
-rw-r--r--var/spack/repos/builtin/packages/font-winitzki-cyrillic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/font-xfree86-type1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/fontcacheproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/fontconfig/package.py31
-rw-r--r--var/spack/repos/builtin/packages/fontsproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/fonttosfnt/package.py14
-rw-r--r--var/spack/repos/builtin/packages/fpc/package.py54
-rw-r--r--var/spack/repos/builtin/packages/freebayes/package.py51
-rw-r--r--var/spack/repos/builtin/packages/freetype/package.py13
-rw-r--r--var/spack/repos/builtin/packages/fseq/package.py41
-rw-r--r--var/spack/repos/builtin/packages/fsl/package.py102
-rw-r--r--var/spack/repos/builtin/packages/fslsfonts/package.py14
-rw-r--r--var/spack/repos/builtin/packages/fstobdf/package.py14
-rw-r--r--var/spack/repos/builtin/packages/funhpc/package.py63
-rw-r--r--var/spack/repos/builtin/packages/gapcloser/package.py39
-rw-r--r--var/spack/repos/builtin/packages/gapfiller/package.py52
-rw-r--r--var/spack/repos/builtin/packages/gasnet/package.py65
-rw-r--r--var/spack/repos/builtin/packages/gaussian/package.py71
-rw-r--r--var/spack/repos/builtin/packages/gawk/package.py16
-rw-r--r--var/spack/repos/builtin/packages/gblocks/package.py40
-rw-r--r--var/spack/repos/builtin/packages/gcc/darwin/apfs.patch12
-rw-r--r--var/spack/repos/builtin/packages/gcc/darwin/gcc-6.1.0-jit.patch21
-rw-r--r--var/spack/repos/builtin/packages/gcc/darwin/gcc-7.1.0-headerpad.patch19
-rw-r--r--var/spack/repos/builtin/packages/gcc/package.py283
-rw-r--r--var/spack/repos/builtin/packages/gccmakedep/package.py14
-rw-r--r--var/spack/repos/builtin/packages/gccxml/darwin-gcc.patch11
-rw-r--r--var/spack/repos/builtin/packages/gccxml/package.py36
-rw-r--r--var/spack/repos/builtin/packages/gconf/package.py16
-rw-r--r--var/spack/repos/builtin/packages/gdal/package.py10
-rw-r--r--var/spack/repos/builtin/packages/gdb/package.py7
-rw-r--r--var/spack/repos/builtin/packages/gdbm/package.py53
-rw-r--r--var/spack/repos/builtin/packages/gdk-pixbuf/package.py22
-rw-r--r--var/spack/repos/builtin/packages/geant4/package.py79
-rw-r--r--var/spack/repos/builtin/packages/gearshifft/package.py74
-rw-r--r--var/spack/repos/builtin/packages/gemmlowp/package.py40
-rw-r--r--var/spack/repos/builtin/packages/genemark-et/package.py53
-rw-r--r--var/spack/repos/builtin/packages/genometools/package.py45
-rw-r--r--var/spack/repos/builtin/packages/geos/package.py11
-rw-r--r--var/spack/repos/builtin/packages/gettext/package.py23
-rw-r--r--var/spack/repos/builtin/packages/gettext/test-verify-parallel-make-check.patch61
-rw-r--r--var/spack/repos/builtin/packages/gflags/package.py18
-rw-r--r--var/spack/repos/builtin/packages/ghostscript-fonts/package.py8
-rw-r--r--var/spack/repos/builtin/packages/ghostscript/package.py54
-rw-r--r--var/spack/repos/builtin/packages/giflib/package.py14
-rw-r--r--var/spack/repos/builtin/packages/git-lfs/package.py12
-rw-r--r--var/spack/repos/builtin/packages/git/package.py219
-rw-r--r--var/spack/repos/builtin/packages/gl2ps/package.py45
-rw-r--r--var/spack/repos/builtin/packages/glew/package.py6
-rw-r--r--var/spack/repos/builtin/packages/glib/no-Werror=format-security.patch19
-rw-r--r--var/spack/repos/builtin/packages/glib/package.py54
-rw-r--r--var/spack/repos/builtin/packages/glm/package.py20
-rw-r--r--var/spack/repos/builtin/packages/global/package.py6
-rw-r--r--var/spack/repos/builtin/packages/globalarrays/ibm-xl.patch250
-rw-r--r--var/spack/repos/builtin/packages/globalarrays/package.py66
-rw-r--r--var/spack/repos/builtin/packages/globus-toolkit/package.py13
-rw-r--r--var/spack/repos/builtin/packages/glog/package.py19
-rw-r--r--var/spack/repos/builtin/packages/glpk/package.py32
-rw-r--r--var/spack/repos/builtin/packages/glproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/gmake/package.py41
-rw-r--r--var/spack/repos/builtin/packages/gmap-gsnap/package.py36
-rw-r--r--var/spack/repos/builtin/packages/gmime/package.py39
-rw-r--r--var/spack/repos/builtin/packages/gmp/package.py15
-rw-r--r--var/spack/repos/builtin/packages/gmsh/package.py15
-rw-r--r--var/spack/repos/builtin/packages/gnat/package.py51
-rw-r--r--var/spack/repos/builtin/packages/gnu-prolog/package.py6
-rw-r--r--var/spack/repos/builtin/packages/gnupg/package.py50
-rw-r--r--var/spack/repos/builtin/packages/gnuplot/package.py116
-rw-r--r--var/spack/repos/builtin/packages/gnuplot/term_include.patch11
-rw-r--r--var/spack/repos/builtin/packages/gnutls/package.py79
-rw-r--r--var/spack/repos/builtin/packages/go-bootstrap/package.py20
-rw-r--r--var/spack/repos/builtin/packages/go/package.py46
-rw-r--r--var/spack/repos/builtin/packages/gobject-introspection/package.py44
-rw-r--r--var/spack/repos/builtin/packages/gobject-introspection/sbang.patch11
-rw-r--r--var/spack/repos/builtin/packages/googletest/package.py47
-rw-r--r--var/spack/repos/builtin/packages/gource/package.py30
-rw-r--r--var/spack/repos/builtin/packages/gperf/package.py15
-rw-r--r--var/spack/repos/builtin/packages/gperftools/package.py13
-rw-r--r--var/spack/repos/builtin/packages/grackle/package.py6
-rw-r--r--var/spack/repos/builtin/packages/gradle/package.py83
-rw-r--r--var/spack/repos/builtin/packages/grandr/package.py15
-rw-r--r--var/spack/repos/builtin/packages/graphlib/package.py16
-rw-r--r--var/spack/repos/builtin/packages/graphmap/package.py43
-rw-r--r--var/spack/repos/builtin/packages/graphviz/package.py141
-rw-r--r--var/spack/repos/builtin/packages/grib-api/package.py46
-rw-r--r--var/spack/repos/builtin/packages/groff/gropdf.patch13
-rw-r--r--var/spack/repos/builtin/packages/groff/package.py61
-rw-r--r--var/spack/repos/builtin/packages/gromacs/package.py29
-rw-r--r--var/spack/repos/builtin/packages/gsl/package.py7
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-atl/package.py44
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py41
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-dill/package.py43
-rw-r--r--var/spack/repos/builtin/packages/gtkorvo-enet/package.py38
-rw-r--r--var/spack/repos/builtin/packages/gtkplus/no-demos.patch11
-rw-r--r--var/spack/repos/builtin/packages/gtkplus/package.py23
-rw-r--r--var/spack/repos/builtin/packages/gts/package.py13
-rw-r--r--var/spack/repos/builtin/packages/guidance/package.py66
-rw-r--r--var/spack/repos/builtin/packages/guile/package.py25
-rw-r--r--var/spack/repos/builtin/packages/h5hut/package.py8
-rw-r--r--var/spack/repos/builtin/packages/h5part/mpiio.patch26
-rw-r--r--var/spack/repos/builtin/packages/h5part/package.py46
-rw-r--r--var/spack/repos/builtin/packages/h5utils/package.py73
-rw-r--r--var/spack/repos/builtin/packages/h5z-zfp/package.py64
-rw-r--r--var/spack/repos/builtin/packages/hacckernels/package.py46
-rw-r--r--var/spack/repos/builtin/packages/hadoop/package.py8
-rw-r--r--var/spack/repos/builtin/packages/hapcut2/package.py44
-rw-r--r--var/spack/repos/builtin/packages/haploview/haploview.sh3
-rw-r--r--var/spack/repos/builtin/packages/haploview/package.py54
-rw-r--r--var/spack/repos/builtin/packages/harfbuzz/package.py14
-rw-r--r--var/spack/repos/builtin/packages/harminv/package.py23
-rw-r--r--var/spack/repos/builtin/packages/hdf/package.py33
-rw-r--r--var/spack/repos/builtin/packages/hdf5-blosc/package.py42
-rw-r--r--var/spack/repos/builtin/packages/hdf5/package.py255
-rw-r--r--var/spack/repos/builtin/packages/help2man/package.py6
-rw-r--r--var/spack/repos/builtin/packages/hepmc/package.py27
-rw-r--r--var/spack/repos/builtin/packages/heppdt/package.py14
-rw-r--r--var/spack/repos/builtin/packages/highfive/package.py52
-rw-r--r--var/spack/repos/builtin/packages/highwayhash/package.py62
-rw-r--r--var/spack/repos/builtin/packages/hisat2/package.py63
-rw-r--r--var/spack/repos/builtin/packages/hmmer/package.py6
-rw-r--r--var/spack/repos/builtin/packages/hoomd-blue/package.py66
-rw-r--r--var/spack/repos/builtin/packages/hpccg/package.py77
-rw-r--r--var/spack/repos/builtin/packages/hpctoolkit-externals/package.py13
-rw-r--r--var/spack/repos/builtin/packages/hpctoolkit/package.py15
-rw-r--r--var/spack/repos/builtin/packages/hpgmg/package.py87
-rw-r--r--var/spack/repos/builtin/packages/hpl/package.py36
-rw-r--r--var/spack/repos/builtin/packages/hpx/package.py42
-rw-r--r--var/spack/repos/builtin/packages/hpx5/configure.patch36
-rw-r--r--var/spack/repos/builtin/packages/hpx5/package.py110
-rw-r--r--var/spack/repos/builtin/packages/hsakmt/package.py14
-rw-r--r--var/spack/repos/builtin/packages/hstr/package.py43
-rw-r--r--var/spack/repos/builtin/packages/htop/package.py16
-rw-r--r--var/spack/repos/builtin/packages/htslib/package.py31
-rw-r--r--var/spack/repos/builtin/packages/httpie/package.py48
-rw-r--r--var/spack/repos/builtin/packages/hub/package.py6
-rw-r--r--var/spack/repos/builtin/packages/hunspell/package.py39
-rw-r--r--var/spack/repos/builtin/packages/hwloc/package.py43
-rw-r--r--var/spack/repos/builtin/packages/hybpiper/package.py59
-rw-r--r--var/spack/repos/builtin/packages/hydra/package.py16
-rw-r--r--var/spack/repos/builtin/packages/hypre/ibm-ppc64le.patch12
-rw-r--r--var/spack/repos/builtin/packages/hypre/package.py33
-rw-r--r--var/spack/repos/builtin/packages/ibmisc/package.py10
-rw-r--r--var/spack/repos/builtin/packages/iceauth/package.py14
-rw-r--r--var/spack/repos/builtin/packages/icedtea/package.py181
-rw-r--r--var/spack/repos/builtin/packages/icet/package.py16
-rw-r--r--var/spack/repos/builtin/packages/ico/package.py14
-rw-r--r--var/spack/repos/builtin/packages/icu4c/package.py28
-rw-r--r--var/spack/repos/builtin/packages/id3lib/id3lib-3.8.3_gcc4.diff102
-rw-r--r--var/spack/repos/builtin/packages/id3lib/package.py40
-rw-r--r--var/spack/repos/builtin/packages/idba/package.py48
-rw-r--r--var/spack/repos/builtin/packages/igraph/package.py36
-rw-r--r--var/spack/repos/builtin/packages/ilmbase/package.py12
-rw-r--r--var/spack/repos/builtin/packages/image-magick/package.py23
-rw-r--r--var/spack/repos/builtin/packages/imake/package.py14
-rw-r--r--var/spack/repos/builtin/packages/impute2/package.py39
-rw-r--r--var/spack/repos/builtin/packages/infernal/package.py49
-rw-r--r--var/spack/repos/builtin/packages/inputproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/intel-daal/package.py86
-rw-r--r--var/spack/repos/builtin/packages/intel-gpu-tools/package.py18
-rw-r--r--var/spack/repos/builtin/packages/intel-ipp/package.py82
-rw-r--r--var/spack/repos/builtin/packages/intel-mkl/package.py210
-rw-r--r--var/spack/repos/builtin/packages/intel-mpi/package.py137
-rw-r--r--var/spack/repos/builtin/packages/intel-parallel-studio/package.py746
-rw-r--r--var/spack/repos/builtin/packages/intel-tbb/package.py (renamed from var/spack/repos/builtin/packages/tbb/package.py)24
-rw-r--r--var/spack/repos/builtin/packages/intel-tbb/tbb_gcc_rtm_key.patch23
-rw-r--r--var/spack/repos/builtin/packages/intel/package.py214
-rw-r--r--var/spack/repos/builtin/packages/intltool/package.py48
-rw-r--r--var/spack/repos/builtin/packages/ior/package.py37
-rw-r--r--var/spack/repos/builtin/packages/iozone/package.py53
-rw-r--r--var/spack/repos/builtin/packages/ipopt/ipopt_ppc_build.patch26
-rw-r--r--var/spack/repos/builtin/packages/ipopt/package.py33
-rw-r--r--var/spack/repos/builtin/packages/isaac-server/jpeg.patch34
-rw-r--r--var/spack/repos/builtin/packages/isaac-server/package.py55
-rw-r--r--var/spack/repos/builtin/packages/isaac/package.py58
-rw-r--r--var/spack/repos/builtin/packages/isl/package.py26
-rw-r--r--var/spack/repos/builtin/packages/itstool/package.py13
-rw-r--r--var/spack/repos/builtin/packages/itsx/package.py44
-rw-r--r--var/spack/repos/builtin/packages/jags/package.py44
-rw-r--r--var/spack/repos/builtin/packages/jansson/package.py15
-rw-r--r--var/spack/repos/builtin/packages/jasper/package.py27
-rw-r--r--var/spack/repos/builtin/packages/jdk/package.py35
-rw-r--r--var/spack/repos/builtin/packages/jellyfish/package.py38
-rw-r--r--var/spack/repos/builtin/packages/jemalloc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/jmol/package.py45
-rw-r--r--var/spack/repos/builtin/packages/jq/package.py37
-rw-r--r--var/spack/repos/builtin/packages/json-c/package.py (renamed from var/spack/repos/builtin/packages/libjson-c/package.py)19
-rw-r--r--var/spack/repos/builtin/packages/json-cwx/package.py48
-rw-r--r--var/spack/repos/builtin/packages/jsoncpp/package.py26
-rw-r--r--var/spack/repos/builtin/packages/judy/package.py15
-rw-r--r--var/spack/repos/builtin/packages/julia/package.py25
-rw-r--r--var/spack/repos/builtin/packages/kahip/package.py88
-rw-r--r--var/spack/repos/builtin/packages/kaks-calculator/package.py59
-rw-r--r--var/spack/repos/builtin/packages/kaldi/openfst-1.4.1.patch45
-rw-r--r--var/spack/repos/builtin/packages/kaldi/package.py112
-rw-r--r--var/spack/repos/builtin/packages/kallisto/package.py39
-rw-r--r--var/spack/repos/builtin/packages/kbproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/kdiff3/package.py6
-rw-r--r--var/spack/repos/builtin/packages/kealib/package.py27
-rw-r--r--var/spack/repos/builtin/packages/kentutils/package.py52
-rw-r--r--var/spack/repos/builtin/packages/kmergenie/package.py43
-rw-r--r--var/spack/repos/builtin/packages/kokkos/package.py61
-rw-r--r--var/spack/repos/builtin/packages/kraken/package.py51
-rw-r--r--var/spack/repos/builtin/packages/krims/package.py86
-rw-r--r--var/spack/repos/builtin/packages/kripke/package.py40
-rw-r--r--var/spack/repos/builtin/packages/laghos/package.py61
-rw-r--r--var/spack/repos/builtin/packages/lammps/660.patch24
-rw-r--r--var/spack/repos/builtin/packages/lammps/Makefile.inc49
-rw-r--r--var/spack/repos/builtin/packages/lammps/lib.patch13
-rw-r--r--var/spack/repos/builtin/packages/lammps/package.py112
-rw-r--r--var/spack/repos/builtin/packages/last/package.py39
-rw-r--r--var/spack/repos/builtin/packages/latte/package.py63
-rw-r--r--var/spack/repos/builtin/packages/launchmon/package.py9
-rw-r--r--var/spack/repos/builtin/packages/lazyten/package.py118
-rw-r--r--var/spack/repos/builtin/packages/lbann/package.py96
-rw-r--r--var/spack/repos/builtin/packages/lbxproxy/package.py14
-rw-r--r--var/spack/repos/builtin/packages/lcals/package.py122
-rw-r--r--var/spack/repos/builtin/packages/lcms/package.py22
-rw-r--r--var/spack/repos/builtin/packages/ldc-bootstrap/package.py65
-rw-r--r--var/spack/repos/builtin/packages/ldc/package.py85
-rw-r--r--var/spack/repos/builtin/packages/legion/package.py68
-rw-r--r--var/spack/repos/builtin/packages/leveldb/package.py31
-rw-r--r--var/spack/repos/builtin/packages/lftp/package.py53
-rw-r--r--var/spack/repos/builtin/packages/libaec/package.py43
-rw-r--r--var/spack/repos/builtin/packages/libaio/package.py12
-rw-r--r--var/spack/repos/builtin/packages/libapplewm/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libarchive/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libassuan/package.py41
-rw-r--r--var/spack/repos/builtin/packages/libatomic-ops/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libbeagle/package.py47
-rw-r--r--var/spack/repos/builtin/packages/libbsd/cdefs.h.patch15
-rw-r--r--var/spack/repos/builtin/packages/libbsd/package.py40
-rw-r--r--var/spack/repos/builtin/packages/libbson/package.py49
-rw-r--r--var/spack/repos/builtin/packages/libcanberra/package.py68
-rw-r--r--var/spack/repos/builtin/packages/libcap/libcap-fix-the-libcap-native-building-failure-on-CentOS-6.7.patch31
-rw-r--r--var/spack/repos/builtin/packages/libcap/package.py51
-rw-r--r--var/spack/repos/builtin/packages/libcerf/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libcircle/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libconfig/package.py43
-rw-r--r--var/spack/repos/builtin/packages/libctl/package.py27
-rw-r--r--var/spack/repos/builtin/packages/libdivsufsort/package.py35
-rw-r--r--var/spack/repos/builtin/packages/libdmx/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libdrm/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libdwarf/package.py86
-rw-r--r--var/spack/repos/builtin/packages/libedit/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libelf/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libemos/package.py41
-rw-r--r--var/spack/repos/builtin/packages/libepoxy/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libevent/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libevpath/package.py49
-rw-r--r--var/spack/repos/builtin/packages/libfabric/package.py64
-rw-r--r--var/spack/repos/builtin/packages/libffi/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libffs/package.py53
-rw-r--r--var/spack/repos/builtin/packages/libfontenc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libfs/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libgcrypt/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libgd/package.py29
-rw-r--r--var/spack/repos/builtin/packages/libgit2/package.py41
-rw-r--r--var/spack/repos/builtin/packages/libgpg-error/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libgpuarray/package.py43
-rw-r--r--var/spack/repos/builtin/packages/libgtextutils/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libgtextutils/text_line_reader.patch10
-rw-r--r--var/spack/repos/builtin/packages/libharu/package.py51
-rw-r--r--var/spack/repos/builtin/packages/libhio/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libice/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libiconv/package.py11
-rw-r--r--var/spack/repos/builtin/packages/libint/package.py67
-rw-r--r--var/spack/repos/builtin/packages/libjpeg-turbo/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libjpeg/package.py (renamed from var/spack/repos/builtin/packages/jpeg/package.py)15
-rw-r--r--var/spack/repos/builtin/packages/libksba/package.py41
-rw-r--r--var/spack/repos/builtin/packages/liblbxutil/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libmatheval/package.py42
-rw-r--r--var/spack/repos/builtin/packages/libmesh/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libmng/package.py25
-rw-r--r--var/spack/repos/builtin/packages/libmongoc/package.py72
-rw-r--r--var/spack/repos/builtin/packages/libmonitor/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libnbc/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libogg/package.py35
-rw-r--r--var/spack/repos/builtin/packages/liboldx/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libpcap/package.py34
-rw-r--r--var/spack/repos/builtin/packages/libpciaccess/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libpfm4/package.py48
-rw-r--r--var/spack/repos/builtin/packages/libpipeline/package.py40
-rw-r--r--var/spack/repos/builtin/packages/libpng/package.py21
-rw-r--r--var/spack/repos/builtin/packages/libpsl/package.py56
-rw-r--r--var/spack/repos/builtin/packages/libpthread-stubs/package.py16
-rw-r--r--var/spack/repos/builtin/packages/libquo/package.py50
-rw-r--r--var/spack/repos/builtin/packages/libsigsegv/package.py9
-rw-r--r--var/spack/repos/builtin/packages/libsm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libsodium/package.py21
-rw-r--r--var/spack/repos/builtin/packages/libspatialindex/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libsplash/package.py19
-rw-r--r--var/spack/repos/builtin/packages/libssh2/package.py48
-rw-r--r--var/spack/repos/builtin/packages/libsvm/package.py43
-rw-r--r--var/spack/repos/builtin/packages/libszip/package.py (renamed from var/spack/repos/builtin/packages/szip/package.py)29
-rw-r--r--var/spack/repos/builtin/packages/libtermkey/package.py9
-rw-r--r--var/spack/repos/builtin/packages/libtiff/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libtool/package.py12
-rw-r--r--var/spack/repos/builtin/packages/libunistring/package.py18
-rw-r--r--var/spack/repos/builtin/packages/libunwind/package.py13
-rw-r--r--var/spack/repos/builtin/packages/libuuid/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libuv/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libvorbis/package.py44
-rw-r--r--var/spack/repos/builtin/packages/libvterm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/libwebsockets/package.py8
-rw-r--r--var/spack/repos/builtin/packages/libwindowswm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libx11/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libxau/package.py17
-rw-r--r--var/spack/repos/builtin/packages/libxaw/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxaw3d/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxc/package.py44
-rw-r--r--var/spack/repos/builtin/packages/libxcb/package.py18
-rw-r--r--var/spack/repos/builtin/packages/libxcomposite/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxcursor/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxdamage/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxdmcp/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libxevie/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxext/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxfixes/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxfont/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxfont2/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxfontcache/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxft/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxi/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxinerama/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxkbfile/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxkbui/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxml2/package.py30
-rw-r--r--var/spack/repos/builtin/packages/libxmu/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxpm/package.py20
-rw-r--r--var/spack/repos/builtin/packages/libxpresent/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxprintapputil/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxprintutil/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxrandr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxrender/package.py21
-rw-r--r--var/spack/repos/builtin/packages/libxres/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxscrnsaver/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxshmfence/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libxslt/package.py23
-rw-r--r--var/spack/repos/builtin/packages/libxsmm/package.py83
-rw-r--r--var/spack/repos/builtin/packages/libxstream/package.py10
-rw-r--r--var/spack/repos/builtin/packages/libxt/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxtrap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxtst/package.py15
-rw-r--r--var/spack/repos/builtin/packages/libxv/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxvmc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxxf86dga/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxxf86misc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libxxf86vm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/libyogrt/package.py38
-rw-r--r--var/spack/repos/builtin/packages/libzip/package.py35
-rw-r--r--var/spack/repos/builtin/packages/likwid/package.py49
-rw-r--r--var/spack/repos/builtin/packages/linkphase3/package.py41
-rw-r--r--var/spack/repos/builtin/packages/linux-headers/package.py45
-rw-r--r--var/spack/repos/builtin/packages/listres/package.py14
-rw-r--r--var/spack/repos/builtin/packages/llvm-lld/package.py31
-rw-r--r--var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py88
-rw-r--r--var/spack/repos/builtin/packages/llvm/llvm_gcc7.patch10
-rw-r--r--var/spack/repos/builtin/packages/llvm/package.py332
-rw-r--r--var/spack/repos/builtin/packages/lmdb/package.py68
-rw-r--r--var/spack/repos/builtin/packages/lmod/0001-fix-problem-with-MODULESHOME-and-issue-271.patch25
-rw-r--r--var/spack/repos/builtin/packages/lmod/package.py36
-rw-r--r--var/spack/repos/builtin/packages/lndir/package.py14
-rw-r--r--var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-missing_includes.patch38
-rw-r--r--var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-narrowing-fixes-from-upstream.patch117
-rw-r--r--var/spack/repos/builtin/packages/log4cxx/package.py47
-rw-r--r--var/spack/repos/builtin/packages/lrslib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lrzip/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lua-bitlib/package.py47
-rw-r--r--var/spack/repos/builtin/packages/lua-jit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lua-lpeg/package.py42
-rw-r--r--var/spack/repos/builtin/packages/lua-luafilesystem/package.py13
-rw-r--r--var/spack/repos/builtin/packages/lua-luaposix/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lua-mpack/package.py44
-rw-r--r--var/spack/repos/builtin/packages/lua/package.py38
-rw-r--r--var/spack/repos/builtin/packages/luit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lulesh/package.py71
-rw-r--r--var/spack/repos/builtin/packages/lulesh/remove_defaults.patch60
-rw-r--r--var/spack/repos/builtin/packages/lwgrp/package.py13
-rw-r--r--var/spack/repos/builtin/packages/lwm2/package.py13
-rw-r--r--var/spack/repos/builtin/packages/lz4/package.py21
-rw-r--r--var/spack/repos/builtin/packages/lzma/package.py6
-rw-r--r--var/spack/repos/builtin/packages/lzo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/m4/gnulib-pgi.patch195
-rw-r--r--var/spack/repos/builtin/packages/m4/package.py18
-rw-r--r--var/spack/repos/builtin/packages/macsio/package.py116
-rw-r--r--var/spack/repos/builtin/packages/mad-numdiff/package.py36
-rw-r--r--var/spack/repos/builtin/packages/mafft/package.py6
-rw-r--r--var/spack/repos/builtin/packages/magics/no_hardcoded_python.patch5
-rw-r--r--var/spack/repos/builtin/packages/magics/package.py92
-rw-r--r--var/spack/repos/builtin/packages/magma/ibm-xl.patch248
-rw-r--r--var/spack/repos/builtin/packages/magma/package.py73
-rw-r--r--var/spack/repos/builtin/packages/makedepend/package.py15
-rw-r--r--var/spack/repos/builtin/packages/mallocmc/package.py55
-rw-r--r--var/spack/repos/builtin/packages/man-db/package.py59
-rw-r--r--var/spack/repos/builtin/packages/mariadb/package.py23
-rw-r--r--var/spack/repos/builtin/packages/masa/package.py66
-rw-r--r--var/spack/repos/builtin/packages/matio/package.py9
-rw-r--r--var/spack/repos/builtin/packages/matlab/package.py94
-rw-r--r--var/spack/repos/builtin/packages/maven/package.py11
-rw-r--r--var/spack/repos/builtin/packages/maverick/package.py48
-rw-r--r--var/spack/repos/builtin/packages/mawk/package.py36
-rw-r--r--var/spack/repos/builtin/packages/mbedtls/package.py19
-rw-r--r--var/spack/repos/builtin/packages/mcl/package.py36
-rw-r--r--var/spack/repos/builtin/packages/mdtest/package.py43
-rw-r--r--var/spack/repos/builtin/packages/meep/package.py29
-rw-r--r--var/spack/repos/builtin/packages/memaxes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/meme/package.py54
-rw-r--r--var/spack/repos/builtin/packages/mercurial/package.py95
-rw-r--r--var/spack/repos/builtin/packages/mesa-glu/package.py39
-rw-r--r--var/spack/repos/builtin/packages/mesa/package.py179
-rw-r--r--var/spack/repos/builtin/packages/meshkit/package.py81
-rw-r--r--var/spack/repos/builtin/packages/meson/package.py43
-rw-r--r--var/spack/repos/builtin/packages/mesquite/package.py56
-rw-r--r--var/spack/repos/builtin/packages/metaphysicl/package.py38
-rw-r--r--var/spack/repos/builtin/packages/metis/package.py36
-rw-r--r--var/spack/repos/builtin/packages/mfem/mfem_ppc_build.patch10
-rw-r--r--var/spack/repos/builtin/packages/mfem/package.py312
-rw-r--r--var/spack/repos/builtin/packages/microbiomeutil/package.py53
-rw-r--r--var/spack/repos/builtin/packages/miniaero/package.py62
-rw-r--r--var/spack/repos/builtin/packages/miniamr/package.py66
-rw-r--r--var/spack/repos/builtin/packages/miniconda2/package.py44
-rw-r--r--var/spack/repos/builtin/packages/miniconda3/package.py44
-rw-r--r--var/spack/repos/builtin/packages/minife/package.py65
-rw-r--r--var/spack/repos/builtin/packages/minighost/package.py96
-rw-r--r--var/spack/repos/builtin/packages/minigmg/package.py67
-rw-r--r--var/spack/repos/builtin/packages/minimap2/package.py41
-rw-r--r--var/spack/repos/builtin/packages/minimd/package.py76
-rw-r--r--var/spack/repos/builtin/packages/minismac2d/package.py80
-rw-r--r--var/spack/repos/builtin/packages/minitri/package.py63
-rw-r--r--var/spack/repos/builtin/packages/minixyce/package.py80
-rw-r--r--var/spack/repos/builtin/packages/mirdeep/package.py67
-rw-r--r--var/spack/repos/builtin/packages/mitofates/package.py41
-rw-r--r--var/spack/repos/builtin/packages/mitos/package.py21
-rw-r--r--var/spack/repos/builtin/packages/mkfontdir/package.py14
-rw-r--r--var/spack/repos/builtin/packages/mkfontscale/package.py14
-rw-r--r--var/spack/repos/builtin/packages/mlhka/package.py42
-rw-r--r--var/spack/repos/builtin/packages/moab/package.py169
-rw-r--r--var/spack/repos/builtin/packages/molcas/install_driver.patch114
-rw-r--r--var/spack/repos/builtin/packages/molcas/package.py48
-rw-r--r--var/spack/repos/builtin/packages/mono/package.py66
-rw-r--r--var/spack/repos/builtin/packages/mosh/package.py49
-rw-r--r--var/spack/repos/builtin/packages/mothur/package.py59
-rw-r--r--var/spack/repos/builtin/packages/motioncor2/package.py50
-rw-r--r--var/spack/repos/builtin/packages/mozjs/package.py64
-rw-r--r--var/spack/repos/builtin/packages/mozjs/perl-bug.patch21
-rw-r--r--var/spack/repos/builtin/packages/mpc/package.py28
-rw-r--r--var/spack/repos/builtin/packages/mpe2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/mpest/package.py50
-rw-r--r--var/spack/repos/builtin/packages/mpfr/package.py27
-rw-r--r--var/spack/repos/builtin/packages/mpfr/strtofr.patch92
-rw-r--r--var/spack/repos/builtin/packages/mpfr/vasprintf.patch82
-rw-r--r--var/spack/repos/builtin/packages/mpibash/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mpiblast/mpiBLAST-1.6.0-patch-110806182
-rw-r--r--var/spack/repos/builtin/packages/mpiblast/package.py51
-rw-r--r--var/spack/repos/builtin/packages/mpich/mpich32_clang.patch13
-rw-r--r--var/spack/repos/builtin/packages/mpich/package.py82
-rw-r--r--var/spack/repos/builtin/packages/mpifileutils/package.py83
-rw-r--r--var/spack/repos/builtin/packages/mpileaks/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mpip/package.py26
-rw-r--r--var/spack/repos/builtin/packages/mpir/package.py6
-rw-r--r--var/spack/repos/builtin/packages/mpix-launch-swift/package.py47
-rw-r--r--var/spack/repos/builtin/packages/mrbayes/package.py72
-rw-r--r--var/spack/repos/builtin/packages/mrnet/package.py23
-rw-r--r--var/spack/repos/builtin/packages/mrtrix3/package.py62
-rw-r--r--var/spack/repos/builtin/packages/msgpack-c/package.py16
-rw-r--r--var/spack/repos/builtin/packages/mshadow/package.py41
-rw-r--r--var/spack/repos/builtin/packages/multitail/package.py62
-rw-r--r--var/spack/repos/builtin/packages/multiverso/cmake-143187.patch28
-rw-r--r--var/spack/repos/builtin/packages/multiverso/package.py48
-rw-r--r--var/spack/repos/builtin/packages/mummer/Makefile.patch24
-rw-r--r--var/spack/repos/builtin/packages/mummer/package.py75
-rw-r--r--var/spack/repos/builtin/packages/mummer/scripts-Makefile.patch74
-rw-r--r--var/spack/repos/builtin/packages/mumps/mumps-5.0.2-spectrum-mpi-xl.patch75
-rw-r--r--var/spack/repos/builtin/packages/mumps/mumps-5.1.1-spectrum-mpi-xl.patch79
-rw-r--r--var/spack/repos/builtin/packages/mumps/package.py89
-rw-r--r--var/spack/repos/builtin/packages/munge/package.py6
-rw-r--r--var/spack/repos/builtin/packages/muparser/package.py6
-rw-r--r--var/spack/repos/builtin/packages/muscle/package.py45
-rw-r--r--var/spack/repos/builtin/packages/muse/package.py38
-rw-r--r--var/spack/repos/builtin/packages/muster/package.py19
-rw-r--r--var/spack/repos/builtin/packages/mvapich2/package.py323
-rw-r--r--var/spack/repos/builtin/packages/mxml/package.py32
-rw-r--r--var/spack/repos/builtin/packages/mxnet/makefile.patch81
-rw-r--r--var/spack/repos/builtin/packages/mxnet/package.py101
-rw-r--r--var/spack/repos/builtin/packages/nag/package.py12
-rw-r--r--var/spack/repos/builtin/packages/nalu/package.py66
-rw-r--r--var/spack/repos/builtin/packages/namd/package.py151
-rw-r--r--var/spack/repos/builtin/packages/nano/package.py13
-rw-r--r--var/spack/repos/builtin/packages/nanoflann/package.py39
-rw-r--r--var/spack/repos/builtin/packages/nasm/package.py13
-rw-r--r--var/spack/repos/builtin/packages/nauty/package.py111
-rw-r--r--var/spack/repos/builtin/packages/ncbi-rmblastn/package.py36
-rw-r--r--var/spack/repos/builtin/packages/nccl/package.py45
-rw-r--r--var/spack/repos/builtin/packages/nccmp/package.py6
-rw-r--r--var/spack/repos/builtin/packages/ncdu/package.py6
-rw-r--r--var/spack/repos/builtin/packages/ncftp/package.py37
-rw-r--r--var/spack/repos/builtin/packages/ncl/hdf5.patch11
-rw-r--r--var/spack/repos/builtin/packages/ncl/package.py64
-rw-r--r--var/spack/repos/builtin/packages/ncl/ymake-filter.patch33
-rw-r--r--var/spack/repos/builtin/packages/nco/NUL-0-NULL.patch51
-rw-r--r--var/spack/repos/builtin/packages/nco/package.py15
-rw-r--r--var/spack/repos/builtin/packages/ncurses/package.py97
-rw-r--r--var/spack/repos/builtin/packages/ncurses/sed_pgi.patch11
-rw-r--r--var/spack/repos/builtin/packages/ncview/package.py20
-rw-r--r--var/spack/repos/builtin/packages/ndiff/package.py6
-rw-r--r--var/spack/repos/builtin/packages/nekbone/package.py64
-rw-r--r--var/spack/repos/builtin/packages/neovim/package.py53
-rw-r--r--var/spack/repos/builtin/packages/netcdf-cxx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/netcdf-cxx4/package.py13
-rw-r--r--var/spack/repos/builtin/packages/netcdf-fortran/package.py19
-rw-r--r--var/spack/repos/builtin/packages/netcdf/package.py257
-rw-r--r--var/spack/repos/builtin/packages/netgauge/package.py13
-rw-r--r--var/spack/repos/builtin/packages/netgen/package.py83
-rw-r--r--var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch16
-rw-r--r--var/spack/repos/builtin/packages/netlib-lapack/package.py24
-rw-r--r--var/spack/repos/builtin/packages/netlib-scalapack/package.py43
-rw-r--r--var/spack/repos/builtin/packages/nettle/package.py24
-rw-r--r--var/spack/repos/builtin/packages/nextflow/package.py18
-rw-r--r--var/spack/repos/builtin/packages/nfft/package.py61
-rw-r--r--var/spack/repos/builtin/packages/nghttp2/package.py54
-rw-r--r--var/spack/repos/builtin/packages/nginx/package.py48
-rw-r--r--var/spack/repos/builtin/packages/ngmlr/package.py36
-rw-r--r--var/spack/repos/builtin/packages/ninja-fortran/package.py67
-rw-r--r--var/spack/repos/builtin/packages/ninja/package.py46
-rw-r--r--var/spack/repos/builtin/packages/nmap/package.py10
-rw-r--r--var/spack/repos/builtin/packages/nnvm/cmake.patch63
-rw-r--r--var/spack/repos/builtin/packages/nnvm/package.py50
-rw-r--r--var/spack/repos/builtin/packages/node-js/package.py14
-rw-r--r--var/spack/repos/builtin/packages/notmuch/package.py42
-rw-r--r--var/spack/repos/builtin/packages/npb/package.py231
-rw-r--r--var/spack/repos/builtin/packages/npm/package.py20
-rw-r--r--var/spack/repos/builtin/packages/npth/package.py35
-rw-r--r--var/spack/repos/builtin/packages/nspr/package.py45
-rw-r--r--var/spack/repos/builtin/packages/numactl/package.py39
-rw-r--r--var/spack/repos/builtin/packages/numdiff/package.py43
-rw-r--r--var/spack/repos/builtin/packages/nut/package.py62
-rw-r--r--var/spack/repos/builtin/packages/nwchem/package.py60
-rw-r--r--var/spack/repos/builtin/packages/ocaml/package.py6
-rw-r--r--var/spack/repos/builtin/packages/oce/package.py36
-rw-r--r--var/spack/repos/builtin/packages/oce/sierra.patch39
-rw-r--r--var/spack/repos/builtin/packages/oce/xlocale.patch13
-rw-r--r--var/spack/repos/builtin/packages/oclock/package.py14
-rw-r--r--var/spack/repos/builtin/packages/octave-splines/package.py6
-rw-r--r--var/spack/repos/builtin/packages/octave/package.py58
-rw-r--r--var/spack/repos/builtin/packages/octave/patch_4.2.1_inline.diff12
-rw-r--r--var/spack/repos/builtin/packages/octopus/package.py45
-rw-r--r--var/spack/repos/builtin/packages/of-adios-write/package.py136
-rw-r--r--var/spack/repos/builtin/packages/ompss/package.py6
-rw-r--r--var/spack/repos/builtin/packages/ompt-openmp/package.py23
-rw-r--r--var/spack/repos/builtin/packages/oniguruma/package.py34
-rw-r--r--var/spack/repos/builtin/packages/ont-albacore/package.py52
-rw-r--r--var/spack/repos/builtin/packages/opari2/package.py22
-rw-r--r--var/spack/repos/builtin/packages/openbabel/package.py80
-rw-r--r--var/spack/repos/builtin/packages/openbabel/python-3.6-rtld-global.patch42
-rw-r--r--var/spack/repos/builtin/packages/openbabel/testpdbformat-tabs-to-spaces.patch47
-rw-r--r--var/spack/repos/builtin/packages/openblas/openblas0.2.19.diff847
-rw-r--r--var/spack/repos/builtin/packages/openblas/openblas_icc_fortran.patch12
-rw-r--r--var/spack/repos/builtin/packages/openblas/openblas_icc_openmp.patch27
-rw-r--r--var/spack/repos/builtin/packages/openblas/package.py123
-rw-r--r--var/spack/repos/builtin/packages/openblas/power8.patch7809
-rw-r--r--var/spack/repos/builtin/packages/opencoarrays/package.py15
-rw-r--r--var/spack/repos/builtin/packages/opencv/package.py205
-rw-r--r--var/spack/repos/builtin/packages/openexr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/openfast/package.py93
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-bin.patch503
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-build.patch17
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-etc.patch41
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-mgridgen-lib.patch41
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-mpi.patch36
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-scotch-metis-lib.patch48
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-site.patch42
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/1612-zoltan-lib.patch84
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/common/README2
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/common/README-spack15
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/common/change-sitedir.sh94
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/common/change-userdir.sh94
-rwxr-xr-xvar/spack/repos/builtin/packages/openfoam-com/common/spack-Allwmake22
-rwxr-xr-xvar/spack/repos/builtin/packages/openfoam-com/common/spack-derived-Allwmake26
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/openfoam-site.patch35
-rw-r--r--var/spack/repos/builtin/packages/openfoam-com/package.py807
-rw-r--r--var/spack/repos/builtin/packages/openfoam-org/41-etc.patch25
-rw-r--r--var/spack/repos/builtin/packages/openfoam-org/41-site.patch42
-rwxr-xr-xvar/spack/repos/builtin/packages/openfoam-org/assets/bin/foamEtcFile417
-rw-r--r--var/spack/repos/builtin/packages/openfoam-org/package.py359
-rw-r--r--var/spack/repos/builtin/packages/openfst/openfst-1.4.1.patch227
-rw-r--r--var/spack/repos/builtin/packages/openfst/openfst_gcc41up.patch28
-rw-r--r--var/spack/repos/builtin/packages/openfst/package.py56
-rw-r--r--var/spack/repos/builtin/packages/openjpeg/package.py10
-rw-r--r--var/spack/repos/builtin/packages/openmc/package.py91
-rw-r--r--var/spack/repos/builtin/packages/openmpi/fix_multidef_pmi_class.patch54
-rw-r--r--var/spack/repos/builtin/packages/openmpi/package.py316
-rw-r--r--var/spack/repos/builtin/packages/openscenegraph/package.py42
-rw-r--r--var/spack/repos/builtin/packages/openspeedshop/package.py317
-rw-r--r--var/spack/repos/builtin/packages/openssh/package.py54
-rw-r--r--var/spack/repos/builtin/packages/openssl/package.py49
-rw-r--r--var/spack/repos/builtin/packages/opium/package.py8
-rw-r--r--var/spack/repos/builtin/packages/opus/package.py55
-rw-r--r--var/spack/repos/builtin/packages/orfm/package.py37
-rw-r--r--var/spack/repos/builtin/packages/orthomcl/package.py49
-rw-r--r--var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py25
-rw-r--r--var/spack/repos/builtin/packages/otf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/otf2/package.py40
-rw-r--r--var/spack/repos/builtin/packages/p4est/package.py22
-rw-r--r--var/spack/repos/builtin/packages/p7zip/package.py41
-rw-r--r--var/spack/repos/builtin/packages/pacbio-daligner/package.py48
-rw-r--r--var/spack/repos/builtin/packages/pacbio-damasker/package.py47
-rw-r--r--var/spack/repos/builtin/packages/pacbio-dazz-db/package.py55
-rw-r--r--var/spack/repos/builtin/packages/pacbio-dextractor/package.py51
-rw-r--r--var/spack/repos/builtin/packages/pagit/package.py68
-rw-r--r--var/spack/repos/builtin/packages/pagmo/package.py118
-rw-r--r--var/spack/repos/builtin/packages/paml/package.py52
-rw-r--r--var/spack/repos/builtin/packages/panda/package.py22
-rw-r--r--var/spack/repos/builtin/packages/pango/package.py28
-rw-r--r--var/spack/repos/builtin/packages/papi/package.py7
-rw-r--r--var/spack/repos/builtin/packages/paradiseo/package.py36
-rw-r--r--var/spack/repos/builtin/packages/parallel-netcdf/package.py21
-rw-r--r--var/spack/repos/builtin/packages/parallel/package.py34
-rw-r--r--var/spack/repos/builtin/packages/paraver/package.py13
-rw-r--r--var/spack/repos/builtin/packages/paraview/gcc-compiler-pv501.patch22
-rw-r--r--var/spack/repos/builtin/packages/paraview/package.py192
-rw-r--r--var/spack/repos/builtin/packages/paraview/stl-reader-pv440.patch11
-rw-r--r--var/spack/repos/builtin/packages/paraview/ui_pqExportStateWizard.patch11
-rw-r--r--var/spack/repos/builtin/packages/parmetis/package.py30
-rw-r--r--var/spack/repos/builtin/packages/parmgridgen/package.py46
-rw-r--r--var/spack/repos/builtin/packages/parpack/package.py68
-rw-r--r--var/spack/repos/builtin/packages/parsimonator/package.py65
-rw-r--r--var/spack/repos/builtin/packages/parsplice/package.py49
-rw-r--r--var/spack/repos/builtin/packages/partitionfinder/package.py52
-rw-r--r--var/spack/repos/builtin/packages/patch/package.py8
-rw-r--r--var/spack/repos/builtin/packages/patchelf/package.py15
-rw-r--r--var/spack/repos/builtin/packages/pathfinder/package.py (renamed from var/spack/repos/builtin/packages/daal/package.py)41
-rw-r--r--var/spack/repos/builtin/packages/pax-utils/package.py35
-rw-r--r--var/spack/repos/builtin/packages/pbmpi/package.py48
-rw-r--r--var/spack/repos/builtin/packages/pcma/package.py43
-rw-r--r--var/spack/repos/builtin/packages/pcre/package.py41
-rw-r--r--var/spack/repos/builtin/packages/pcre2/package.py15
-rw-r--r--var/spack/repos/builtin/packages/pdsh/package.py48
-rw-r--r--var/spack/repos/builtin/packages/pdt/package.py41
-rw-r--r--var/spack/repos/builtin/packages/pegtl/package.py41
-rw-r--r--var/spack/repos/builtin/packages/pennant/package.py99
-rw-r--r--var/spack/repos/builtin/packages/perl-algorithm-diff/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-bio-perl/package.py71
-rw-r--r--var/spack/repos/builtin/packages/perl-capture-tiny/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-class-load-xs/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-class-load/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-data-optlist/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-data-stag/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-dbfile/package.py41
-rw-r--r--var/spack/repos/builtin/packages/perl-dbi/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-cycle/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-eval-closure/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-exception-class/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py38
-rw-r--r--var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-file-pushd/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-font-ttf/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-gd-graph/package.py39
-rw-r--r--var/spack/repos/builtin/packages/perl-gd-text/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-gd/package.py39
-rw-r--r--var/spack/repos/builtin/packages/perl-intervaltree/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-io-string/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-math-cdf/package.py35
-rw-r--r--var/spack/repos/builtin/packages/perl-module-build/package.py41
-rw-r--r--var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-moose/package.py46
-rw-r--r--var/spack/repos/builtin/packages/perl-mro-compat/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-namespace-clean/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-package-stash-xs/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-package-stash/package.py39
-rw-r--r--var/spack/repos/builtin/packages/perl-padwalker/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-params-util/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-pdf-api2/package.py38
-rw-r--r--var/spack/repos/builtin/packages/perl-star-fusion/package.py59
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-exporter/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-identify/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-install/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-name/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-sub-uplevel/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-term-readkey/package.py40
-rw-r--r--var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py45
-rw-r--r--var/spack/repos/builtin/packages/perl-test-deep/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-test-differences/package.py38
-rw-r--r--var/spack/repos/builtin/packages/perl-test-exception/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-test-fatal/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py37
-rw-r--r--var/spack/repos/builtin/packages/perl-test-most/package.py40
-rw-r--r--var/spack/repos/builtin/packages/perl-test-needs/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-test-requires/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-test-warn/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-test-warnings/package.py34
-rw-r--r--var/spack/repos/builtin/packages/perl-text-diff/package.py36
-rw-r--r--var/spack/repos/builtin/packages/perl-uri-escape/package.py39
-rw-r--r--var/spack/repos/builtin/packages/perl-xml-parser/package.py47
-rw-r--r--var/spack/repos/builtin/packages/perl/package.py234
-rw-r--r--var/spack/repos/builtin/packages/perl/protect-quotes-in-ccflags.patch36
-rw-r--r--var/spack/repos/builtin/packages/petsc/macos-clang-8.1.0.diff18
-rw-r--r--var/spack/repos/builtin/packages/petsc/package.py91
-rw-r--r--var/spack/repos/builtin/packages/pexsi/make.inc4
-rw-r--r--var/spack/repos/builtin/packages/pexsi/package.py55
-rw-r--r--var/spack/repos/builtin/packages/pfft/package.py61
-rw-r--r--var/spack/repos/builtin/packages/pflotran/package.py17
-rw-r--r--var/spack/repos/builtin/packages/pgdspider/package.py57
-rw-r--r--var/spack/repos/builtin/packages/pgdspider/pgdspider.sh3
-rw-r--r--var/spack/repos/builtin/packages/pgi/package.py38
-rw-r--r--var/spack/repos/builtin/packages/phasta/package.py61
-rw-r--r--var/spack/repos/builtin/packages/phylip/package.py45
-rw-r--r--var/spack/repos/builtin/packages/picard/package.py75
-rw-r--r--var/spack/repos/builtin/packages/picard/picard.sh3
-rw-r--r--var/spack/repos/builtin/packages/pidx/package.py18
-rw-r--r--var/spack/repos/builtin/packages/pigz/package.py46
-rw-r--r--var/spack/repos/builtin/packages/piranha/package.py31
-rw-r--r--var/spack/repos/builtin/packages/pixman/package.py28
-rw-r--r--var/spack/repos/builtin/packages/pkg-config/package.py43
-rw-r--r--var/spack/repos/builtin/packages/pkgconf/package.py43
-rw-r--r--var/spack/repos/builtin/packages/planck-likelihood/fortran.patch11
-rw-r--r--var/spack/repos/builtin/packages/planck-likelihood/make.patch21
-rw-r--r--var/spack/repos/builtin/packages/planck-likelihood/package.py148
-rw-r--r--var/spack/repos/builtin/packages/plasma/package.py90
-rw-r--r--var/spack/repos/builtin/packages/plasma/remove_absolute_mkl_include.patch55
-rw-r--r--var/spack/repos/builtin/packages/plink/package.py41
-rw-r--r--var/spack/repos/builtin/packages/plumed/package.py135
-rw-r--r--var/spack/repos/builtin/packages/pmgr-collective/package.py6
-rw-r--r--var/spack/repos/builtin/packages/pmix/package.py71
-rw-r--r--var/spack/repos/builtin/packages/pnfft/package.py88
-rw-r--r--var/spack/repos/builtin/packages/pngwriter/package.py20
-rw-r--r--var/spack/repos/builtin/packages/poamsa/package.py50
-rw-r--r--var/spack/repos/builtin/packages/pocl/example1.c232
-rw-r--r--var/spack/repos/builtin/packages/pocl/example1.out5
-rw-r--r--var/spack/repos/builtin/packages/pocl/package.py115
-rw-r--r--var/spack/repos/builtin/packages/pocl/uint.patch11
-rw-r--r--var/spack/repos/builtin/packages/pocl/vecmathlib.patch75
-rw-r--r--var/spack/repos/builtin/packages/polymake/package.py6
-rw-r--r--var/spack/repos/builtin/packages/porta/package.py6
-rw-r--r--var/spack/repos/builtin/packages/portage/package.py61
-rw-r--r--var/spack/repos/builtin/packages/postgresql/package.py23
-rw-r--r--var/spack/repos/builtin/packages/ppl/package.py6
-rw-r--r--var/spack/repos/builtin/packages/prank/package.py8
-rw-r--r--var/spack/repos/builtin/packages/presentproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/preseq/package.py44
-rw-r--r--var/spack/repos/builtin/packages/price/package.py40
-rw-r--r--var/spack/repos/builtin/packages/primer3/package.py46
-rw-r--r--var/spack/repos/builtin/packages/printproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/probconsrna/package.py44
-rw-r--r--var/spack/repos/builtin/packages/proj/package.py16
-rw-r--r--var/spack/repos/builtin/packages/protobuf/package.py48
-rw-r--r--var/spack/repos/builtin/packages/protobuf/pkgconfig.patch58
-rw-r--r--var/spack/repos/builtin/packages/proxymngr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/pruners-ninja/package.py40
-rw-r--r--var/spack/repos/builtin/packages/ps-lite/cmake.patch22
-rw-r--r--var/spack/repos/builtin/packages/ps-lite/package.py42
-rw-r--r--var/spack/repos/builtin/packages/psi4/package.py48
-rw-r--r--var/spack/repos/builtin/packages/pstreams/package.py39
-rw-r--r--var/spack/repos/builtin/packages/pugixml/package.py35
-rw-r--r--var/spack/repos/builtin/packages/pumi/package.py65
-rw-r--r--var/spack/repos/builtin/packages/pumi/phiotimer.cc.darwin.patch21
-rw-r--r--var/spack/repos/builtin/packages/pvm/package.py63
-rw-r--r--var/spack/repos/builtin/packages/py-3to2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-4suite-xml/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-abipy/package.py77
-rw-r--r--var/spack/repos/builtin/packages/py-alabaster/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-apache-libcloud/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-apipkg/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-appdirs/package.py47
-rw-r--r--var/spack/repos/builtin/packages/py-appdirs/setuptools-import.patch17
-rw-r--r--var/spack/repos/builtin/packages/py-appnope/package.py34
-rw-r--r--var/spack/repos/builtin/packages/py-apscheduler/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-argcomplete/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-argparse/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-ase/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-asn1crypto/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-astroid/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-astropy/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-attrs/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-autopep8/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-babel/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-backports-abc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-basemap/package.py88
-rw-r--r--var/spack/repos/builtin/packages/py-beautifulsoup4/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-binwalk/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-biom-format/package.py48
-rw-r--r--var/spack/repos/builtin/packages/py-biopython/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-bleach/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-blessings/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-bokeh/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-boltons/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-bottleneck/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-brian/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-brian2/package.py50
-rw-r--r--var/spack/repos/builtin/packages/py-bsddb3/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-cclib/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cdat-lite/package.py53
-rw-r--r--var/spack/repos/builtin/packages/py-cdo/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-certifi/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-cffi/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-chardet/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-click/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-colorama/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-colormath/package.py (renamed from var/spack/repos/builtin/packages/py-netcdf/package.py)20
-rw-r--r--var/spack/repos/builtin/packages/py-configparser/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-counter/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-coverage/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-cpuinfo/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-cryptography/package.py46
-rw-r--r--var/spack/repos/builtin/packages/py-csvkit/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-current/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-cutadapt/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-cycler/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-cython/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-dask/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-dateutil/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-dbf/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-decorator/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-deeptools/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-dev/__init__.py.patch10
-rw-r--r--var/spack/repos/builtin/packages/py-dev/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-dill/package.py44
-rw-r--r--var/spack/repos/builtin/packages/py-dlcpar/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-docutils/package.py22
-rw-r--r--var/spack/repos/builtin/packages/py-doxypy/package.py34
-rw-r--r--var/spack/repos/builtin/packages/py-doxypypy/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-dryscrape/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-dxchange/package.py51
-rw-r--r--var/spack/repos/builtin/packages/py-dxfile/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-easybuild-framework/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-edffile/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-elasticsearch/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-elephant/package.py48
-rw-r--r--var/spack/repos/builtin/packages/py-emcee/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-entrypoints/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-enum34/package.py18
-rw-r--r--var/spack/repos/builtin/packages/py-epydoc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-espresso/package.py52
-rw-r--r--var/spack/repos/builtin/packages/py-espressopp/package.py (renamed from var/spack/repos/builtin/packages/espressopp/package.py)30
-rw-r--r--var/spack/repos/builtin/packages/py-et-xmlfile/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-execnet/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-fastaindex/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-fasteners/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-faststructure/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-fiscalyear/package.py48
-rw-r--r--var/spack/repos/builtin/packages/py-flake8/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-flask/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-flexx/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-funcsigs/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-functools32/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-future/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-futures/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-genders/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-genshi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-git-review/package.py49
-rw-r--r--var/spack/repos/builtin/packages/py-git2/package.py50
-rw-r--r--var/spack/repos/builtin/packages/py-gnuplot/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-griddataformats/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-guidata/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-guiqwt/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-h5py/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-html2text/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-html5lib/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-httpbin/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-hypothesis/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-idna/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-igraph/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-imagesize/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-iminuit/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-importlib/package.py34
-rw-r--r--var/spack/repos/builtin/packages/py-ipaddress/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-ipdb/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-ipykernel/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-ipython-genutils/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-ipython/package.py32
-rw-r--r--var/spack/repos/builtin/packages/py-ipywidgets/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-itsdangerous/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-jdcal/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-jedi/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-jinja2/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-joblib/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-jpype/package.py44
-rw-r--r--var/spack/repos/builtin/packages/py-jsonschema/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-junit-xml/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-client/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-console/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-core/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-jupyter-notebook/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-keras/package.py46
-rw-r--r--var/spack/repos/builtin/packages/py-latexcodec/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-lazy/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-lazyarray/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-libconf/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-line-profiler/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-lit/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-lmfit/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-lockfile/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-logilab-common/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-lxml/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-lzstring/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-macholib/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-machotools/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-macs2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-mako/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-mappy/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-markdown/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-markupsafe/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-matplotlib/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-mccabe/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-mdanalysis/package.py59
-rw-r--r--var/spack/repos/builtin/packages/py-meep/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-memory-profiler/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-methylcode/package.py44
-rw-r--r--var/spack/repos/builtin/packages/py-misopy/package.py46
-rw-r--r--var/spack/repos/builtin/packages/py-mistune/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-mock/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-mongo/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-monotonic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-monty/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-mpi4py/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-mpmath/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-multiprocess/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-multiqc/package.py48
-rw-r--r--var/spack/repos/builtin/packages/py-mx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-mxnet/package.py58
-rw-r--r--var/spack/repos/builtin/packages/py-myhdl/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-mysqldb1/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-nbconvert/package.py20
-rw-r--r--var/spack/repos/builtin/packages/py-nbconvert/style.min.css37
-rw-r--r--var/spack/repos/builtin/packages/py-nbformat/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-neo/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-nestle/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-netcdf4/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-netifaces/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-networkx/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-nose/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-nosexcover/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-numexpr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-numpy/package.py129
-rw-r--r--var/spack/repos/builtin/packages/py-numpydoc/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-olefile/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-ont-fast5-api/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-openpyxl/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-ordereddict/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-oset/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-packaging/package.py47
-rw-r--r--var/spack/repos/builtin/packages/py-palettable/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-pandas/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-paramiko/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pathlib2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pathos/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-pathspec/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-patsy/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-pbr/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-periodictable/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-petsc4py/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-pexpect/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-phonopy/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pickleshare/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pil/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pillow/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-pip/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-pipits/package.py80
-rw-r--r--var/spack/repos/builtin/packages/py-pkgconfig/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-ply/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pmw/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pox/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-ppft/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-prettytable/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-proj/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-prompt-toolkit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-protobuf/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-psutil/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-ptyprocess/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pudb/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-py/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-py2bit/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-py2cairo/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-py2neo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-py4j/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-pyasn1/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-pybigwig/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-pybind11/package.py52
-rw-r--r--var/spack/repos/builtin/packages/py-pybtex-docutils/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-pybtex/package.py55
-rw-r--r--var/spack/repos/builtin/packages/py-pychecker/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pycodestyle/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pycparser/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-pycrypto/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-pycurl/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-pydatalog/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pydispatcher/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-pydot/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pyelftools/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pyfasta/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pyfftw/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-pyflakes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pygments/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-pygobject/package.py19
-rw-r--r--var/spack/repos/builtin/packages/py-pygobject/pygobject-2.28.6-gio-types-2.32.patch50
-rw-r--r--var/spack/repos/builtin/packages/py-pygtk/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-pylint/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-pymatgen/package.py54
-rw-r--r--var/spack/repos/builtin/packages/py-pyminifier/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-pympler/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-pynn/package.py51
-rw-r--r--var/spack/repos/builtin/packages/py-pypar/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-pyparsing/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-pyparsing/setuptools-import.patch20
-rw-r--r--var/spack/repos/builtin/packages/py-pypeflow/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-pyprof2html/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pyprof2html/version_0.3.1.patch10
-rw-r--r--var/spack/repos/builtin/packages/py-pyqt/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pyrad/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-pysam/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pyscaf/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-pyserial/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-pyside/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-pysocks/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-pytables/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-cov/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-flake8/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-httpbin/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-mock/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-runner/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-xdist/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-pytest/package.py29
-rw-r--r--var/spack/repos/builtin/packages/py-python-daemon/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-python-gitlab/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-pythonqwt/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-pytz/package.py24
-rw-r--r--var/spack/repos/builtin/packages/py-pywavelets/package.py42
-rw-r--r--var/spack/repos/builtin/packages/py-pyyaml/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-qtawesome/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-qtconsole/package.py47
-rw-r--r--var/spack/repos/builtin/packages/py-qtpy/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-quantities/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-radical-utils/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-ranger/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-readme-renderer/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-regex/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-requests/package.py55
-rw-r--r--var/spack/repos/builtin/packages/py-restview/package.py11
-rw-r--r--var/spack/repos/builtin/packages/py-rope/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-rpy2/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-rsa/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-rtree/package.py23
-rw-r--r--var/spack/repos/builtin/packages/py-saga-python/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-scientificpython/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-image/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-learn/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-scipy/package.py70
-rw-r--r--var/spack/repos/builtin/packages/py-seaborn/package.py46
-rw-r--r--var/spack/repos/builtin/packages/py-setuptools/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-sh/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-shiboken/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-simplegeneric/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-simplejson/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-singledispatch/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-sip/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-six/package.py17
-rw-r--r--var/spack/repos/builtin/packages/py-slepc4py/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-sncosmo/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-snowballstemmer/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-spectra/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-spefile/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-spglib/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py13
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py16
-rw-r--r--var/spack/repos/builtin/packages/py-sphinx/package.py68
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py45
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py47
-rw-r--r--var/spack/repos/builtin/packages/py-spyder/package.py55
-rw-r--r--var/spack/repos/builtin/packages/py-spykeutils/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-sqlalchemy/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-statsmodels/package.py49
-rw-r--r--var/spack/repos/builtin/packages/py-storm/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-subprocess32/package.py34
-rw-r--r--var/spack/repos/builtin/packages/py-symengine/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-symfit/package.py41
-rw-r--r--var/spack/repos/builtin/packages/py-sympy/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-tabulate/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-tappy/package.py10
-rw-r--r--var/spack/repos/builtin/packages/py-terminado/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-theano/package.py55
-rw-r--r--var/spack/repos/builtin/packages/py-tifffile/package.py39
-rw-r--r--var/spack/repos/builtin/packages/py-tomopy/package.py51
-rw-r--r--var/spack/repos/builtin/packages/py-tornado/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-tqdm/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-traitlets/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-tuiview/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-twisted/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-typing/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-tzlocal/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-unittest2/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-unittest2py3k/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-urllib3/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-urwid/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-vcversioner/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-virtualenv/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-vsc-base/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-vsc-install/package.py36
-rw-r--r--var/spack/repos/builtin/packages/py-wcsaxes/package.py7
-rw-r--r--var/spack/repos/builtin/packages/py-wcwidth/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-webkit-server/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-werkzeug/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-wheel/package.py9
-rw-r--r--var/spack/repos/builtin/packages/py-widgetsnbextension/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-wrapt/package.py34
-rw-r--r--var/spack/repos/builtin/packages/py-xarray/package.py38
-rw-r--r--var/spack/repos/builtin/packages/py-xlrd/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-xlsxwriter/package.py35
-rw-r--r--var/spack/repos/builtin/packages/py-xmlrunner/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-xopen/package.py40
-rw-r--r--var/spack/repos/builtin/packages/py-xpyb/package.py14
-rw-r--r--var/spack/repos/builtin/packages/py-xvfbwrapper/package.py37
-rw-r--r--var/spack/repos/builtin/packages/py-yapf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/py-yt/package.py25
-rw-r--r--var/spack/repos/builtin/packages/py-zmq/package.py7
-rw-r--r--var/spack/repos/builtin/packages/python/cray-rpath-2.3.patch12
-rw-r--r--var/spack/repos/builtin/packages/python/cray-rpath-3.1.patch15
-rw-r--r--var/spack/repos/builtin/packages/python/package.py381
-rw-r--r--var/spack/repos/builtin/packages/qbank/package.py87
-rw-r--r--var/spack/repos/builtin/packages/qbox/package.py93
-rw-r--r--var/spack/repos/builtin/packages/qhull/package.py8
-rw-r--r--var/spack/repos/builtin/packages/qhull/qhull-unused-intel-17.02.patch18
-rw-r--r--var/spack/repos/builtin/packages/qmcpack/package.py234
-rw-r--r--var/spack/repos/builtin/packages/qmd-progress/package.py67
-rw-r--r--var/spack/repos/builtin/packages/qrupdate/package.py6
-rw-r--r--var/spack/repos/builtin/packages/qt-creator/package.py43
-rw-r--r--var/spack/repos/builtin/packages/qt/QTBUG-57656.patch17
-rw-r--r--var/spack/repos/builtin/packages/qt/QTBUG-58038.patch12
-rw-r--r--var/spack/repos/builtin/packages/qt/package.py130
-rw-r--r--var/spack/repos/builtin/packages/qt/qt5-pcre.patch33
-rw-r--r--var/spack/repos/builtin/packages/qtgraph/package.py73
-rw-r--r--var/spack/repos/builtin/packages/qthreads/package.py23
-rw-r--r--var/spack/repos/builtin/packages/quinoa/package.py56
-rw-r--r--var/spack/repos/builtin/packages/qwt/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-a4/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-a4base/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-a4classif/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-a4core/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-a4preproc/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-a4reporting/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-abadata/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-abaenrichment/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-abind/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-absseq/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-acde/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-acepack/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-acgh/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-acme/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-ada/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-adabag/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-ade4/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-adegenet/package.py55
-rw-r--r--var/spack/repos/builtin/packages/r-adsplit/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-affxparser/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-affy/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-affycomp/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-affycompatible/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-affycontam/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-affycoretools/package.py54
-rw-r--r--var/spack/repos/builtin/packages/r-affydata/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-affyexpress/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-affyilm/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-affyio/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-affypdnn/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-affyplm/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-affyqcreport/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-affyrnadegradation/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-agdex/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-agilp/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-agimicrorna/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-aims/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-aldex2/package.py51
-rw-r--r--var/spack/repos/builtin/packages/r-allelicimbalance/package.py56
-rw-r--r--var/spack/repos/builtin/packages/r-alpine/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-als/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-alsace/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-altcdfenvs/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-ampliqueso/package.py51
-rw-r--r--var/spack/repos/builtin/packages/r-analysispageserver/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-anaquin/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-aneufinder/package.py57
-rw-r--r--var/spack/repos/builtin/packages/r-aneufinderdata/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-annaffy/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-annotate/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-annotationdbi/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-annotationfilter/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-annotationforge/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-annotationhub/package.py51
-rw-r--r--var/spack/repos/builtin/packages/r-ape/package.py51
-rw-r--r--var/spack/repos/builtin/packages/r-assertthat/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-backports/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-bamsignals/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-base64/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-base64enc/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-beanplot/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-bh/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-biobase/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-biocgenerics/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-biocinstaller/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-biocparallel/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-biomart/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-biostrings/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-biovizbase/package.py58
-rw-r--r--var/spack/repos/builtin/packages/r-bit/package.py34
-rw-r--r--var/spack/repos/builtin/packages/r-bit64/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-bitops/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-blob/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-boot/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-brew/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-bsgenome/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-bumphunter/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-c50/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-callr/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-car/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-caret/package.py26
-rw-r--r--var/spack/repos/builtin/packages/r-category/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-catools/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-cellranger/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-checkmate/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-checkpoint/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-chron/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-circlize/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-class/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-clipr/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-cluster/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-coda/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-codetools/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-coin/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-colorspace/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-complexheatmap/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-corpcor/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-corrplot/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-covr/package.py48
-rw-r--r--var/spack/repos/builtin/packages/r-cowplot/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-crayon/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-cubature/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-cubist/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-curl/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-data-table/package.py (renamed from var/spack/repos/builtin/packages/r-datatable/package.py)16
-rw-r--r--var/spack/repos/builtin/packages/r-dbi/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-delayedarray/package.py55
-rw-r--r--var/spack/repos/builtin/packages/r-deldir/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-dendextend/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-deoptim/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-deoptimr/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-deseq/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-deseq2/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-desolve/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-devtools/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-diagrammer/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-dichromat/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-digest/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-diptest/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-dnacopy/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-domc/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-doparallel/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-dorng/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-downloader/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-dplyr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-dt/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-dygraphs/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-e1071/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-edger/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-ellipse/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-ensembldb/package.py62
-rw-r--r--var/spack/repos/builtin/packages/r-ergm/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-evaluate/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-expm/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-factoextra/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-factominer/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-ff/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-filehash/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-flashclust/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-flexmix/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-foreach/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-forecast/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-foreign/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-formatr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-formula/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-fpc/package.py48
-rw-r--r--var/spack/repos/builtin/packages/r-fracdiff/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-futile-logger/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-futile-options/package.py34
-rw-r--r--var/spack/repos/builtin/packages/r-gbm/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-gcrma/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-gdata/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-geiger/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-genefilter/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-geneplotter/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-genomeinfodb/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-genomicalignments/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-genomicfeatures/package.py58
-rw-r--r--var/spack/repos/builtin/packages/r-genomicranges/package.py51
-rw-r--r--var/spack/repos/builtin/packages/r-geomorph/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-geoquery/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-geosphere/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-getoptlong/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-ggally/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-ggbio/package.py69
-rw-r--r--var/spack/repos/builtin/packages/r-ggdendro/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-ggmap/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-ggplot2/package.py19
-rw-r--r--var/spack/repos/builtin/packages/r-ggpubr/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-ggrepel/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-ggsci/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-ggvis/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-gistr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-git2r/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-glmnet/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-globaloptions/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-gmodels/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-gmp/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-go-db/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-googlevis/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-gostats/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-gplots/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-graph/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-gridbase/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-gridextra/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-gseabase/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-gsubfn/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-gtable/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-gtools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-gtrellis/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-gviz/package.py63
-rw-r--r--var/spack/repos/builtin/packages/r-hexbin/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-highr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-hmisc/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-hms/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-htmltable/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-htmltools/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-htmlwidgets/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-httpuv/package.py15
-rw-r--r--var/spack/repos/builtin/packages/r-httr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-hwriter/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-hypergraph/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-igraph/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-illuminaio/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-impute/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-influencer/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-inline/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-ipred/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-iranges/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-irdisplay/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-irkernel/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-irlba/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-iso/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-iterators/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-jpeg/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-jsonlite/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-kegg-db/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-keggrest/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-kernlab/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-kernsmooth/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-kknn/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-knitr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-labeling/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-lambda-r/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-laplacesdemon/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-lattice/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-latticeextra/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-lava/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-lazyeval/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-leaflet/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-leaps/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-learnbayes/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-limma/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-lme4/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-lmtest/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-locfit/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-log4r/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-lpsolve/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-lsei/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-lubridate/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-magic/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-magrittr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-makecdfenv/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-maldiquant/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-mapproj/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-maps/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-maptools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-markdown/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-mass/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-matrix/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-matrixmodels/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-matrixstats/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-mclust/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-mcmcglmm/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-mda/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-memoise/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-mergemaid/package.py48
-rw-r--r--var/spack/repos/builtin/packages/r-methodss3/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-mgcv/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-mime/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-minfi/package.py63
-rw-r--r--var/spack/repos/builtin/packages/r-minqa/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-mlbench/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-mlinterfaces/package.py52
-rw-r--r--var/spack/repos/builtin/packages/r-modelmetrics/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-modeltools/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-mpm/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-msnbase/package.py57
-rw-r--r--var/spack/repos/builtin/packages/r-multcomp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-multtest/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-munsell/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-mvtnorm/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-mzid/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-mzr/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-ncbit/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-ncdf4/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-network/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-networkd3/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-nlme/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-nloptr/package.py29
-rw-r--r--var/spack/repos/builtin/packages/r-nmf/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-nnet/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-nnls/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-nor1mix/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-np/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-numderiv/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-oligoclasses/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-oo/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-openssl/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-organismdbi/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-packrat/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-pacman/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-pamr/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-party/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-partykit/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-pbdzmq/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-pbkrtest/package.py13
-rw-r--r--var/spack/repos/builtin/packages/r-pcamethods/package.py48
-rw-r--r--var/spack/repos/builtin/packages/r-permute/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-pfam-db/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-pkgconfig/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-pkgmaker/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-plogr/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-plotrix/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-pls/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-plyr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-pmcmr/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-png/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-prabclus/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-praise/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-preprocesscore/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-prettyunits/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-prodlim/package.py44
-rw-r--r--var/spack/repos/builtin/packages/r-progress/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-protgenerics/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-proto/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-proxy/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-pryr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-ptw/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-purrr/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-quadprog/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-quantmod/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-quantreg/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-quantro/package.py49
-rw-r--r--var/spack/repos/builtin/packages/r-qvalue/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-r6/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-randomforest/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-raster/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rbgl/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-rbokeh/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rcolorbrewer/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rcpp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/r-rcpparmadillo/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-rcppeigen/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-rcurl/package.py62
-rw-r--r--var/spack/repos/builtin/packages/r-rda/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-readr/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-readxl/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-registry/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rematch/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-reordercluster/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-reportingtools/package.py67
-rw-r--r--var/spack/repos/builtin/packages/r-repr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-reprex/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-reshape/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-reshape2/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-rex/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-rgl/package.py61
-rw-r--r--var/spack/repos/builtin/packages/r-rgooglemaps/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rhtslib/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-rinside/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rjava/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-rjson/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rjsonio/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rlang/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-rmarkdown/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rminer/package.py54
-rw-r--r--var/spack/repos/builtin/packages/r-rmpfr/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-rmpi/package.py63
-rw-r--r--var/spack/repos/builtin/packages/r-rmysql/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rngtools/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-robustbase/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-rocr/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-rodbc/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-roxygen2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rpart-plot/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-rpart/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-rpostgresql/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rsamtools/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-rsnns/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rsqlite/package.py18
-rw-r--r--var/spack/repos/builtin/packages/r-rstan/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rstudioapi/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-rtracklayer/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-rvest/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-rzmq/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-s4vectors/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-samr/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-sandwich/package.py8
-rw-r--r--var/spack/repos/builtin/packages/r-scales/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-scatterplot3d/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-segmented/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-selectr/package.py45
-rw-r--r--var/spack/repos/builtin/packages/r-seqinr/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-sfsmisc/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-shape/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-shiny/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-siggenes/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-simpleaffy/package.py46
-rw-r--r--var/spack/repos/builtin/packages/r-snow/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-somaticsignatures/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-sourcetools/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-sp/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-sparsem/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-spdep/package.py56
-rw-r--r--var/spack/repos/builtin/packages/r-speedglm/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-sqldf/package.py50
-rw-r--r--var/spack/repos/builtin/packages/r-stanheaders/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-statmod/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-statnet-common/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-stringi/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-stringr/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-strucchange/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-subplex/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-summarizedexperiment/package.py47
-rw-r--r--var/spack/repos/builtin/packages/r-survey/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-survival/package.py10
-rw-r--r--var/spack/repos/builtin/packages/r-tarifx/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-tensora/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-testit/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r-testthat/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-th-data/package.py (renamed from var/spack/repos/builtin/packages/r-thdata/package.py)11
-rw-r--r--var/spack/repos/builtin/packages/r-threejs/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-tibble/package.py20
-rw-r--r--var/spack/repos/builtin/packages/r-tidyr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-tiff/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-timedate/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-trimcluster/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-trust/package.py36
-rw-r--r--var/spack/repos/builtin/packages/r-tseries/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-ttr/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-utils/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-uuid/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-variantannotation/package.py54
-rw-r--r--var/spack/repos/builtin/packages/r-varselrf/package.py41
-rw-r--r--var/spack/repos/builtin/packages/r-vcd/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-vegan/package.py39
-rw-r--r--var/spack/repos/builtin/packages/r-viridis/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-viridislite/package.py37
-rw-r--r--var/spack/repos/builtin/packages/r-visnetwork/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-vsn/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-whisker/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-withr/package.py11
-rw-r--r--var/spack/repos/builtin/packages/r-xde/package.py43
-rw-r--r--var/spack/repos/builtin/packages/r-xgboost/package.py21
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnect/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-xlconnectjars/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-xlsx/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-xlsxjars/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-xmapbridge/package.py38
-rw-r--r--var/spack/repos/builtin/packages/r-xml/package.py12
-rw-r--r--var/spack/repos/builtin/packages/r-xml2/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-xtable/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-xts/package.py6
-rw-r--r--var/spack/repos/builtin/packages/r-xvector/package.py42
-rw-r--r--var/spack/repos/builtin/packages/r-yaml/package.py7
-rw-r--r--var/spack/repos/builtin/packages/r-yapsa/package.py57
-rw-r--r--var/spack/repos/builtin/packages/r-yaqcaffy/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-yarn/package.py53
-rw-r--r--var/spack/repos/builtin/packages/r-zlibbioc/package.py40
-rw-r--r--var/spack/repos/builtin/packages/r-zoo/package.py9
-rw-r--r--var/spack/repos/builtin/packages/r/package.py83
-rw-r--r--var/spack/repos/builtin/packages/r/zlib.patch29
-rw-r--r--var/spack/repos/builtin/packages/raft/package.py52
-rw-r--r--var/spack/repos/builtin/packages/raja/package.py16
-rw-r--r--var/spack/repos/builtin/packages/randfold/package.py40
-rw-r--r--var/spack/repos/builtin/packages/random123/package.py45
-rw-r--r--var/spack/repos/builtin/packages/randrproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/ravel/package.py14
-rw-r--r--var/spack/repos/builtin/packages/raxml/package.py107
-rw-r--r--var/spack/repos/builtin/packages/ray/package.py44
-rw-r--r--var/spack/repos/builtin/packages/rdp-classifier/package.py45
-rw-r--r--var/spack/repos/builtin/packages/readline/package.py38
-rw-r--r--var/spack/repos/builtin/packages/readline/readline-6.3-upstream_fixes-1.patch90
-rw-r--r--var/spack/repos/builtin/packages/recordproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/redundans/package.py57
-rw-r--r--var/spack/repos/builtin/packages/relion/package.py66
-rw-r--r--var/spack/repos/builtin/packages/rempi/package.py39
-rw-r--r--var/spack/repos/builtin/packages/rename/package.py6
-rw-r--r--var/spack/repos/builtin/packages/rendercheck/package.py14
-rw-r--r--var/spack/repos/builtin/packages/renderproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/repeatmasker/package.py80
-rw-r--r--var/spack/repos/builtin/packages/resourceproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/revbayes/package.py62
-rw-r--r--var/spack/repos/builtin/packages/rgb/package.py15
-rw-r--r--var/spack/repos/builtin/packages/rhash/package.py78
-rw-r--r--var/spack/repos/builtin/packages/rockstar/adjust_buildscript.patch13
-rw-r--r--var/spack/repos/builtin/packages/rockstar/package.py69
-rw-r--r--var/spack/repos/builtin/packages/root/package.py123
-rw-r--r--var/spack/repos/builtin/packages/rose/package.py71
-rw-r--r--var/spack/repos/builtin/packages/rr/package.py66
-rw-r--r--var/spack/repos/builtin/packages/rsbench/package.py66
-rw-r--r--var/spack/repos/builtin/packages/rsem/package.py45
-rw-r--r--var/spack/repos/builtin/packages/rstart/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rsync/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rtags/add_string_iterator_erase_compile_check.patch67
-rw-r--r--var/spack/repos/builtin/packages/rtags/package.py49
-rw-r--r--var/spack/repos/builtin/packages/rtax/package.py43
-rw-r--r--var/spack/repos/builtin/packages/ruby/package.py14
-rw-r--r--var/spack/repos/builtin/packages/rust-bindgen/package.py10
-rw-r--r--var/spack/repos/builtin/packages/rust/package.py8
-rw-r--r--var/spack/repos/builtin/packages/sabre/package.py48
-rw-r--r--var/spack/repos/builtin/packages/salmon/package.py41
-rw-r--r--var/spack/repos/builtin/packages/sambamba/Makefile.patch11
-rw-r--r--var/spack/repos/builtin/packages/sambamba/package.py52
-rw-r--r--var/spack/repos/builtin/packages/samrai/package.py70
-rw-r--r--var/spack/repos/builtin/packages/samtools/package.py18
-rw-r--r--var/spack/repos/builtin/packages/sandbox/package.py34
-rw-r--r--var/spack/repos/builtin/packages/sas/package.py47
-rw-r--r--var/spack/repos/builtin/packages/satsuma2/package.py41
-rw-r--r--var/spack/repos/builtin/packages/savanna/package.py (renamed from var/spack/repos/builtin/packages/ipp/package.py)39
-rw-r--r--var/spack/repos/builtin/packages/saws/package.py36
-rw-r--r--var/spack/repos/builtin/packages/sbt/package.py8
-rw-r--r--var/spack/repos/builtin/packages/scala/package.py53
-rw-r--r--var/spack/repos/builtin/packages/scalasca/package.py59
-rw-r--r--var/spack/repos/builtin/packages/scalpel/package.py101
-rw-r--r--var/spack/repos/builtin/packages/scons/package.py15
-rw-r--r--var/spack/repos/builtin/packages/scorec-core/package.py59
-rw-r--r--var/spack/repos/builtin/packages/scorep/gcc7.patch42
-rw-r--r--var/spack/repos/builtin/packages/scorep/package.py86
-rw-r--r--var/spack/repos/builtin/packages/scotch/esmumps-ldflags-6.0.4.patch11
-rw-r--r--var/spack/repos/builtin/packages/scotch/nonthreaded-6.0.4.patch11
-rw-r--r--var/spack/repos/builtin/packages/scotch/package.py78
-rw-r--r--var/spack/repos/builtin/packages/scr/package.py131
-rw-r--r--var/spack/repos/builtin/packages/screen/package.py13
-rw-r--r--var/spack/repos/builtin/packages/scripts/package.py14
-rw-r--r--var/spack/repos/builtin/packages/scrnsaverproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/sctk/package.py53
-rw-r--r--var/spack/repos/builtin/packages/sdl2-image/package.py14
-rw-r--r--var/spack/repos/builtin/packages/sdl2/package.py17
-rw-r--r--var/spack/repos/builtin/packages/sed/package.py14
-rw-r--r--var/spack/repos/builtin/packages/seqprep/package.py39
-rw-r--r--var/spack/repos/builtin/packages/seqtk/package.py6
-rw-r--r--var/spack/repos/builtin/packages/serf/package.py74
-rw-r--r--var/spack/repos/builtin/packages/sessreg/package.py14
-rw-r--r--var/spack/repos/builtin/packages/setxkbmap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/sga/package.py61
-rw-r--r--var/spack/repos/builtin/packages/shapeit/package.py44
-rw-r--r--var/spack/repos/builtin/packages/shared-mime-info/package.py49
-rw-r--r--var/spack/repos/builtin/packages/shiny-server/package.py75
-rw-r--r--var/spack/repos/builtin/packages/shortstack/package.py45
-rw-r--r--var/spack/repos/builtin/packages/showfont/package.py14
-rw-r--r--var/spack/repos/builtin/packages/sickle/package.py43
-rw-r--r--var/spack/repos/builtin/packages/signalp/package.py61
-rw-r--r--var/spack/repos/builtin/packages/silo/package.py24
-rw-r--r--var/spack/repos/builtin/packages/silo/remove-mpiposix.patch40
-rw-r--r--var/spack/repos/builtin/packages/simplemoc/package.py68
-rw-r--r--var/spack/repos/builtin/packages/simul/package.py47
-rw-r--r--var/spack/repos/builtin/packages/simulationio/package.py63
-rw-r--r--var/spack/repos/builtin/packages/singularity/package.py41
-rw-r--r--var/spack/repos/builtin/packages/slepc/package.py25
-rw-r--r--var/spack/repos/builtin/packages/slurm/package.py109
-rw-r--r--var/spack/repos/builtin/packages/smalt/package.py34
-rw-r--r--var/spack/repos/builtin/packages/smc/package.py83
-rw-r--r--var/spack/repos/builtin/packages/smproxy/package.py14
-rw-r--r--var/spack/repos/builtin/packages/snakemake/package.py39
-rw-r--r--var/spack/repos/builtin/packages/snap-berkeley/package.py57
-rw-r--r--var/spack/repos/builtin/packages/snap-korf/package.py62
-rw-r--r--var/spack/repos/builtin/packages/snap/package.py64
-rw-r--r--var/spack/repos/builtin/packages/snappy/package.py47
-rw-r--r--var/spack/repos/builtin/packages/snbone/package.py64
-rw-r--r--var/spack/repos/builtin/packages/sniffles/package.py42
-rw-r--r--var/spack/repos/builtin/packages/snptest/package.py39
-rw-r--r--var/spack/repos/builtin/packages/soap2/package.py42
-rw-r--r--var/spack/repos/builtin/packages/soapindel/package.py53
-rw-r--r--var/spack/repos/builtin/packages/soapsnp/package.py42
-rw-r--r--var/spack/repos/builtin/packages/somatic-sniper/package.py38
-rw-r--r--var/spack/repos/builtin/packages/sortmerna/package.py44
-rw-r--r--var/spack/repos/builtin/packages/sosflow/package.py51
-rw-r--r--var/spack/repos/builtin/packages/sowing/package.py12
-rw-r--r--var/spack/repos/builtin/packages/sox/package.py40
-rw-r--r--var/spack/repos/builtin/packages/spades/package.py43
-rw-r--r--var/spack/repos/builtin/packages/spark/package.py29
-rw-r--r--var/spack/repos/builtin/packages/sparsehash/package.py14
-rw-r--r--var/spack/repos/builtin/packages/sparta/package.py46
-rw-r--r--var/spack/repos/builtin/packages/spdlog/package.py6
-rw-r--r--var/spack/repos/builtin/packages/spectrum-mpi/package.py70
-rw-r--r--var/spack/repos/builtin/packages/speex/package.py35
-rw-r--r--var/spack/repos/builtin/packages/sph2pipe/cmake.patch10
-rw-r--r--var/spack/repos/builtin/packages/sph2pipe/package.py37
-rw-r--r--var/spack/repos/builtin/packages/spherepack/package.py42
-rw-r--r--var/spack/repos/builtin/packages/spindle/package.py14
-rw-r--r--var/spack/repos/builtin/packages/spot/package.py23
-rw-r--r--var/spack/repos/builtin/packages/sqlite/package.py34
-rw-r--r--var/spack/repos/builtin/packages/sqlite/sqlite_b0.patch13
-rw-r--r--var/spack/repos/builtin/packages/squid/package.py33
-rw-r--r--var/spack/repos/builtin/packages/sra-toolkit/package.py45
-rw-r--r--var/spack/repos/builtin/packages/sspace-longread/package.py52
-rw-r--r--var/spack/repos/builtin/packages/sspace-standard/package.py56
-rw-r--r--var/spack/repos/builtin/packages/sst-dumpi/package.py52
-rw-r--r--var/spack/repos/builtin/packages/sst-macro/package.py64
-rw-r--r--var/spack/repos/builtin/packages/stacks/package.py48
-rw-r--r--var/spack/repos/builtin/packages/staden-io-lib/package.py37
-rw-r--r--var/spack/repos/builtin/packages/star-ccm-plus/package.py11
-rw-r--r--var/spack/repos/builtin/packages/star/package.py44
-rw-r--r--var/spack/repos/builtin/packages/stat/package.py37
-rw-r--r--var/spack/repos/builtin/packages/stc/package.py43
-rw-r--r--var/spack/repos/builtin/packages/stream/package.py12
-rw-r--r--var/spack/repos/builtin/packages/strelka/package.py88
-rw-r--r--var/spack/repos/builtin/packages/stress/package.py37
-rw-r--r--var/spack/repos/builtin/packages/stringtie/package.py41
-rw-r--r--var/spack/repos/builtin/packages/structure/package.py47
-rw-r--r--var/spack/repos/builtin/packages/sublime-text/package.py12
-rw-r--r--var/spack/repos/builtin/packages/subread/package.py52
-rw-r--r--var/spack/repos/builtin/packages/subversion/package.py43
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/package.py108
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/pgi.patch12
-rw-r--r--var/spack/repos/builtin/packages/sumaclust/package.py42
-rw-r--r--var/spack/repos/builtin/packages/sundials/package.py494
-rw-r--r--var/spack/repos/builtin/packages/sundials/test_nvector_parhyp.patch18
-rw-r--r--var/spack/repos/builtin/packages/superlu-dist/package.py37
-rw-r--r--var/spack/repos/builtin/packages/superlu-mt/package.py8
-rw-r--r--var/spack/repos/builtin/packages/superlu/package.py20
-rw-r--r--var/spack/repos/builtin/packages/sw4lite/package.py98
-rw-r--r--var/spack/repos/builtin/packages/swarm/package.py41
-rw-r--r--var/spack/repos/builtin/packages/swfft/package.py49
-rw-r--r--var/spack/repos/builtin/packages/swiftsim/package.py13
-rw-r--r--var/spack/repos/builtin/packages/swig/package.py31
-rw-r--r--var/spack/repos/builtin/packages/symengine/package.py102
-rw-r--r--var/spack/repos/builtin/packages/sympol/package.py15
-rw-r--r--var/spack/repos/builtin/packages/sz/package.py50
-rw-r--r--var/spack/repos/builtin/packages/tabix/package.py50
-rw-r--r--var/spack/repos/builtin/packages/talloc/package.py35
-rw-r--r--var/spack/repos/builtin/packages/tar/argp-pgi.patch25
-rw-r--r--var/spack/repos/builtin/packages/tar/config-pgi.patch10
-rw-r--r--var/spack/repos/builtin/packages/tar/gnutar-configure-xattrs.patch6
-rw-r--r--var/spack/repos/builtin/packages/tar/package.py16
-rw-r--r--var/spack/repos/builtin/packages/tar/se-selinux.patch66
-rw-r--r--var/spack/repos/builtin/packages/tar/tar-pgi.patch66
-rw-r--r--var/spack/repos/builtin/packages/targetp/package.py67
-rw-r--r--var/spack/repos/builtin/packages/task/package.py23
-rw-r--r--var/spack/repos/builtin/packages/taskd/package.py22
-rw-r--r--var/spack/repos/builtin/packages/tassel/package.py45
-rw-r--r--var/spack/repos/builtin/packages/tau/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tcl/package.py28
-rw-r--r--var/spack/repos/builtin/packages/tcoffee/package.py57
-rw-r--r--var/spack/repos/builtin/packages/tcsh/package.py65
-rw-r--r--var/spack/repos/builtin/packages/tealeaf/package.py77
-rw-r--r--var/spack/repos/builtin/packages/tetgen/package.py8
-rw-r--r--var/spack/repos/builtin/packages/tethex/package.py19
-rw-r--r--var/spack/repos/builtin/packages/texinfo/package.py6
-rw-r--r--var/spack/repos/builtin/packages/texlive/package.py40
-rw-r--r--var/spack/repos/builtin/packages/the-platinum-searcher/package.py6
-rw-r--r--var/spack/repos/builtin/packages/the-silver-searcher/package.py17
-rw-r--r--var/spack/repos/builtin/packages/thrift/package.py12
-rw-r--r--var/spack/repos/builtin/packages/thrust/package.py40
-rw-r--r--var/spack/repos/builtin/packages/tig/package.py36
-rw-r--r--var/spack/repos/builtin/packages/tinyxml/package.py13
-rw-r--r--var/spack/repos/builtin/packages/tinyxml2/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tk/package.py26
-rw-r--r--var/spack/repos/builtin/packages/tmalign/package.py39
-rw-r--r--var/spack/repos/builtin/packages/tmhmm/package.py56
-rw-r--r--var/spack/repos/builtin/packages/tmux/package.py33
-rw-r--r--var/spack/repos/builtin/packages/tmuxinator/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tophat/package.py47
-rw-r--r--var/spack/repos/builtin/packages/tppred/package.py54
-rw-r--r--var/spack/repos/builtin/packages/transabyss/package.py45
-rw-r--r--var/spack/repos/builtin/packages/transdecoder/package.py50
-rw-r--r--var/spack/repos/builtin/packages/transposome/package.py37
-rw-r--r--var/spack/repos/builtin/packages/transset/package.py14
-rw-r--r--var/spack/repos/builtin/packages/trapproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/tree/package.py6
-rw-r--r--var/spack/repos/builtin/packages/trf/package.py46
-rw-r--r--var/spack/repos/builtin/packages/triangle/package.py6
-rw-r--r--var/spack/repos/builtin/packages/trilinos/package.py459
-rw-r--r--var/spack/repos/builtin/packages/trilinos/xlf_seacas.patch12
-rw-r--r--var/spack/repos/builtin/packages/trimgalore/package.py44
-rw-r--r--var/spack/repos/builtin/packages/trimmomatic/package.py65
-rw-r--r--var/spack/repos/builtin/packages/trimmomatic/trimmomatic.sh3
-rw-r--r--var/spack/repos/builtin/packages/turbine/package.py46
-rw-r--r--var/spack/repos/builtin/packages/turbomole/package.py6
-rw-r--r--var/spack/repos/builtin/packages/tut/package.py43
-rw-r--r--var/spack/repos/builtin/packages/twm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/tycho2/package.py56
-rw-r--r--var/spack/repos/builtin/packages/typhonio/package.py60
-rw-r--r--var/spack/repos/builtin/packages/uberftp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/udunits2/package.py15
-rw-r--r--var/spack/repos/builtin/packages/uncrustify/package.py13
-rw-r--r--var/spack/repos/builtin/packages/unibilium/package.py6
-rw-r--r--var/spack/repos/builtin/packages/unison/package.py8
-rw-r--r--var/spack/repos/builtin/packages/units/package.py36
-rw-r--r--var/spack/repos/builtin/packages/unixodbc/package.py17
-rw-r--r--var/spack/repos/builtin/packages/usearch/package.py49
-rw-r--r--var/spack/repos/builtin/packages/util-linux/package.py35
-rw-r--r--var/spack/repos/builtin/packages/util-macros/package.py16
-rw-r--r--var/spack/repos/builtin/packages/uuid/package.py6
-rw-r--r--var/spack/repos/builtin/packages/valgrind/package.py43
-rw-r--r--var/spack/repos/builtin/packages/valgrind/valgrind_3_12_0_osx.patch13
-rw-r--r--var/spack/repos/builtin/packages/vampirtrace/package.py73
-rw-r--r--var/spack/repos/builtin/packages/vardictjava/package.py47
-rw-r--r--var/spack/repos/builtin/packages/varscan/package.py59
-rw-r--r--var/spack/repos/builtin/packages/varscan/varscan.sh3
-rw-r--r--var/spack/repos/builtin/packages/vc/package.py41
-rw-r--r--var/spack/repos/builtin/packages/vcftools/package.py75
-rw-r--r--var/spack/repos/builtin/packages/vcsh/package.py44
-rw-r--r--var/spack/repos/builtin/packages/vdt/package.py38
-rw-r--r--var/spack/repos/builtin/packages/vecgeom/package.py54
-rw-r--r--var/spack/repos/builtin/packages/veclibfort/package.py28
-rw-r--r--var/spack/repos/builtin/packages/vegas2/package.py49
-rw-r--r--var/spack/repos/builtin/packages/velvet/package.py40
-rw-r--r--var/spack/repos/builtin/packages/videoproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/viennarna/package.py61
-rw-r--r--var/spack/repos/builtin/packages/viewres/package.py14
-rw-r--r--var/spack/repos/builtin/packages/vim/package.py59
-rw-r--r--var/spack/repos/builtin/packages/virtualgl/package.py45
-rw-r--r--var/spack/repos/builtin/packages/visit/package.py42
-rw-r--r--var/spack/repos/builtin/packages/vizglow/package.py63
-rw-r--r--var/spack/repos/builtin/packages/vmatch/package.py42
-rw-r--r--var/spack/repos/builtin/packages/voropp/package.py44
-rw-r--r--var/spack/repos/builtin/packages/votca-csg/package.py46
-rw-r--r--var/spack/repos/builtin/packages/votca-ctp/package.py45
-rw-r--r--var/spack/repos/builtin/packages/votca-moo/package.py43
-rw-r--r--var/spack/repos/builtin/packages/votca-tools/package.py48
-rw-r--r--var/spack/repos/builtin/packages/votca-xtp/package.py48
-rw-r--r--var/spack/repos/builtin/packages/vpfft/package.py67
-rw-r--r--var/spack/repos/builtin/packages/vpic/package.py49
-rw-r--r--var/spack/repos/builtin/packages/vsearch/package.py39
-rw-r--r--var/spack/repos/builtin/packages/vtk/package.py110
-rw-r--r--var/spack/repos/builtin/packages/vtkh/package.py97
-rw-r--r--var/spack/repos/builtin/packages/vtkm/package.py83
-rw-r--r--var/spack/repos/builtin/packages/wannier90/package.py56
-rw-r--r--var/spack/repos/builtin/packages/wget/package.py94
-rw-r--r--var/spack/repos/builtin/packages/windowswmproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/wt/package.py95
-rw-r--r--var/spack/repos/builtin/packages/wx/package.py36
-rw-r--r--var/spack/repos/builtin/packages/wxpropgrid/package.py6
-rw-r--r--var/spack/repos/builtin/packages/x11perf/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xapian-core/package.py39
-rw-r--r--var/spack/repos/builtin/packages/xauth/package.py15
-rw-r--r--var/spack/repos/builtin/packages/xbacklight/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xbiff/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xbitmaps/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xcalc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-demo/package.py19
-rw-r--r--var/spack/repos/builtin/packages/xcb-proto/package.py17
-rw-r--r--var/spack/repos/builtin/packages/xcb-proto/xcb-proto-1.12-schema-1.patch52
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-cursor/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-errors/package.py15
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-image/package.py15
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-keysyms/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-renderutil/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-util-wm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcb-util/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xclip/package.py46
-rw-r--r--var/spack/repos/builtin/packages/xclipboard/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xclock/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcmiscproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xcmsdb/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcompmgr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xconsole/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xcursor-themes/package.py6
-rw-r--r--var/spack/repos/builtin/packages/xcursorgen/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xdbedizzy/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xditview/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xdm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xdpyinfo/package.py17
-rw-r--r--var/spack/repos/builtin/packages/xdriinfo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xedit/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xerces-c/package.py22
-rw-r--r--var/spack/repos/builtin/packages/xev/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xextproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xeyes/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xf86bigfontproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xf86dga/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xf86dgaproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xf86driproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xf86miscproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xf86rushproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xf86vidmodeproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xfd/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xfindproxy/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xfontsel/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xfs/package.py15
-rw-r--r--var/spack/repos/builtin/packages/xfsinfo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xfwp/package.py18
-rw-r--r--var/spack/repos/builtin/packages/xgamma/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xgc/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xhost/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xineramaproto/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xinit/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xinput/package.py17
-rw-r--r--var/spack/repos/builtin/packages/xkbcomp/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkbdata/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkbevd/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkbprint/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkbutils/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkeyboard-config/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xkill/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xload/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xlogo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xlsatoms/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xlsclients/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xlsfonts/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xmag/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xman/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xmessage/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xmh/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xmlto/package.py18
-rw-r--r--var/spack/repos/builtin/packages/xmodmap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xmore/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xorg-cf-files/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xorg-docs/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xorg-gtest/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xorg-server/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xphelloworld/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xplor-nih/package.py48
-rw-r--r--var/spack/repos/builtin/packages/xplsprinters/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xpr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xprehashprinterlist/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xprop/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xproto/package.py17
-rw-r--r--var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xqilla/package.py56
-rw-r--r--var/spack/repos/builtin/packages/xrandr/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xrdb/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xrefresh/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xrootd/package.py31
-rw-r--r--var/spack/repos/builtin/packages/xrx/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsbench/package.py66
-rw-r--r--var/spack/repos/builtin/packages/xscope/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsdk/package.py84
-rw-r--r--var/spack/repos/builtin/packages/xsdktrilinos/package.py27
-rw-r--r--var/spack/repos/builtin/packages/xset/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsetmode/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsetpointer/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsetroot/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xsm/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xstdcmap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xterm/package.py55
-rw-r--r--var/spack/repos/builtin/packages/xtrans/package.py13
-rw-r--r--var/spack/repos/builtin/packages/xtrap/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xts/package.py18
-rw-r--r--var/spack/repos/builtin/packages/xvidtune/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xvinfo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xwd/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xwininfo/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xwud/package.py14
-rw-r--r--var/spack/repos/builtin/packages/xz/package.py20
-rw-r--r--var/spack/repos/builtin/packages/yajl/package.py35
-rw-r--r--var/spack/repos/builtin/packages/yaml-cpp/package.py21
-rw-r--r--var/spack/repos/builtin/packages/yasm/package.py13
-rw-r--r--var/spack/repos/builtin/packages/yorick/package.py18
-rw-r--r--var/spack/repos/builtin/packages/z3/package.py55
-rw-r--r--var/spack/repos/builtin/packages/zeromq/package.py31
-rw-r--r--var/spack/repos/builtin/packages/zfp/package.py64
-rw-r--r--var/spack/repos/builtin/packages/zip/package.py46
-rw-r--r--var/spack/repos/builtin/packages/zlib/package.py49
-rw-r--r--var/spack/repos/builtin/packages/zlib/w_patch.patch13
-rw-r--r--var/spack/repos/builtin/packages/zoltan/package.py26
-rw-r--r--var/spack/repos/builtin/packages/zsh/package.py28
-rw-r--r--var/spack/repos/builtin/packages/zstd/package.py40
2457 files changed, 90596 insertions, 13021 deletions
diff --git a/var/spack/gpg.mock/README.md b/var/spack/gpg.mock/README.md
new file mode 100644
index 0000000000..95215a8634
--- /dev/null
+++ b/var/spack/gpg.mock/README.md
@@ -0,0 +1,3 @@
+# Mock GPG directory
+
+This directory contains keys and data used in the testing Spack.
diff --git a/var/spack/gpg.mock/data/content.txt b/var/spack/gpg.mock/data/content.txt
new file mode 100644
index 0000000000..6ab0f567cf
--- /dev/null
+++ b/var/spack/gpg.mock/data/content.txt
@@ -0,0 +1 @@
+This file has a signature signed by an external key.
diff --git a/var/spack/gpg.mock/data/content.txt.asc b/var/spack/gpg.mock/data/content.txt.asc
new file mode 100644
index 0000000000..7593156113
--- /dev/null
+++ b/var/spack/gpg.mock/data/content.txt.asc
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJZELiKAAoJENygJBhApdriPvgP/0shBTmx4jg6QaI0zyie8a+R
++L/o9iIV4MqvBI5g+Ti+nktoCSxSOPOYFW4af740A7/43wIML9LK+gIhx/QbCrMb
+bNqzyIry9/L6PK1cCuXvd10CT+MCF1P0hdaMtKihdBYB3J8f5y1i30z+a8YWsRsX
+tPMVF/HunlpAkSWIpjmbJzFPT1R/UiBHl4VJ+mM3NNZYNIq8ZhKUiXwlQkZ8R8zg
+M0IEFkwfFtp7JxnhG7jR0k63cNm3KSocAJpwENy46RKGsAvwvqTzRh4T2MlmQIjH
+TC1MA8alJvtSdBHpkKffSU8jLewKHe1H48nc9NifMy04Ni8fSlGZe14Oe7Krqla0
+qWs+XHrGCmSleyiRUQes1MKQ7NhumKEoEaU+q0/c+lUDILZp1TlfvTPg2fzng4M/
+YF6+f+wqM+xY6z1/IloOMHis5oALjARSO88ldrLU4DQp/6jTKJO/+I4uWhMnPkMW
++a3GLWl1CShReHKbWZTLFtdQATZXA8M6wQ8FAsLOmRLb0AlEQ28A8fHrBCCdU2xj
+tSG++U1ZUo64cMYQmIMsvIApnkTh7qCkDjaVBP1to3qc83YHncxorydz9ERpuDvP
+d1IOHlJyUSM4+sLkCPvH9QyTaJn/x7D/VraznEiptGON7G6G9AgyAzIgYamm1Kwh
+UDhbQDFDhLLvUSDGzO3l
+=kwo9
+-----END PGP SIGNATURE-----
diff --git a/var/spack/gpg.mock/keys/external.key b/var/spack/gpg.mock/keys/external.key
new file mode 100644
index 0000000000..d08c90ea7f
--- /dev/null
+++ b/var/spack/gpg.mock/keys/external.key
@@ -0,0 +1,30 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2
+
+mQINBFkQuFIBEAC7DiUM7jQ01kaGX+4nguzVeYquBRYoEUiObl5UIVSavMn4I7Oy
+aytG+qR26tUpunjEB6ftIQMJSyPKueclUJBaQ9lzQ3WpFC3ItpBNkMxHpiqPa9DX
+ddMk2QtJt4TlCWJEdnhR/92mMF+vf7B5/OvFvKOi0P+AwzBHC8IKTxml/UosmeVI
+Cs69FzRDXyqQxQAkATmuDmHXPaC6RkDmpVRe3ej+Kr+Xu4vcb/EBHg/vcZkFdSmi
+hyOj21/8LQZzcwTg4TSgHzKqbjPtIEQM3NNksvcFYlq2X0ad4cBcxa1Hj5xV8oS/
+bdYOFSdsh3QRROcEeKYVQZhvCR12qS93P4b2egbamBxCQK0Sn6QPIjlR6+Ya2/6p
+/hHddF+YVA6HJ22QZjaORf9lImYfYMs1ka2GtgkczOeaFEfcJ96nIa8Qb1jcrOon
+/3k/l+Ae09HRCcGB2DgKXw7S+CXKt46Oadp3bIDAyceotGnrG3cVA6A9Lwqy6U/5
+ywry8ETu3wlIR3EAIwM0a/3xCPg3cC/bt9rSqsFcmXyxltGI2CBTWcTqcyjW4VAw
+nVI8otBd4yNdimhpxLfx6AaMjA+D+OSltnAZUrp1fSFVhWLpTxLbcTv+HJ/g4U+x
++PAsQ79Hzmzvy/8nOvIprGzY4LCmBPbLUB47Yu761HhYQhkuJiYP1R/GzQARAQAB
+tDpTcGFjayB0ZXN0aW5nIChTcGFjayB0ZXN0aW5nIGtleSkgPHNwYWNrQGdvb2ds
+ZWdyb3Vwcy5jb20+iQI3BBMBCAAhBQJZELhSAhsDBQsJCAcCBhUICQoLAgQWAgMB
+Ah4BAheAAAoJENygJBhApdriOnUP/iLC1ZxyBP3STSVgBBTS1L6FnRAc9ya6eXNT
+EwLLoSL0I0srs0sThmhyW38ZamsXYDhggaetShxemcO0BoNAii/oNK9yQoXNF4f6
+7wg2ZxCDuDjp/3VsbiI+kNlH2kj1tQ/M53ak9nYhmwLJFfKzjQBWJiyTwYZwO3MB
+QvXBvLIKj6IDS20o+7jbOq8F243vo5/uNHc/6C9eC3i4jzXWVlln2+iN/e5sVt+X
+ZiggLK2Goj5CZ7ZjZQvdoH4wKbSPLBg0Lh5FYSih9p0wx0UTEoi0jPqFUDw81duz
+IyxjbGASSaUxoz16C2U/olPEAAXeBe4266jRQwTrn+sEIX5FD+RGoryXQ97pV5up
+I9wb2anVAMHOf20iYep3vYTjnFG/81ykODm8+I4D/Jj0EEe1E2b0D+7RQ9xKNYxC
+fDgY3isXBFzmS6O4h8N27P06yfzQX+zvjPrrHRB7ka2pmDT3M421p2wN0n9aCq1J
+8+M5UdpF98A38oosyE53KcItoCUFLgEP3KrWPwvpDUC2sNQAOFiHeitzc+v1iwmD
+RScdefCQ8qc2JJdCqMG6M0tlFy6Tw1o0eBYOhhDGa0rq/PQ4NewR2dj+yDXXBGJy
+ElR0VChqniMCyd2Q4SDPnhcVrWPTYSKL1MpsL0lXED8TGOdoAHHmQNU8MWhqmdBy
+zcWArNUY
+=yVqw
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/var/spack/gpg/README.md b/var/spack/gpg/README.md
new file mode 100644
index 0000000000..122d24f841
--- /dev/null
+++ b/var/spack/gpg/README.md
@@ -0,0 +1,5 @@
+# GPG Keys
+
+This directory contains keys that should be trusted by this installation of
+Spack. They are imported when running `spack gpg init`, but may also be
+imported manually with `spack gpg trust path/to/key`.
diff --git a/var/spack/repos/builtin.mock/packages/a/package.py b/var/spack/repos/builtin.mock/packages/a/package.py
index 0d75ee1256..468e839dec 100644
--- a/var/spack/repos/builtin.mock/packages/a/package.py
+++ b/var/spack/repos/builtin.mock/packages/a/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,48 @@
from spack import *
-class A(Package):
- """Simple package with no dependencies"""
+class A(AutotoolsPackage):
+ """Simple package with one optional dependency"""
homepage = "http://www.example.com"
url = "http://www.example.com/a-1.0.tar.gz"
version('1.0', '0123456789abcdef0123456789abcdef')
+ version('2.0', '2.0_a_hash')
+
+ variant(
+ 'foo',
+ values=('bar', 'baz', 'fee'),
+ default='bar',
+ description='',
+ multi=True
+ )
+
+ variant(
+ 'foobar',
+ values=('bar', 'baz', 'fee'),
+ default='bar',
+ description='',
+ multi=False
+ )
+
+ variant('bvv', default=True, description='The good old BV variant')
+
+ depends_on('b', when='foobar=bar')
+
+ def with_or_without_fee(self, activated):
+ if not activated:
+ return '--no-fee'
+ return '--fee-all-the-time'
+
+ def autoreconf(self, spec, prefix):
+ pass
+
+ def configure(self, spec, prefix):
+ pass
+
+ def build(self, spec, prefix):
+ pass
def install(self, spec, prefix):
pass
diff --git a/var/spack/repos/builtin.mock/packages/b/package.py b/var/spack/repos/builtin.mock/packages/b/package.py
index 5729f24e79..b352fa6f80 100644
--- a/var/spack/repos/builtin.mock/packages/b/package.py
+++ b/var/spack/repos/builtin.mock/packages/b/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/boost/package.py b/var/spack/repos/builtin.mock/packages/boost/package.py
new file mode 100644
index 0000000000..df50e18574
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/boost/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Boost(Package):
+ """Fake boost package."""
+
+ homepage = "http://www.boost.org"
+ url = "http://downloads.sourceforge.net/project/boost/boost/1.63.0/boost_1_63_0.tar.bz2"
+
+ version('1.63.0', '1c837ecd990bb022d07e7aab32b09847')
+
+ default_install_libs = set(['atomic',
+ 'chrono',
+ 'date_time',
+ 'filesystem',
+ 'graph',
+ 'iostreams',
+ 'locale',
+ 'log',
+ 'math',
+ 'program_options',
+ 'random',
+ 'regex',
+ 'serialization',
+ 'signals',
+ 'system',
+ 'test',
+ 'thread',
+ 'timer',
+ 'wave'])
+
+ # mpi/python are not installed by default because they pull in many
+ # dependencies and/or because there is a great deal of customization
+ # possible (and it would be difficult to choose sensible defaults)
+ default_noinstall_libs = set(['mpi', 'python'])
+
+ all_libs = default_install_libs | default_noinstall_libs
+
+ for lib in all_libs:
+ variant(lib, default=(lib not in default_noinstall_libs),
+ description="Compile with {0} library".format(lib))
+
+ variant('debug', default=False,
+ description='Switch to the debug version of Boost')
+ variant('shared', default=True,
+ description="Additionally build shared libraries")
+ variant('multithreaded', default=True,
+ description="Build multi-threaded versions of libraries")
+ variant('singlethreaded', default=False,
+ description="Build single-threaded versions of libraries")
+ variant('icu', default=False,
+ description="Build with Unicode and ICU suport")
+ variant('graph', default=False,
+ description="Build the Boost Graph library")
+ variant('taggedlayout', default=False,
+ description="Augment library names with build options")
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/build-error/package.py b/var/spack/repos/builtin.mock/packages/build-error/package.py
new file mode 100644
index 0000000000..e0c1a9ee83
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/build-error/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class BuildError(Package):
+ """This package has an install method that fails in a build script."""
+
+ homepage = "http://www.example.com/trivial_install"
+ url = "http://www.unit-test-should-replace-this-url/trivial_install-1.0.tar.gz"
+
+ version('1.0', 'foobarbaz')
+
+ def install(self, spec, prefix):
+ with open('configure', 'w') as f:
+ f.write("""#!/bin/sh\n
+echo 'checking build system type... x86_64-apple-darwin16.6.0'
+echo 'checking host system type... x86_64-apple-darwin16.6.0'
+echo 'checking for gcc... /Users/gamblin2/src/spack/lib/spack/env/clang/clang'
+echo 'checking whether the C compiler works... yes'
+echo 'checking for C compiler default output file name... a.out'
+echo 'checking for suffix of executables...'
+echo 'configure: error: in /path/to/some/file:'
+echo 'configure: error: cannot run C compiled programs.'
+exit 1
+""")
+ configure()
diff --git a/var/spack/repos/builtin.mock/packages/c/package.py b/var/spack/repos/builtin.mock/packages/c/package.py
index 80777a05bb..22132dd00d 100644
--- a/var/spack/repos/builtin.mock/packages/c/package.py
+++ b/var/spack/repos/builtin.mock/packages/c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/callpath/package.py b/var/spack/repos/builtin.mock/packages/callpath/package.py
index 56b969df98..19438e6277 100644
--- a/var/spack/repos/builtin.mock/packages/callpath/package.py
+++ b/var/spack/repos/builtin.mock/packages/callpath/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -40,3 +40,6 @@ class Callpath(Package):
configure("--prefix=%s" % prefix)
make()
make("install")
+
+ def setup_environment(self, senv, renv):
+ renv.set('FOOBAR', self.name)
diff --git a/var/spack/repos/builtin.mock/packages/canfail/package.py b/var/spack/repos/builtin.mock/packages/canfail/package.py
new file mode 100644
index 0000000000..b49bb3ce3e
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/canfail/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Canfail(Package):
+ """Package which fails install unless a special attribute is set"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ succeed = False
+
+ def install(self, spec, prefix):
+ if not self.succeed:
+ raise InstallError("'succeed' was false")
+ touch(join_path(prefix, 'an_installation_file'))
diff --git a/var/spack/repos/builtin.mock/packages/cmake-client/package.py b/var/spack/repos/builtin.mock/packages/cmake-client/package.py
index 51704e3f4b..2fde961376 100644
--- a/var/spack/repos/builtin.mock/packages/cmake-client/package.py
+++ b/var/spack/repos/builtin.mock/packages/cmake-client/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,9 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
import os
+from spack import *
+
def check(condition, msg):
"""Raise an install error if condition is False."""
@@ -39,6 +40,28 @@ class CmakeClient(CMakePackage):
version('1.0', '4cb3ff35b2472aae70f542116d616e63')
+ callback_counter = 0
+
+ flipped = False
+ run_this = True
+ check_this_is_None = None
+ did_something = False
+
+ @run_after('cmake')
+ @run_before('cmake', 'build', 'install')
+ def increment(self):
+ self.callback_counter += 1
+
+ @run_after('cmake')
+ @on_package_attributes(run_this=True, check_this_is_None=None)
+ def flip(self):
+ self.flipped = True
+
+ @run_after('cmake')
+ @on_package_attributes(does_not_exist=None)
+ def do_not_execute(self):
+ self.did_something = True
+
def setup_environment(self, spack_env, run_env):
spack_cc # Ensure spack module-scope variable is avaiabl
check(from_cmake == "from_cmake",
@@ -67,11 +90,15 @@ class CmakeClient(CMakePackage):
"setup_dependent_package.")
def cmake(self, spec, prefix):
- pass
+ assert self.callback_counter == 1
- build = cmake
+ def build(self, spec, prefix):
+ assert self.did_something is False
+ assert self.flipped is True
+ assert self.callback_counter == 3
def install(self, spec, prefix):
+ assert self.callback_counter == 4
# check that cmake is in the global scope.
global cmake
check(cmake is not None, "No cmake was in environment!")
diff --git a/var/spack/repos/builtin.mock/packages/cmake/package.py b/var/spack/repos/builtin.mock/packages/cmake/package.py
index c8b6464e69..15ad5606b4 100644
--- a/var/spack/repos/builtin.mock/packages/cmake/package.py
+++ b/var/spack/repos/builtin.mock/packages/cmake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/conflict-parent/package.py b/var/spack/repos/builtin.mock/packages/conflict-parent/package.py
new file mode 100644
index 0000000000..b8aaf55def
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/conflict-parent/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ConflictParent(Package):
+ homepage = 'https://github.com/tgamblin/callpath'
+ url = 'http://github.com/tgamblin/callpath-1.0.tar.gz'
+
+ version(0.8, 'foobarbaz')
+ version(0.9, 'foobarbaz')
+ version(1.0, 'foobarbaz')
+
+ depends_on('conflict')
+
+ conflicts('^conflict~foo', when='@0.9')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix)
+ make()
+ make("install")
+
+ def setup_environment(self, senv, renv):
+ renv.set('FOOBAR', self.name)
diff --git a/var/spack/repos/builtin.mock/packages/conflict/package.py b/var/spack/repos/builtin.mock/packages/conflict/package.py
new file mode 100644
index 0000000000..26f09d77ee
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/conflict/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Conflict(Package):
+ homepage = 'https://github.com/tgamblin/callpath'
+ url = 'http://github.com/tgamblin/callpath-1.0.tar.gz'
+
+ version(0.8, 'foobarbaz')
+ version(0.9, 'foobarbaz')
+ version(1.0, 'foobarbaz')
+
+ variant('foo', default=True, description='')
+
+ conflicts('%clang', when='+foo')
+
+ def install(self, spec, prefix):
+ configure("--prefix=%s" % prefix)
+ make()
+ make("install")
+
+ def setup_environment(self, senv, renv):
+ renv.set('FOOBAR', self.name)
diff --git a/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py b/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py
new file mode 100644
index 0000000000..620d398d35
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/conflicting-dependent/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ConflictingDependent(Package):
+ """By itself this package does not have conflicts, but it is used to
+ ensure that if a user tries to build with an installed instance
+ of dependency-install@2 that there is a failure."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('dependency-install@:1.0')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/dependency-install/package.py b/var/spack/repos/builtin.mock/packages/dependency-install/package.py
new file mode 100644
index 0000000000..eeaf2ada11
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/dependency-install/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class DependencyInstall(Package):
+ """Dependency which has a working install method"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', 'hash1.0')
+ version('2.0', 'hash2.0')
+
+ def install(self, spec, prefix):
+ touch(join_path(prefix, 'an_installation_file'))
diff --git a/var/spack/repos/builtin.mock/packages/dependent-install/package.py b/var/spack/repos/builtin.mock/packages/dependent-install/package.py
new file mode 100644
index 0000000000..9bcc73d056
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/dependent-install/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class DependentInstall(Package):
+ """Dependent which has a working install method"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('dependency-install')
+
+ def install(self, spec, prefix):
+ touch(join_path(prefix, 'an_installation_file'))
diff --git a/var/spack/repos/builtin.mock/packages/develop-test/package.py b/var/spack/repos/builtin.mock/packages/develop-test/package.py
index 0c693c60fb..c546f701fd 100644
--- a/var/spack/repos/builtin.mock/packages/develop-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/develop-test/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/direct-mpich/package.py b/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
index f38589ad4d..737570ffe8 100644
--- a/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/direct-mpich/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
index 0c9fc1164a..7f55beb542 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-bottom/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
index 40b65266d4..262008079c 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-left/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
index 7b6e4abe5f..cc0db5bff1 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond-right/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dt-diamond/package.py b/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
index 0b0f300b35..c3b0b9db57 100644
--- a/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
+++ b/var/spack/repos/builtin.mock/packages/dt-diamond/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild1/package.py b/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
index 8d3b28b539..bc00d4ed03 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild2/package.py b/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
index 9ea65735ff..1a3eb57835 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtbuild3/package.py b/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
index 261c69e01e..a03a04a523 100644
--- a/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtbuild3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtlink1/package.py b/var/spack/repos/builtin.mock/packages/dtlink1/package.py
index 0269e08b65..9c7e4bdebf 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtlink2/package.py b/var/spack/repos/builtin.mock/packages/dtlink2/package.py
index ad55c5ad48..1a78a4879c 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtlink3/package.py b/var/spack/repos/builtin.mock/packages/dtlink3/package.py
index 2b425103bd..8c53f3e2a0 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtlink4/package.py b/var/spack/repos/builtin.mock/packages/dtlink4/package.py
index d7af5ecbfc..4d7a57b2da 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink4/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtlink5/package.py b/var/spack/repos/builtin.mock/packages/dtlink5/package.py
index a9a22734cd..914e7655fb 100644
--- a/var/spack/repos/builtin.mock/packages/dtlink5/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtlink5/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtrun1/package.py b/var/spack/repos/builtin.mock/packages/dtrun1/package.py
index af9539ba68..738540ea52 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun1/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtrun2/package.py b/var/spack/repos/builtin.mock/packages/dtrun2/package.py
index a6cf0110b3..84129c1732 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun2/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtrun3/package.py b/var/spack/repos/builtin.mock/packages/dtrun3/package.py
index 426320c247..ee0c4272e4 100644
--- a/var/spack/repos/builtin.mock/packages/dtrun3/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtrun3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dttop/package.py b/var/spack/repos/builtin.mock/packages/dttop/package.py
index 99c86523e1..9bb83fff89 100644
--- a/var/spack/repos/builtin.mock/packages/dttop/package.py
+++ b/var/spack/repos/builtin.mock/packages/dttop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dtuse/package.py b/var/spack/repos/builtin.mock/packages/dtuse/package.py
index c77d700b98..3f8b0c9e98 100644
--- a/var/spack/repos/builtin.mock/packages/dtuse/package.py
+++ b/var/spack/repos/builtin.mock/packages/dtuse/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/dyninst/package.py b/var/spack/repos/builtin.mock/packages/dyninst/package.py
index daf1b82ec6..d00f604d61 100644
--- a/var/spack/repos/builtin.mock/packages/dyninst/package.py
+++ b/var/spack/repos/builtin.mock/packages/dyninst/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/e/package.py b/var/spack/repos/builtin.mock/packages/e/package.py
index c764007563..a00d459e9f 100644
--- a/var/spack/repos/builtin.mock/packages/e/package.py
+++ b/var/spack/repos/builtin.mock/packages/e/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/extendee/package.py b/var/spack/repos/builtin.mock/packages/extendee/package.py
new file mode 100644
index 0000000000..cae5f93bf3
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/extendee/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Extendee(Package):
+ """A package with extensions"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/extendee-1.0.tar.gz"
+
+ extendable = True
+
+ version('1.0', 'hash-extendee-1.0')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin.mock/packages/extension1/package.py b/var/spack/repos/builtin.mock/packages/extension1/package.py
new file mode 100644
index 0000000000..f4999e9963
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/extension1/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Extension1(Package):
+ """A package which extends another package"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/extension1-1.0.tar.gz"
+
+ extends('extendee')
+
+ version('1.0', 'hash-extension1-1.0')
+ version('2.0', 'hash-extension1-2.0')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with open(os.path.join(prefix.bin, 'extension1'), 'w+') as fout:
+ fout.write(str(spec.version))
diff --git a/var/spack/repos/builtin.mock/packages/extension2/package.py b/var/spack/repos/builtin.mock/packages/extension2/package.py
new file mode 100644
index 0000000000..01f3f94636
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/extension2/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Extension2(Package):
+ """A package which extends another package. It also depends on another
+ package which extends the same package."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/extension2-1.0.tar.gz"
+
+ extends('extendee')
+ depends_on('extension1', type=('build', 'run'))
+
+ version('1.0', 'hash-extension2-1.0')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with open(os.path.join(prefix.bin, 'extension2'), 'w+') as fout:
+ fout.write(str(spec.version))
diff --git a/var/spack/repos/builtin.mock/packages/externalmodule/package.py b/var/spack/repos/builtin.mock/packages/externalmodule/package.py
index f7c9b056a4..5e9f8fda44 100644
--- a/var/spack/repos/builtin.mock/packages/externalmodule/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalmodule/package.py
@@ -1,14 +1,14 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/externalprereq/package.py b/var/spack/repos/builtin.mock/packages/externalprereq/package.py
index 226742f2cb..1890ab72d8 100644
--- a/var/spack/repos/builtin.mock/packages/externalprereq/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalprereq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/externaltest/package.py b/var/spack/repos/builtin.mock/packages/externaltest/package.py
index 252c42556e..00cc553cbe 100644
--- a/var/spack/repos/builtin.mock/packages/externaltest/package.py
+++ b/var/spack/repos/builtin.mock/packages/externaltest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/externaltool/package.py b/var/spack/repos/builtin.mock/packages/externaltool/package.py
index d2daddd350..c47c31ac66 100644
--- a/var/spack/repos/builtin.mock/packages/externaltool/package.py
+++ b/var/spack/repos/builtin.mock/packages/externaltool/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/externalvirtual/package.py b/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
index 6310a17bc9..d0b814d83b 100644
--- a/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
+++ b/var/spack/repos/builtin.mock/packages/externalvirtual/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/failing-build/package.py b/var/spack/repos/builtin.mock/packages/failing-build/package.py
index a36553992e..e61451253a 100644
--- a/var/spack/repos/builtin.mock/packages/failing-build/package.py
+++ b/var/spack/repos/builtin.mock/packages/failing-build/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/fake/package.py b/var/spack/repos/builtin.mock/packages/fake/package.py
index b83eec7470..6b264a4d55 100644
--- a/var/spack/repos/builtin.mock/packages/fake/package.py
+++ b/var/spack/repos/builtin.mock/packages/fake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/flake8/hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch b/var/spack/repos/builtin.mock/packages/flake8/hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch
new file mode 100644
index 0000000000..b8c9065e4b
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/flake8/hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch
@@ -0,0 +1 @@
+Fake patch
diff --git a/var/spack/repos/builtin.mock/packages/flake8/package.py b/var/spack/repos/builtin.mock/packages/flake8/package.py
new file mode 100644
index 0000000000..4f2e9bd475
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/flake8/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Flake8(Package):
+ """Package containing as many PEP 8 violations as possible.
+ All of these violations are exceptions that we allow in
+ package.py files."""
+
+ # Used to tell whether or not the package has been modified
+ state = 'unmodified'
+
+ # Make sure pre-existing noqa is not interfered with
+ blatant_violation = 'line-that-has-absolutely-no-execuse-for-being-over-79-characters' # noqa
+ blatant_violation = 'line-that-has-absolutely-no-execuse-for-being-over-79-characters' # noqa: E501
+
+ # Keywords exempt from line-length checks
+ homepage = '#####################################################################'
+ url = '#####################################################################'
+ git = '#####################################################################'
+ svn = '#####################################################################'
+ hg = '#####################################################################'
+ list_url = '#####################################################################'
+
+ # URL strings exempt from line-length checks
+ # http://########################################################################
+ # https://#######################################################################
+ # ftp://#########################################################################
+ # file://########################################################################
+
+ # Directives exempt from line-length checks
+ version('2.0', '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef')
+ version('1.0', '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef')
+
+ variant('super-awesome-feature', default=True, description='Enable super awesome feature')
+ variant('somewhat-awesome-feature', default=False, description='Enable somewhat awesome feature')
+
+ provides('lapack', when='@2.0+super-awesome-feature+somewhat-awesome-feature')
+
+ extends('python', ignore='bin/(why|does|every|package|that|depends|on|numpy|need|to|copy|f2py3?)')
+
+ depends_on('boost+atomic+chrono+date_time~debug+filesystem~graph~icu+iostreams+locale+log+math~mpi+multithreaded+program_options~python+random+regex+serialization+shared+signals~singlethreaded+system~taggedlayout+test+thread+timer+wave')
+
+ conflicts('+super-awesome-feature', when='%intel@16:17+somewhat-awesome-feature')
+
+ resource(name='Deez-Nuts', destination='White-House', placement='President', when='@2020', url='www.elect-deez-nuts.com')
+
+ patch('hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch', when='%gcc@3.2.2:3.2.3')
+
+ def install(self, spec, prefix):
+ # Make sure lines with '# noqa' work as expected. Don't just
+ # remove them entirely. This will mess up the indentation of
+ # the following lines.
+ if 'really-long-if-statement' != 'that-goes-over-the-line-length-limit-and-requires-noqa': # noqa
+ pass
+
+ # '@when' decorated functions are exempt from redefinition errors
+ @when('@2.0')
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/git-test/package.py b/var/spack/repos/builtin.mock/packages/git-test/package.py
index 730e71ac6b..9378f72195 100644
--- a/var/spack/repos/builtin.mock/packages/git-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/git-test/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/hg-test/package.py b/var/spack/repos/builtin.mock/packages/hg-test/package.py
index 70a9b7f2c7..17d8379d1c 100644
--- a/var/spack/repos/builtin.mock/packages/hg-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/hg-test/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/hypre/package.py b/var/spack/repos/builtin.mock/packages/hypre/package.py
index b9e31b09dc..c815aca191 100644
--- a/var/spack/repos/builtin.mock/packages/hypre/package.py
+++ b/var/spack/repos/builtin.mock/packages/hypre/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py b/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
index 77b8022b1c..3b9b9caec1 100644
--- a/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/indirect-mpich/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/libdwarf/package.py b/var/spack/repos/builtin.mock/packages/libdwarf/package.py
index 0fcbe4a62e..726cb756a6 100644
--- a/var/spack/repos/builtin.mock/packages/libdwarf/package.py
+++ b/var/spack/repos/builtin.mock/packages/libdwarf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -41,4 +41,4 @@ class Libdwarf(Package):
depends_on("libelf")
def install(self, spec, prefix):
- pass
+ touch(prefix.libdwarf)
diff --git a/var/spack/repos/builtin.mock/packages/libelf/package.py b/var/spack/repos/builtin.mock/packages/libelf/package.py
index 90d00ad339..9cf8d152df 100644
--- a/var/spack/repos/builtin.mock/packages/libelf/package.py
+++ b/var/spack/repos/builtin.mock/packages/libelf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,11 +34,4 @@ class Libelf(Package):
version('0.8.10', '9db4d36c283d9790d8fa7df1f4d7b4d9')
def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--enable-shared",
- "--disable-dependency-tracking",
- "--disable-debug")
- make()
-
- # The mkdir commands in libelf's intsall can fail in parallel
- make("install", parallel=False)
+ touch(prefix.libelf)
diff --git a/var/spack/repos/builtin.mock/packages/mixedversions/package.py b/var/spack/repos/builtin.mock/packages/mixedversions/package.py
new file mode 100644
index 0000000000..6e01fbc13b
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/mixedversions/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mixedversions(Package):
+ url = "http://www.fake-mixedversions.org/downloads/mixedversions-1.0.tar.gz"
+
+ version('2.0.1', 'hashc')
+ version('2.0', 'hashb')
+ version('1.0.1', 'hasha')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/mpich/package.py b/var/spack/repos/builtin.mock/packages/mpich/package.py
index 936127398c..f9dbf572c5 100644
--- a/var/spack/repos/builtin.mock/packages/mpich/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpich/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,8 @@ class Mpich(Package):
list_url = "http://www.mpich.org/static/downloads/"
list_depth = 2
+ tags = ['tag1', 'tag2']
+
variant('debug', default=False,
description="Compile MPICH with debug flags.")
diff --git a/var/spack/repos/builtin.mock/packages/mpich2/package.py b/var/spack/repos/builtin.mock/packages/mpich2/package.py
index c92b4ba43a..92e72daa4a 100644
--- a/var/spack/repos/builtin.mock/packages/mpich2/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpich2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,8 @@ class Mpich2(Package):
list_url = "http://www.mpich.org/static/downloads/"
list_depth = 2
+ tags = ['tag1', 'tag3']
+
version('1.5', '9c5d5d4fe1e17dd12153f40bc5b6dbc0')
version('1.4', 'foobarbaz')
version('1.3', 'foobarbaz')
diff --git a/var/spack/repos/builtin.mock/packages/mpileaks/package.py b/var/spack/repos/builtin.mock/packages/mpileaks/package.py
index 10fbf3845e..6b5afafdb2 100644
--- a/var/spack/repos/builtin.mock/packages/mpileaks/package.py
+++ b/var/spack/repos/builtin.mock/packages/mpileaks/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,5 +42,11 @@ class Mpileaks(Package):
depends_on("mpi")
depends_on("callpath")
+ # Will be used to try raising an exception
+ libs = None
+
def install(self, spec, prefix):
pass
+
+ def setup_environment(self, senv, renv):
+ renv.set('FOOBAR', self.name)
diff --git a/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py b/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
index 5f85dec9b5..9240671ba2 100644
--- a/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
+++ b/var/spack/repos/builtin.mock/packages/multi-provider-mpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-base/package.py b/var/spack/repos/builtin.mock/packages/multimethod-base/package.py
new file mode 100644
index 0000000000..454f658adf
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/multimethod-base/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class MultimethodBase(Package):
+ """This is a base class for the Multimethod test case.
+
+ It tests whether mutlimethod properly invokes methods in a base
+ class when subclass multi-methods do not match.
+
+ """
+
+ homepage = 'http://www.example.com/'
+ url = 'http://www.example.com/example-1.0.tar.gz'
+
+ def base_method(self):
+ return "base_method"
diff --git a/var/spack/repos/builtin.mock/packages/multimethod/package.py b/var/spack/repos/builtin.mock/packages/multimethod/package.py
index fa3f815135..25a7ec7fca 100644
--- a/var/spack/repos/builtin.mock/packages/multimethod/package.py
+++ b/var/spack/repos/builtin.mock/packages/multimethod/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,11 +22,15 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+from six import string_types
+
from spack import *
import spack.architecture
+from spack.pkg.builtin.mock.multimethod_base import MultimethodBase
+
-class Multimethod(Package):
+class Multimethod(MultimethodBase):
"""This package is designed for use with Spack's multimethod test.
It has a bunch of test cases for the @when decorator that the
test uses.
@@ -100,14 +104,14 @@ class Multimethod(Package):
# Make sure we can switch methods on different target
#
platform = spack.architecture.platform()
- targets = platform.targets.values()
+ targets = list(platform.targets.values())
if len(targets) > 1:
targets = targets[:-1]
for target in targets:
@when('target=' + target.name)
def different_by_target(self):
- if isinstance(self.spec.architecture.target, basestring):
+ if isinstance(self.spec.architecture.target, string_types):
return self.spec.architecture.target
else:
return self.spec.architecture.target.name
@@ -132,3 +136,11 @@ class Multimethod(Package):
@when('^mpi@2:')
def different_by_virtual_dep(self):
return 2
+
+ #
+ # Make sure methods with a default implementation in a superclass
+ # will invoke that method when none in the subclass match.
+ #
+ @when("@2:")
+ def base_method(self):
+ return "subclass_method"
diff --git a/var/spack/repos/builtin.mock/packages/multivalue_variant/package.py b/var/spack/repos/builtin.mock/packages/multivalue_variant/package.py
new file mode 100644
index 0000000000..0d27e31e44
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/multivalue_variant/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class MultivalueVariant(Package):
+ homepage = "http://www.llnl.gov"
+ url = "http://www.llnl.gov/mpileaks-1.0.tar.gz"
+
+ version(1.0, 'foobarbaz')
+ version(2.1, 'foobarbaz')
+ version(2.2, 'foobarbaz')
+ version(2.3, 'foobarbaz')
+
+ variant('debug', default=False, description='Debug variant')
+ variant(
+ 'foo',
+ description='Multi-valued variant',
+ values=('bar', 'baz', 'barbaz'),
+ multi=True
+ )
+
+ variant(
+ 'fee',
+ description='Single-valued variant',
+ default='bar',
+ values=('bar', 'baz', 'barbaz'),
+ multi=False
+ )
+
+ depends_on('mpi')
+ depends_on('callpath')
+ depends_on('a')
+ depends_on('a@1.0', when='fee=barbaz')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/netlib-blas/package.py b/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
index 0a5b1d0e6a..48c99ba9d6 100644
--- a/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
+++ b/var/spack/repos/builtin.mock/packages/netlib-blas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py b/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
index 755d3001a4..9108e70cf0 100644
--- a/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
+++ b/var/spack/repos/builtin.mock/packages/netlib-lapack/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py b/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
index 0f14fbaa61..c73e65ac2b 100644
--- a/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
+++ b/var/spack/repos/builtin.mock/packages/openblas-with-lapack/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/openblas/package.py b/var/spack/repos/builtin.mock/packages/openblas/package.py
index f6cdeeea49..8d41c8958a 100644
--- a/var/spack/repos/builtin.mock/packages/openblas/package.py
+++ b/var/spack/repos/builtin.mock/packages/openblas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
index 337f54e24e..51bbb9761f 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test-2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
index 2904b3782d..48bf3820af 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test-3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py b/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
index 2c07e61769..48ffbf6765 100644
--- a/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/optional-dep-test/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/othervirtual/package.py b/var/spack/repos/builtin.mock/packages/othervirtual/package.py
index 83bc07df98..c7b0e72a01 100644
--- a/var/spack/repos/builtin.mock/packages/othervirtual/package.py
+++ b/var/spack/repos/builtin.mock/packages/othervirtual/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/override-context-templates/package.py b/var/spack/repos/builtin.mock/packages/override-context-templates/package.py
new file mode 100644
index 0000000000..9f59ad0e7e
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/override-context-templates/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class OverrideContextTemplates(Package):
+ """This package updates the context for TCL modulefiles.
+
+ And additional lines that shouldn't be in the short description.
+ """
+ homepage = "http://www.fake-spack-example.org"
+ url = "http://www.fake-spack-example.org/downloads/fake-1.0.tar.gz"
+
+ version('1.0', 'foobarbaz')
+
+ tcl_template = 'extension.tcl'
+ tcl_context = {'sentence': "sentence from package"}
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/override-module-templates/package.py b/var/spack/repos/builtin.mock/packages/override-module-templates/package.py
new file mode 100644
index 0000000000..6d877c7a76
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/override-module-templates/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class OverrideModuleTemplates(Package):
+ homepage = "http://www.fake-spack-example.org"
+ url = "http://www.fake-spack-example.org/downloads/fake-1.0.tar.gz"
+
+ version('1.0', 'foobarbaz')
+
+ dotkit_template = 'override.txt'
+ tcl_template = 'override.txt'
+ lmod_template = 'override.txt'
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/patch-a-dependency/foo.patch b/var/spack/repos/builtin.mock/packages/patch-a-dependency/foo.patch
new file mode 100644
index 0000000000..257cc5642c
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-a-dependency/foo.patch
@@ -0,0 +1 @@
+foo
diff --git a/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py b/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py
new file mode 100644
index 0000000000..fea0b27195
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-a-dependency/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PatchADependency(Package):
+ """Package that requries a patched version of a dependency."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/patch-a-dependency-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('libelf', patches=patch('foo.patch'))
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/bar.patch b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/bar.patch
new file mode 100644
index 0000000000..5716ca5987
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/bar.patch
@@ -0,0 +1 @@
+bar
diff --git a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/baz.patch b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/baz.patch
new file mode 100644
index 0000000000..76018072e0
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/baz.patch
@@ -0,0 +1 @@
+baz
diff --git a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/foo.patch b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/foo.patch
new file mode 100644
index 0000000000..257cc5642c
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/foo.patch
@@ -0,0 +1 @@
+foo
diff --git a/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py
new file mode 100644
index 0000000000..73837449c6
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch-several-dependencies/package.py
@@ -0,0 +1,60 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PatchSeveralDependencies(Package):
+ """Package that requries multiple patches on a dependency."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/patch-a-dependency-1.0.tar.gz"
+
+ version('2.0', '0123456789abcdef0123456789abcdef')
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ # demonstrate all the different ways to patch things
+
+ # single patch file in repo
+ depends_on('libelf', patches='foo.patch')
+
+ # using a list of patches in one depends_on
+ depends_on('libdwarf', patches=[
+ patch('bar.patch'), # nested patch directive
+ patch('baz.patch', when='@20111030') # and with a conditional
+ ], when='@1.0') # with a depends_on conditional
+
+ # URL patches
+ depends_on('fake', patches=[
+ # uncompressed URL patch
+ patch('http://example.com/urlpatch.patch',
+ sha256='abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234'),
+ # compressed URL patch requires separate archive sha
+ patch('http://example.com/urlpatch2.patch.gz',
+ archive_sha256='abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd',
+ sha256='1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd1234abcd')
+ ])
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/patch/bar.patch b/var/spack/repos/builtin.mock/packages/patch/bar.patch
new file mode 100644
index 0000000000..5716ca5987
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch/bar.patch
@@ -0,0 +1 @@
+bar
diff --git a/var/spack/repos/builtin.mock/packages/patch/baz.patch b/var/spack/repos/builtin.mock/packages/patch/baz.patch
new file mode 100644
index 0000000000..76018072e0
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch/baz.patch
@@ -0,0 +1 @@
+baz
diff --git a/var/spack/repos/builtin.mock/packages/patch/foo.patch b/var/spack/repos/builtin.mock/packages/patch/foo.patch
new file mode 100644
index 0000000000..257cc5642c
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch/foo.patch
@@ -0,0 +1 @@
+foo
diff --git a/var/spack/repos/builtin.mock/packages/patch/package.py b/var/spack/repos/builtin.mock/packages/patch/package.py
new file mode 100644
index 0000000000..79b0943b24
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patch/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Patch(Package):
+ """Package that requries a patched version of a dependency."""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/patch-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ patch('foo.patch')
+ patch('bar.patch')
+ patch('baz.patch')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/patchelf/package.py b/var/spack/repos/builtin.mock/packages/patchelf/package.py
new file mode 100644
index 0000000000..d499199d3e
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/patchelf/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Patchelf(AutotoolsPackage):
+ """
+ PatchELF is a small utility to modify the
+ dynamic linker and RPATH of ELF executables.
+ """
+
+ homepage = "https://nixos.org/patchelf.html"
+ url = "http://nixos.org/releases/patchelf/patchelf-0.8/patchelf-0.8.tar.gz"
+
+ list_url = "http://nixos.org/releases/patchelf/"
+ list_depth = 1
+
+ version('0.9', '3c265508526760f233620f35d79c79fc')
+ version('0.8', '407b229e6a681ffb0e2cdd5915cb2d01')
diff --git a/var/spack/repos/builtin.mock/packages/printing-package/package.py b/var/spack/repos/builtin.mock/packages/printing-package/package.py
new file mode 100644
index 0000000000..815972f9eb
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/printing-package/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PrintingPackage(Package):
+ """This package prints some output from its install method.
+
+ We use this to test whether that output is properly logged.
+ """
+ homepage = "http://www.example.com/printing_package"
+ url = "http://www.unit-test-should-replace-this-url/trivial_install-1.0.tar.gz"
+
+ version('1.0', 'foobarbaz')
+
+ def install(self, spec, prefix):
+ print("BEFORE INSTALL")
+
+ configure('--prefix=%s' % prefix)
+ make()
+ make('install')
+
+ print("AFTER INSTALL")
diff --git a/var/spack/repos/builtin.mock/packages/python/package.py b/var/spack/repos/builtin.mock/packages/python/package.py
index a5290161ad..f402be3b56 100644
--- a/var/spack/repos/builtin.mock/packages/python/package.py
+++ b/var/spack/repos/builtin.mock/packages/python/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py
new file mode 100644
index 0000000000..60530e8202
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/singlevalue-variant-dependent/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class SinglevalueVariantDependent(Package):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/archive-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ depends_on('multivalue_variant fee=baz')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/svn-test/package.py b/var/spack/repos/builtin.mock/packages/svn-test/package.py
index 01d0929c28..1c4424dab5 100644
--- a/var/spack/repos/builtin.mock/packages/svn-test/package.py
+++ b/var/spack/repos/builtin.mock/packages/svn-test/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py b/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
index 2129d9788b..eadba7064c 100644
--- a/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
+++ b/var/spack/repos/builtin.mock/packages/trivial-install-test-package/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin.mock/packages/url-list-test/package.py b/var/spack/repos/builtin.mock/packages/url-list-test/package.py
new file mode 100644
index 0000000000..e77d203707
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/url-list-test/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+import os
+import spack
+
+
+class UrlListTest(Package):
+ """Mock package with url_list."""
+ homepage = "http://www.url-list-example.com"
+
+ web_data_path = os.path.join(spack.test_path, 'data', 'web')
+ url = 'file://' + web_data_path + '/foo-0.0.0.tar.gz'
+ list_url = 'file://' + web_data_path + '/index.html'
+ list_depth = 3
+
+ version('0.0.0')
+ version('1.0.0')
+ version('3.0')
+ version('4.5')
+ version('2.0.0b2')
+ version('3.0a1')
+ version('4.5-rc5')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/url-test/package.py b/var/spack/repos/builtin.mock/packages/url-test/package.py
new file mode 100644
index 0000000000..113dc0714b
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/url-test/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class UrlTest(Package):
+ """Mock package that fetches from a URL."""
+ homepage = "http://www.url-fetch-example.com"
+
+ version('test', url='to-be-filled-in-by-test')
+
+ def install(self, spec, prefix):
+ pass
diff --git a/var/spack/repos/builtin.mock/packages/zmpi/package.py b/var/spack/repos/builtin.mock/packages/zmpi/package.py
index b6a5b33011..99a750afc1 100644
--- a/var/spack/repos/builtin.mock/packages/zmpi/package.py
+++ b/var/spack/repos/builtin.mock/packages/zmpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/abinit/package.py b/var/spack/repos/builtin/packages/abinit/package.py
index 76fa044982..59040cd0d8 100644
--- a/var/spack/repos/builtin/packages/abinit/package.py
+++ b/var/spack/repos/builtin/packages/abinit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,18 @@
#
# Author: Matteo Giantomassi <matteo.giantomassiNOSPAM AT uclouvain.be>
# Date: October 11, 2016
-
from spack import *
-class Abinit(Package):
+class Abinit(AutotoolsPackage):
"""ABINIT is a package whose main program allows one to find the total
energy, charge density and electronic structure of systems made of
electrons and nuclei (molecules and periodic solids) within
Density Functional Theory (DFT), using pseudopotentials and a planewave
- or wavelet basis. ABINIT also includes options to optimize the geometry
- according to the DFT forces and stresses, or to perform molecular dynamics
+ or wavelet basis.
+
+ ABINIT also includes options to optimize the geometry according to the
+ DFT forces and stresses, or to perform molecular dynamics
simulations using these forces, or to generate dynamical matrices,
Born effective charges, and dielectric tensors, based on Density-Functional
Perturbation Theory, and many more properties. Excited states can be
@@ -45,11 +46,12 @@ class Abinit(Package):
programs are provided.
"""
- homepage = "http://www.abinit.org"
- url = "http://ftp.abinit.org/abinit-8.0.8b.tar.gz"
+ homepage = 'http://www.abinit.org'
+ url = 'http://ftp.abinit.org/abinit-8.0.8b.tar.gz'
+ version('8.2.2', '5f25250e06fdc0815c224ffd29858860')
# Versions before 8.0.8b are not supported.
- version("8.0.8b", "abc9e303bfa7f9f43f95598f87d84d5d")
+ version('8.0.8b', 'abc9e303bfa7f9f43f95598f87d84d5d')
variant('mpi', default=True,
description='Builds with MPI support. Requires MPI2+')
@@ -58,118 +60,122 @@ class Abinit(Package):
variant('scalapack', default=False,
description='Enables scalapack support. Requires MPI')
# variant('elpa', default=False,
- # description='Uses elpa instead of scalapack. Requires MPI')
+ # description='Uses elpa instead of scalapack. Requires MPI')
# TODO: To be tested.
# It was working before the last `git pull` but now all tests crash.
# For the time being, the default is netcdf3 and the internal fallbacks
+ # FIXME: rename (trio?) and use multivalued variants to cover
+ # --with-trio-flavor={netcdf, none}
+ # Note that Abinit@8: does not support etsf_io anymore because it is not
+ # compatible with HDF5 and MPI-IO
variant('hdf5', default=False,
description='Enables HDF5+Netcdf4 with MPI. WARNING: experimental')
# Add dependencies
# currently one cannot forward options to virtual packages, see #1712.
- # depends_on("blas", when="~openmp")
- # depends_on("blas+openmp", when="+openmp")
+ # depends_on('blas', when='~openmp')
+ # depends_on('blas+openmp', when='+openmp')
depends_on('blas')
- depends_on("lapack")
+ depends_on('lapack')
# Require MPI2+
- depends_on("mpi@2:", when="+mpi")
+ depends_on('mpi@2:', when='+mpi')
- depends_on("scalapack", when="+scalapack+mpi")
- # depends_on("elpa", when="+elpa+mpi~openmp")
- # depends_on("elpa+openmp", when="+elpa+mpi+openmp")
+ depends_on('scalapack', when='+scalapack+mpi')
- depends_on("fftw+float", when="~openmp")
- depends_on("fftw+float+openmp", when="+openmp")
+ # depends_on('elpa~openmp', when='+elpa+mpi~openmp')
+ # depends_on('elpa+openmp', when='+elpa+mpi+openmp')
- depends_on("netcdf-fortran", when="+hdf5")
- depends_on("hdf5+mpi", when='+mpi+hdf5') # required for NetCDF-4 support
+ depends_on('fftw+float', when='~openmp')
+ depends_on('fftw+float+openmp', when='+openmp')
- # pin libxc version
- depends_on("libxc@2.2.1")
+ depends_on('netcdf-fortran', when='+hdf5')
+ depends_on('hdf5+mpi', when='+mpi+hdf5') # required for NetCDF-4 support
- def validate(self, spec):
- """
- Checks if incompatible variants have been activated at the same time
+ # pin libxc version
+ depends_on("libxc@2.2.2")
- :param spec: spec of the package
- :raises RuntimeError: in case of inconsistencies
- """
- error = 'you cannot ask for \'+{variant}\' when \'+mpi\' is not active'
+ # Cannot ask for +scalapack if it does not depend on MPI
+ conflicts('+scalapack', when='~mpi')
- if '+scalapack' in spec and '~mpi' in spec:
- raise RuntimeError(error.format(variant='scalapack'))
+ # Elpa is a substitute for scalapack and needs mpi
+ # conflicts('+elpa', when='~mpi')
+ # conflicts('+elpa', when='+scalapack')
- if '+elpa' in spec and ('~mpi' in spec or '~scalapack' in spec):
- raise RuntimeError(error.format(variant='elpa'))
+ def configure_args(self):
- def install(self, spec, prefix):
- self.validate(spec)
+ spec = self.spec
- options = ['--prefix=%s' % prefix]
+ options = []
oapp = options.append
if '+mpi' in spec:
# MPI version:
# let the configure script auto-detect MPI support from mpi_prefix
- oapp("--with-mpi-prefix=%s" % spec["mpi"].prefix)
- oapp("--enable-mpi=yes")
- oapp("--enable-mpi-io=yes")
+ oapp('--with-mpi-prefix={0}'.format(spec['mpi'].prefix))
+ oapp('--enable-mpi=yes')
+ oapp('--enable-mpi-io=yes')
# Activate OpenMP in Abinit Fortran code.
if '+openmp' in spec:
oapp('--enable-openmp=yes')
- # BLAS/LAPACK
+ # BLAS/LAPACK/SCALAPACK-ELPA
+ linalg = spec['lapack'].libs + spec['blas'].libs
if '+scalapack' in spec:
- oapp("--with-linalg-flavor=custom+scalapack")
- linalg = (spec['scalapack'].scalapack_libs +
- spec['lapack'].lapack_libs + spec['blas'].blas_libs)
+ oapp('--with-linalg-flavor=custom+scalapack')
+ linalg = spec['scalapack'].libs + linalg
# elif '+elpa' in spec:
else:
- oapp("--with-linalg-flavor=custom")
- linalg = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ oapp('--with-linalg-flavor=custom')
- oapp("--with-linalg-libs=%s" % linalg.ld_flags)
+ oapp('--with-linalg-libs={0}'.format(linalg.ld_flags))
# FFTW3: use sequential or threaded version if +openmp
- fftflavor, fftlibs = "fftw3", "-lfftw3 -lfftw3f"
+ fftflavor, fftlibs = 'fftw3', '-lfftw3 -lfftw3f'
if '+openmp' in spec:
- fftflavor = "fftw3-threads"
- fftlibs = "-lfftw3_omp -lfftw3 -lfftw3f"
+ fftflavor = 'fftw3-threads'
+ fftlibs = '-lfftw3_omp -lfftw3 -lfftw3f'
options.extend([
- "--with-fft-flavor=%s" % fftflavor,
- "--with-fft-incs=-I%s" % spec["fftw"].prefix.include,
- "--with-fft-libs=-L%s %s" % (spec["fftw"].prefix.lib, fftlibs),
+ '--with-fft-flavor=%s' % fftflavor,
+ '--with-fft-incs=-I%s' % spec['fftw'].prefix.include,
+ '--with-fft-libs=-L%s %s' % (spec['fftw'].prefix.lib, fftlibs),
])
- oapp("--with-dft-flavor=atompaw+libxc")
+ oapp('--with-dft-flavor=atompaw+libxc')
# LibXC library
+ libxc = spec['libxc:fortran']
options.extend([
- "with_libxc_incs=-I%s" % spec["libxc"].prefix.include,
- "with_libxc_libs=-L%s -lxcf90 -lxc" % spec["libxc"].prefix.lib,
+ 'with_libxc_incs={0}'.format(libxc.headers.cpp_flags),
+ 'with_libxc_libs={0}'.format(libxc.libs.ld_flags + ' -lm')
])
# Netcdf4/HDF5
- if "+hdf5" in spec:
- oapp("--with-trio-flavor=netcdf")
- hdf_libs = "-L%s -lhdf5_hl -lhdf5" % spec["hdf5"].prefix.lib
+ if '+hdf5' in spec:
+ oapp('--with-trio-flavor=netcdf')
+ # Since version 8, Abinit started to use netcdf4 + hdf5 and we have
+ # to link with the high level HDF5 library
+ hdf5 = spec['hdf5:hl']
+ netcdff = spec['netcdf-fortran:shared']
options.extend([
- "--with-netcdf-incs=-I%s" % (
- spec["netcdf-fortran"].prefix.include),
- "--with-netcdf-libs=-L%s -lnetcdff -lnetcdf %s" % (
- spec["netcdf-fortran"].prefix.lib, hdf_libs),
+ '--with-netcdf-incs={0}'.format(netcdff.headers.cpp_flags),
+ '--with-netcdf-libs={0}'.format(
+ netcdff.libs.ld_flags + ' ' + hdf5.libs.ld_flags
+ ),
])
else:
- # Use internal fallbacks (netcdf3)
- oapp("--with-trio-flavor=netcdf-fallback")
+ # In Spack we do our best to avoid building any internally provided
+ # dependencies, such as netcdf3 in this case.
+ oapp('--with-trio-flavor=none')
- configure(*options)
- make()
+ return options
- # make("check")
- # make("tests_in")
- make("install")
+ def check(self):
+ """This method is called after the build phase if tests have been
+ explicitly activated by user.
+ """
+ make('check')
+ make('tests_in')
diff --git a/var/spack/repos/builtin/packages/abyss/package.py b/var/spack/repos/builtin/packages/abyss/package.py
new file mode 100644
index 0000000000..4a8aa0fb03
--- /dev/null
+++ b/var/spack/repos/builtin/packages/abyss/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Abyss(AutotoolsPackage):
+ """ABySS is a de novo, parallel, paired-end sequence assembler
+ that is designed for short reads. The single-processor version
+ is useful for assembling genomes up to 100 Mbases in size."""
+
+ homepage = "http://www.bcgsc.ca/platform/bioinfo/software/abyss"
+ url = "https://github.com/bcgsc/abyss/archive/2.0.2.tar.gz"
+
+ version('2.0.2', 'bb3f8cebf121312bf81789d963b4ecc5')
+ version('1.5.2', '10d6d72d1a915e618d41a5cbbcf2364c')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+
+ depends_on('mpi')
+ depends_on('boost@:1.50.0,1.53.0:', when='@2.0.2:')
+ depends_on('boost@:1.50.0,1.53.0:1.59.0', when='@:1.5.2')
+ depends_on('sparsehash')
+ depends_on('sqlite')
+
+ conflicts('^intel-mpi')
+ conflicts('^intel-parallel-studio+mpi')
+ conflicts('^mvapich2')
+ conflicts('^spectrum-mpi')
+
+ def configure_args(self):
+ args = ['--with-boost=%s' % self.spec['boost'].prefix,
+ '--with-sqlite=%s' % self.spec['sqlite'].prefix,
+ '--with-mpi=%s' % self.spec['mpi'].prefix]
+ if self.spec['mpi'].name == 'mpich':
+ args.append('--enable-mpich')
+ return args
diff --git a/var/spack/repos/builtin/packages/ack/package.py b/var/spack/repos/builtin/packages/ack/package.py
index 70249aebac..ec1b6d2a22 100644
--- a/var/spack/repos/builtin/packages/ack/package.py
+++ b/var/spack/repos/builtin/packages/ack/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,6 +35,8 @@ class Ack(Package):
homepage = "http://beyondgrep.com/"
url = "http://beyondgrep.com/ack-2.14-single-file"
+ version('2.18', 'e8ebfd7a7ec8476bffd4686bf7b14fd7', expand=False)
+ version('2.16', '7085b5a5c76fda43ff049410870c8535', expand=False)
version('2.14', 'e74150a1609d28a70b450ef9cc2ed56b', expand=False)
depends_on('perl')
@@ -44,7 +46,7 @@ class Ack(Package):
ack = 'ack-{0}-single-file'.format(self.version)
# rewrite the script's #! line to call the perl dependency
- shbang = '#!' + join_path(spec['perl'].prefix.bin, 'perl')
+ shbang = '#!' + spec['perl'].command.path
filter_file(r'^#!/usr/bin/env perl', shbang, ack)
install(ack, join_path(prefix.bin, "ack"))
diff --git a/var/spack/repos/builtin/packages/activeharmony/package.py b/var/spack/repos/builtin/packages/activeharmony/package.py
index 6a4e67a1ca..d03d3f99eb 100644
--- a/var/spack/repos/builtin/packages/activeharmony/package.py
+++ b/var/spack/repos/builtin/packages/activeharmony/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/adept-utils/package.py b/var/spack/repos/builtin/packages/adept-utils/package.py
index 1a6998fd96..3f704a4893 100644
--- a/var/spack/repos/builtin/packages/adept-utils/package.py
+++ b/var/spack/repos/builtin/packages/adept-utils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class AdeptUtils(Package):
+class AdeptUtils(CMakePackage):
"""Utility libraries for LLNL performance tools."""
homepage = "https://github.com/llnl/adept-utils"
@@ -34,11 +34,6 @@ class AdeptUtils(Package):
version('1.0.1', '731a310717adcb004d9d195130efee7d')
version('1.0', '5c6cd9badce56c945ac8551e34804397')
- depends_on("boost")
- depends_on("mpi")
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake(*std_cmake_args)
- make()
- make("install")
+ depends_on('boost')
+ depends_on('mpi')
+ depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/adios/package.py b/var/spack/repos/builtin/packages/adios/package.py
index e240ce0858..1b0b88d167 100644
--- a/var/spack/repos/builtin/packages/adios/package.py
+++ b/var/spack/repos/builtin/packages/adios/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,11 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-
from spack import *
-class Adios(Package):
+class Adios(AutotoolsPackage):
"""The Adaptable IO System (ADIOS) provides a simple,
flexible way for scientists to describe the
data in their code that may need to be written,
@@ -34,10 +33,13 @@ class Adios(Package):
"""
homepage = "http://www.olcf.ornl.gov/center-projects/adios/"
- url = "https://github.com/ornladios/ADIOS/archive/v1.10.0.tar.gz"
+ url = "https://github.com/ornladios/ADIOS/archive/v1.12.0.tar.gz"
version('develop', git='https://github.com/ornladios/ADIOS.git',
branch='master')
+ version('1.12.0', '84a1c71b6698009224f6f748c5257fc9')
+ version('1.11.1', '5639bfc235e50bf17ba9dafb14ea4185')
+ version('1.11.0', '5eead5b2ccf962f5e6d5f254d29d5238')
version('1.10.0', 'eff450a4c0130479417cfd63186957f3')
version('1.9.0', '310ff02388bbaa2b1c1710ee970b5678')
@@ -47,85 +49,127 @@ class Adios(Package):
variant('fortran', default=False,
description='Enable Fortran bindings support')
- variant('mpi', default=True, description='Enable MPI support')
- variant('infiniband', default=False, description='Enable infiniband support')
+ variant('mpi', default=True,
+ description='Enable MPI support')
+ variant('infiniband', default=False,
+ description='Enable infiniband support')
# transforms
- variant('zlib', default=True, description='Enable szip transform support')
- variant('szip', default=False, description='Enable szip transform support')
+ variant('zlib', default=True,
+ description='Enable zlib transform support')
+ variant('bzip2', default=False,
+ description='Enable bzip2 transform support')
+ variant('szip', default=False,
+ description='Enable szip transform support')
+ variant('zfp', default=True,
+ description='Enable ZFP transform support')
+ variant('sz', default=True,
+ description='Enable SZ transform support')
# transports and serial file converters
- variant('hdf5', default=False, description='Enable parallel HDF5 transport and serial bp2h5 converter')
-
- # Lots of setting up here for this package
- # module swap PrgEnv-intel PrgEnv-$COMP
- # module load cray-hdf5/1.8.14
- # module load python/2.7.10
+ variant('hdf5', default=False,
+ description='Enable parallel HDF5 transport and serial bp2h5 ' +
+ 'converter')
+ variant('netcdf', default=False, description='Enable netcdf support')
+
+ variant(
+ 'staging',
+ default=None,
+ values=('flexpath', 'dataspaces'),
+ multi=True,
+ description='Enable dataspaces and/or flexpath staging transports'
+ )
depends_on('autoconf', type='build')
depends_on('automake', type='build')
- depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('libtool@:2.4.2', type='build')
depends_on('python', type='build')
depends_on('mpi', when='+mpi')
- depends_on('mxml@2.9:')
# optional transformations
depends_on('zlib', when='+zlib')
+ depends_on('bzip2', when='+bzip2')
depends_on('szip', when='+szip')
+ depends_on('sz@:1.4.10', when='+sz')
+ depends_on('zfp@:0.5.0', when='+zfp')
# optional transports & file converters
- depends_on('hdf5@1.8:+mpi', when='+hdf5')
+ depends_on('hdf5@1.8:+hl+mpi', when='+hdf5')
+ depends_on('netcdf', when='+netcdf')
+ depends_on('libevpath', when='staging=flexpath')
+ depends_on('dataspaces+mpi', when='staging=dataspaces')
+
+ for p in ['+hdf5', '+netcdf', 'staging=flexpath', 'staging=dataspaces']:
+ conflicts(p, when='~mpi')
+ build_directory = 'spack-build'
+
+ # ADIOS uses the absolute Python path, which is too long and results in
+ # "bad interpreter" errors - but not applicable for 1.9.0
+ patch('python.patch', when='@1.10.0:')
# Fix ADIOS <=1.10.0 compile error on HDF5 1.10+
# https://github.com/ornladios/ADIOS/commit/3b21a8a41509
- # https://github.com/LLNL/spack/issues/1683
+ # https://github.com/spack/spack/issues/1683
patch('adios_1100.patch', when='@:1.10.0^hdf5@1.10:')
def validate(self, spec):
- """
- Checks if incompatible variants have been activated at the same time
- :param spec: spec of the package
- :raises RuntimeError: in case of inconsistencies
+ """Checks if incompatible variants have been activated at the same time
+
+ Args:
+ spec: spec of the package
+
+ Raises:
+ RuntimeError: in case of inconsistencies
"""
if '+fortran' in spec and not self.compiler.fc:
msg = 'cannot build a fortran variant without a fortran compiler'
raise RuntimeError(msg)
- def install(self, spec, prefix):
- self.validate(spec)
- # Handle compilation after spec validation
- extra_args = []
+ def with_or_without_hdf5(self, activated):
+
+ if activated:
+ return '--with-phdf5={0}'.format(
+ self.spec['hdf5'].prefix
+ )
- # required, otherwise building its python bindings on ADIOS will fail
- extra_args.append("CFLAGS=-fPIC")
+ return '--without-phdf5'
- # always build external MXML, even in ADIOS 1.10.0+
- extra_args.append('--with-mxml=%s' % spec['mxml'].prefix)
+ def configure_args(self):
+ spec = self.spec
+ self.validate(spec)
+
+ extra_args = [
+ # required, otherwise building its python bindings will fail
+ 'CFLAGS={0}'.format(self.compiler.pic_flag)
+ ]
- if '+shared' in spec:
- extra_args.append('--enable-shared')
+ extra_args += self.enable_or_disable('shared')
+ extra_args += self.enable_or_disable('fortran')
if '+mpi' in spec:
- extra_args.append('--with-mpi')
- if '+infiniband' in spec:
- extra_args.append('--with-infiniband')
- else:
- extra_args.append('--with-infiniband=no')
-
- if '+fortran' in spec:
- extra_args.append('--enable-fortran')
- else:
- extra_args.append('--disable-fortran')
-
- if '+zlib' in spec:
- extra_args.append('--with-zlib=%s' % spec['zlib'].prefix)
- if '+szip' in spec:
- extra_args.append('--with-szip=%s' % spec['szip'].prefix)
- if '+hdf5' in spec:
- extra_args.append('--with-phdf5=%s' % spec['hdf5'].prefix)
-
- sh = which('sh')
- sh('./autogen.sh')
-
- configure("--prefix=%s" % prefix,
- *extra_args)
- make()
- make("install")
+ env['MPICC'] = spec['mpi'].mpicc
+ env['MPICXX'] = spec['mpi'].mpicxx
+
+ extra_args += self.with_or_without('mpi', activation_value='prefix')
+ extra_args += self.with_or_without('infiniband')
+
+ # Transforms
+ variants = ['zlib', 'bzip2', 'szip', 'zfp', 'sz']
+
+ # External I/O libraries
+ variants += ['hdf5', 'netcdf']
+
+ for x in variants:
+ extra_args += self.with_or_without(x, activation_value='prefix')
+
+ # Staging transports
+ def with_staging(name):
+ if name == 'flexpath':
+ return spec['libevpath'].prefix
+ return spec[name].prefix
+
+ extra_args += self.with_or_without(
+ 'staging',
+ activation_value=with_staging
+ )
+
+ return extra_args
diff --git a/var/spack/repos/builtin/packages/adios/python.patch b/var/spack/repos/builtin/packages/adios/python.patch
new file mode 100644
index 0000000000..96c9f57661
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adios/python.patch
@@ -0,0 +1,10 @@
+diff --git a/utils/gpp/gpp.py.in b/utils/gpp/gpp.py.in
+index cbb0d88..6977a55 100755
+--- a/utils/gpp/gpp.py.in
++++ b/utils/gpp/gpp.py.in
+@@ -1,4 +1,4 @@
+-#!@PYTHON_EXECUTABLE@
++#!/usr/bin/env python
+
+ import sys
+ import os
diff --git a/var/spack/repos/builtin/packages/adios2/package.py b/var/spack/repos/builtin/packages/adios2/package.py
new file mode 100644
index 0000000000..a222477c2d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adios2/package.py
@@ -0,0 +1,119 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Adios2(CMakePackage):
+ """Next generation of ADIOS developed in the Exascale Computing Program"""
+
+ homepage = "https://www.olcf.ornl.gov/center-projects/adios/"
+ url = "https://github.com/ornladios/ADIOS2/archive/v2.0.0.tar.gz"
+
+ version('develop', branch='master',
+ git='https://github.com/ornladios/ADIOS2.git')
+
+ version('2.0.0', 'da39655b51745d2c5f3f1e46c5abc4d7')
+
+ variant('shared', default=True,
+ description='Also build shared libraries')
+ variant('mpi', default=True,
+ description='Enable MPI')
+ # transforms (not yet implemented)
+ # variant('bzip2', default=True,
+ # description='Enable BZip2 compression')
+ # variant('zfp', default=True,
+ # description='Enable ZFP compression')
+ # transport engines
+ variant('dataman', default=True,
+ description='Enable the DataMan engine for WAN transports')
+ # currently required by DataMan, optional in the future
+ # variant('zeromq', default=False,
+ # description='Enable ZeroMQ for the DataMan engine')
+ variant('hdf5', default=False,
+ description='Enable the HDF5 engine')
+ variant('adios1', default=False,
+ description='Enable the ADIOS 1.x engine')
+ # language bindings
+ variant('python', default=True,
+ description='Enable the Python >= 2.7 bindings')
+
+ # requires mature C++11 implementations
+ conflicts('%gcc@:4.7')
+ conflicts('%intel@:15')
+ conflicts('%pgi@:14')
+
+ # DataMan needs dlopen
+ conflicts('+dataman', when='~shared')
+
+ depends_on('cmake@3.5.0:', type='build')
+
+ # contained in thirdparty/
+ # depends_on('googletest')
+ # depends_on('pugixml')
+ # depends_on('kwsys')
+ # depends_on('nlohmannjson')
+ # depends_on('pybind11@2.1.1:', when='+python')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('zeromq', when='+dataman')
+
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hdf5+mpi', when='+hdf5+mpi')
+ depends_on('adios', when='+adios1')
+ depends_on('adios+mpi', when='+adios1+mpi')
+
+ depends_on('bzip2', when='+bzip2')
+ depends_on('zfp', when='+zfp')
+
+ extends('python', when='+python')
+ depends_on('python@2.7:', type=('build', 'run'), when='+python')
+ depends_on('py-numpy@1.6.1:', type=('build', 'run'), when='+python')
+ depends_on('py-mpi4py@2.0.0:', type=('build', 'run'), when='+mpi +python')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DADIOS2_BUILD_SHARED_LIBS:BOOL={0}'.format((
+ 'ON' if '+shared' in spec else 'OFF')),
+ '-DADIOS2_BUILD_TESTING=OFF',
+ '-DADIOS2_USE_MPI={0}'.format((
+ 'ON' if '+mpi' in spec else 'OFF')),
+ '-DADIOS2_USE_BZip2={0}'.format((
+ 'ON' if '+bzip2' in spec else 'OFF')),
+ '-DADIOS2_USE_ZFP={0}'.format((
+ 'ON' if '+zfp' in spec else 'OFF')),
+ '-DADIOS2_USE_DataMan={0}'.format((
+ 'ON' if '+dataman' in spec else 'OFF')),
+ '-DADIOS2_USE_ZeroMQ={0}'.format((
+ 'ON' if '+dataman' in spec else 'OFF')),
+ '-DADIOS2_USE_HDF5={0}'.format((
+ 'ON' if '+hdf5' in spec else 'OFF')),
+ '-DADIOS2_USE_ADIOS1={0}'.format((
+ 'ON' if '+adios1' in spec else 'OFF')),
+ '-DADIOS2_USE_Python={0}'.format((
+ 'ON' if '+python' in spec else 'OFF'))
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/adlbx/package.py b/var/spack/repos/builtin/packages/adlbx/package.py
new file mode 100644
index 0000000000..dfe6dffb03
--- /dev/null
+++ b/var/spack/repos/builtin/packages/adlbx/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Adlbx(AutotoolsPackage):
+ """ADLB/X: Master-worker library + work stealing and data dependencies"""
+
+ homepage = 'http://swift-lang.org/Swift-T'
+ url = 'http://swift-lang.github.io/swift-t-downloads/adlbx-0.8.0.tar.gz'
+ version('0.8.0', '34ade59ce3be5bc296955231d47a27dd')
+
+ depends_on('exmcutils')
+ depends_on('mpi')
+
+ def configure_args(self):
+ args = ['--with-c-utils=' + self.spec['exmcutils'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/adol-c/package.py b/var/spack/repos/builtin/packages/adol-c/package.py
index 5c8d894757..953cade297 100644
--- a/var/spack/repos/builtin/packages/adol-c/package.py
+++ b/var/spack/repos/builtin/packages/adol-c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,63 +25,79 @@
from spack import *
-class AdolC(Package):
+class AdolC(AutotoolsPackage):
"""A package for the automatic differentiation of first and higher
derivatives of vector functions in C and C++ programs by operator
overloading."""
homepage = "https://projects.coin-or.org/ADOL-C"
url = "http://www.coin-or.org/download/source/ADOL-C/ADOL-C-2.6.1.tgz"
- version('develop', svn='https://projects.coin-or.org/svn/ADOL-C/trunk/')
+ version('develop', git='https://gitlab.com/adol-c/adol-c.git',
+ branch='master')
+ version('2.6.3', 'f78f67f70d5874830a1ad1c0f54e54f7')
version('2.6.2', '0f9547584c99c0673e4f81cf64e8d865')
version('2.6.1', '1032b28427d6e399af4610e78c0f087b')
+ variant('advanced_branching', default=False,
+ description='Enable advanced branching to reduce retaping')
+ variant('atrig_erf', default=True,
+ description='Enable arc-trig and error functions')
variant('doc', default=True, description='Install documentation')
variant('openmp', default=False, description='Enable OpenMP support')
variant('sparse', default=False, description='Enable sparse drivers')
- variant('tests', default=True,
- description='Build all included examples as a test case')
+ variant('examples', default=True, description='Install examples')
+
+ # Build dependencies
+ depends_on('automake', type='build', when='@develop')
+ depends_on('autoconf', type='build', when='@develop')
+ depends_on('libtool', type='build', when='@develop')
+ depends_on('m4', type='build', when='@develop')
patch('openmp_exam_261.patch', when='@2.6.1')
- def install(self, spec, prefix):
- make_args = ['--prefix=%s' % prefix]
+ def configure_args(self):
+ spec = self.spec
+
+ configure_args = []
+
+ if '+advanced_branching' in spec:
+ configure_args.extend([
+ '--enable-advanced-branching'
+ ])
- # --with-cflags=FLAGS use CFLAGS=FLAGS (default: -O3 -Wall -ansi)
- # --with-cxxflags=FLAGS use CXXFLAGS=FLAGS (default: -O3 -Wall)
+ if '+atrig_erf' in spec:
+ configure_args.extend([
+ '--enable-atrig-erf'
+ ])
if '+openmp' in spec:
- if spec.satisfies('%gcc'):
- make_args.extend([
- # FIXME: Is this required? -I <path to omp.h> -L <LLVM
- # OpenMP library path>
- '--with-openmp-flag=-fopenmp'
- ])
- else:
- raise InstallError(
- "OpenMP flags for compilers other than GCC "
- "are not implemented.")
+ configure_args.extend([
+ '--with-openmp-flag={0}'.format(self.compiler.openmp_flag)
+ ])
if '+sparse' in spec:
- make_args.extend([
+ configure_args.extend([
'--enable-sparse'
])
# We can simply use the bundled examples to check
# whether Adol-C works as expected
- if '+tests' in spec:
- make_args.extend([
- '--enable-docexa', # Documeted examples
+ if '+examples' in spec:
+ configure_args.extend([
+ '--enable-docexa', # Documented examples
'--enable-addexa' # Additional examples
])
if '+openmp' in spec:
- make_args.extend([
+ configure_args.extend([
'--enable-parexa' # Parallel examples
])
- configure(*make_args)
- make()
- make("install")
+ return configure_args
+
+ @run_after('install')
+ def install_additional_files(self):
+ spec = self.spec
+ prefix = self.prefix
# Copy the config.h file, as some packages might require it
source_directory = self.stage.source_path
@@ -94,7 +110,7 @@ class AdolC(Package):
join_path(prefix.share, 'doc'))
# Install examples to {prefix}/share
- if '+tests' in spec:
+ if '+examples' in spec:
install_tree(join_path('ADOL-C', 'examples'),
join_path(prefix.share, 'examples'))
diff --git a/var/spack/repos/builtin/packages/albert/package.py b/var/spack/repos/builtin/packages/albert/package.py
new file mode 100644
index 0000000000..d720f04650
--- /dev/null
+++ b/var/spack/repos/builtin/packages/albert/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Albert(MakefilePackage):
+ """Albert is an interactive program to assist the
+ specialist in the study of nonassociative algebra."""
+
+ homepage = "https://people.cs.clemson.edu/~dpj/albertstuff/albert.html"
+ url = "https://github.com/kentavv/Albert/archive/v4.0a_opt4.tar.gz"
+
+ version('4.0a_opt4', '79e3d9623602f2ca5db7d84c81d4eb8c')
+
+ depends_on('readline')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('albert', join_path(prefix.bin))
diff --git a/var/spack/repos/builtin/packages/alglib/Makefile b/var/spack/repos/builtin/packages/alglib/Makefile
new file mode 100644
index 0000000000..fbcfdb9542
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alglib/Makefile
@@ -0,0 +1,20 @@
+CC = $(SPACK_CXX)
+CFLAGS = -fPIC -Wall -O2 -g
+LDFLAGS = -shared
+RM = rm -f
+TARGET_LIB = libalglib.so
+
+SRCS = $(wildcard *.cpp)
+OBJS = $(SRCS:.cpp=.o)
+
+%.o: %.cpp
+ $(CC) -c ${CFLAGS} $<
+
+.PHONY: all
+all: $(OBJS)
+ $(CC) ${LDFLAGS} -o ${TARGET_LIB} $^
+
+# do not look for "clean", consider it always as missing
+.phony: clean
+clean:
+ ${RM} *.o
diff --git a/var/spack/repos/builtin/packages/alglib/package.py b/var/spack/repos/builtin/packages/alglib/package.py
new file mode 100644
index 0000000000..e470dba292
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alglib/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+import os
+import shutil
+
+
+class Alglib(MakefilePackage):
+ """ALGLIB is a cross-platform numerical analysis and data processing
+ library."""
+
+ homepage = "http://www.alglib.net"
+ url = "http://www.alglib.net/translator/re/alglib-3.11.0.cpp.gpl.tgz"
+
+ version('3.11.0', 'f87bb05349924d486e8809590dee9f80')
+
+ def url_for_version(self, version):
+ return 'http://www.alglib.net/translator/re/alglib-{0}.cpp.gpl.tgz'.format(version.dotted)
+
+ build_directory = 'src'
+
+ def edit(self, spec, prefix):
+ # this package has no build system!
+ make_file_src = join_path(os.path.dirname(self.module.__file__),
+ 'Makefile')
+ make_file = join_path(self.stage.source_path, 'src', 'Makefile')
+ shutil.copy(make_file_src, make_file)
+ filter_file(r'so', dso_suffix, make_file)
+
+ def install(self, spec, prefix):
+ name = 'libalglib.{0}'.format(dso_suffix)
+ with working_dir('src'):
+ mkdirp(prefix.lib)
+ install(name, prefix.lib)
+ mkdirp(prefix.include)
+ headers = glob.glob('*.h')
+ for h in headers:
+ install(h, prefix.include)
diff --git a/var/spack/repos/builtin/packages/allinea-forge/package.py b/var/spack/repos/builtin/packages/allinea-forge/package.py
index ac60762cc3..a4a821737d 100644
--- a/var/spack/repos/builtin/packages/allinea-forge/package.py
+++ b/var/spack/repos/builtin/packages/allinea-forge/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -48,5 +48,5 @@ class AllineaForge(Package):
return url + "allinea-forge-%s-Redhat-6.0-x86_64.tar" % version
def install(self, spec, prefix):
- textinstall = which('textinstall.sh')
+ textinstall = Executable('./textinstall.sh')
textinstall('--accept-licence', prefix)
diff --git a/var/spack/repos/builtin/packages/allinea-reports/package.py b/var/spack/repos/builtin/packages/allinea-reports/package.py
index 13863c271d..69c881c369 100644
--- a/var/spack/repos/builtin/packages/allinea-reports/package.py
+++ b/var/spack/repos/builtin/packages/allinea-reports/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -48,5 +48,5 @@ class AllineaReports(Package):
return url + "allinea-reports-%s-Redhat-6.0-x86_64.tar" % version
def install(self, spec, prefix):
- textinstall = which('textinstall.sh')
+ textinstall = Executable('./textinstall.sh')
textinstall('--accept-licence', prefix)
diff --git a/var/spack/repos/builtin/packages/allpaths-lg/package.py b/var/spack/repos/builtin/packages/allpaths-lg/package.py
new file mode 100644
index 0000000000..69731045aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/allpaths-lg/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class AllpathsLg(AutotoolsPackage):
+ """ALLPATHS-LG is our original short read assembler and it works on both
+ small and large (mammalian size) genomes."""
+
+ homepage = "http://www.broadinstitute.org/software/allpaths-lg/blog/"
+ url = "ftp://ftp.broadinstitute.org/pub/crd/ALLPATHS/Release-LG/latest_source_code/LATEST_VERSION.tar.gz"
+
+ version('52488', 'bde9008e236d87708a48eb83af6d6d5b')
+
+ # compiles with gcc 4.7.0 to 4.9.4)
+ conflicts('%gcc@:4.6.4,5.1.0:')
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
diff --git a/var/spack/repos/builtin/packages/alquimia/package.py b/var/spack/repos/builtin/packages/alquimia/package.py
new file mode 100644
index 0000000000..983bab23f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alquimia/package.py
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Alquimia(CMakePackage):
+ """Alquimia is an interface that exposes the capabilities
+ of mature geochemistry codes such as CrunchFlow and PFLOTRAN"""
+
+ homepage = "https://github.com/LBL-EESA/alquimia-dev"
+
+ version('xsdk-0.2.0', git='https://github.com/LBL-EESA/alquimia-dev.git', tag='xsdk-0.2.0')
+ version('develop', git='https://github.com/LBL-EESA/alquimia-dev.git')
+
+ variant('shared', default=True,
+ description='Enables the build of shared libraries')
+
+ depends_on('mpi')
+ depends_on('hdf5')
+ depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('pflotran@develop', when='@develop')
+ depends_on('petsc@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('petsc@develop', when='@develop')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ options = ['-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
+ '-DUSE_XSDK_DEFAULTS=YES',
+ '-DBUILD_SHARED_LIBS:BOOL=%s' % (
+ 'ON' if '+shared' in spec else 'OFF'),
+ '-DTPL_ENABLE_MPI:BOOL=ON',
+ '-DMPI_BASE_DIR:PATH=%s' % spec['mpi'].prefix,
+ '-DTPL_ENABLE_HDF5:BOOL=ON',
+ '-DXSDK_WITH_PFLOTRAN:BOOL=ON',
+ # This is not good.
+ # It assumes that the .a file exists and is not a .so
+ '-DTPL_PFLOTRAN_LIBRARIES=%s' % (
+ spec['pflotran'].prefix.lib + "/libpflotranchem.a"),
+ '-DTPL_PFLOTRAN_INCLUDE_DIRS=%s' % (
+ spec['pflotran'].prefix.include),
+ '-DTPL_ENABLE_PETSC:BOOL=ON',
+ '-DPETSC_EXECUTABLE_RUNS=ON',
+ '-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % self.prefix]
+ return options
diff --git a/var/spack/repos/builtin/packages/alsa-lib/package.py b/var/spack/repos/builtin/packages/alsa-lib/package.py
new file mode 100644
index 0000000000..8e469e9ae7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/alsa-lib/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class AlsaLib(AutotoolsPackage):
+ """The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
+ functionality to the Linux operating system. alsa-lib contains the user
+ space library that developers compile ALSA applications against."""
+
+ homepage = "https://www.alsa-project.org"
+ url = "ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.1.4.1.tar.bz2"
+
+ version('1.1.4.1', '29fa3e69122d3cf3e8f0e01a0cb1d183')
diff --git a/var/spack/repos/builtin/packages/amg/package.py b/var/spack/repos/builtin/packages/amg/package.py
new file mode 100644
index 0000000000..5167347dc9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amg/package.py
@@ -0,0 +1,74 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 0s2111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Amg(MakefilePackage):
+ """AMG is a parallel algebraic multigrid solver for linear systems arising
+ from problems on unstructured grids. The driver provided with AMG
+ builds linear systems for various 3-dimensional problems.
+ """
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "https://codesign.llnl.gov/amg2013.php"
+ git = "https://github.com/LLNL/AMG"
+
+ version('1.0', git=git, tag='1.0')
+ version('develop', git=git, branch='master')
+
+ variant('openmp', default=True, description='Build with OpenMP support')
+ variant('optflags', default=False, description='Additional optimizations')
+ variant('int64', default=False, description='Use 64-bit integers for global variables')
+
+ depends_on('mpi')
+
+ @property
+ def build_targets(self):
+ targets = []
+
+ include_cflags = ['-DTIMER_USE_MPI']
+ include_lflags = ['-lm']
+
+ if '+openmp' in self.spec:
+ include_cflags.append('-DHYPRE_USING_OPENMP')
+ include_cflags.append(self.compiler.openmp_flag)
+ include_lflags.append(self.compiler.openmp_flag)
+ if '+optflags' in self.spec:
+ include_cflags.append('-DHYPRE_USING_PERSISTENT_COMM')
+ include_cflags.append('-DHYPRE_HOPSCOTCH')
+
+ if '+int64' in self.spec:
+ include_cflags.append('-DHYPRE_BIGINT')
+
+ targets.append('INCLUDE_CFLAGS={0}'.format(' '.join(include_cflags)))
+ targets.append('INCLUDE_LFLAGS={0}'.format(' '.join(include_lflags)))
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('test/amg', prefix.bin)
+ install_tree('docs', prefix.docs)
diff --git a/var/spack/repos/builtin/packages/amg2013/package.py b/var/spack/repos/builtin/packages/amg2013/package.py
new file mode 100644
index 0000000000..43e9277805
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amg2013/package.py
@@ -0,0 +1,77 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 0s2111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Amg2013(MakefilePackage):
+ """AMG2013 is a parallel algebraic multigrid solver for linear
+ systems arising from problems on unstructured grids.
+ It has been derived directly from the BoomerAMG solver in the
+ hypre library, a large linear solver library that is being developed
+ in the Center for Applied Scientific Computing (CASC) at LLNL.
+ """
+ tags = ['proxy-app']
+ homepage = "https://codesign.llnl.gov/amg2013.php"
+ url = "https://codesign.llnl.gov/amg2013/amg2013.tgz"
+
+ version('master', '9d918d2a69528b83e6e0aba6ba601fef',
+ url='https://codesign.llnl.gov/amg2013/amg2013.tgz')
+
+ variant('openmp', default=True, description='Build with OpenMP support')
+ variant('assumedpartition', default=False, description='Use assumed partition (for thousands of processors)')
+ variant('int64', default=False, description='Use 64-bit integers for global variables')
+
+ depends_on('mpi')
+
+ @property
+ def build_targets(self):
+ targets = []
+
+ include_cflags = ['-DTIMER_USE_MPI']
+ include_lflags = ['-lm']
+
+ if '+openmp' in self.spec:
+ include_cflags.append('-DHYPRE_USING_OPENMP')
+ include_cflags.append(self.compiler.openmp_flag)
+ include_lflags.append(self.compiler.openmp_flag)
+
+ if '+assumedpartition' in self.spec:
+ include_cflags.append('-DHYPRE_NO_GLOBAL_PARTITION')
+
+ if '+int64' in self.spec:
+ include_cflags.append('-DHYPRE_LONG_LONG')
+
+ targets.append('INCLUDE_CFLAGS={0}'.format(' '.join(include_cflags)))
+ targets.append('INCLUDE_LFLAGS={0}'.format(' '.join(include_lflags)))
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('test/amg2013', prefix.bin)
+ install_tree('docs', prefix.docs)
+ install('COPYRIGHT', prefix.docs)
+ install('COPYING.LESSER', prefix.docs)
diff --git a/var/spack/repos/builtin/packages/ampliconnoise/package.py b/var/spack/repos/builtin/packages/ampliconnoise/package.py
new file mode 100644
index 0000000000..626ac16678
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ampliconnoise/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ampliconnoise(MakefilePackage):
+ """AmpliconNoise is a collection of programs for the removal of noise
+ from 454 sequenced PCR amplicons."""
+
+ homepage = "https://code.google.com/archive/p/ampliconnoise/"
+ url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/ampliconnoise/AmpliconNoiseV1.29.tar.gz"
+
+ version('1.29', 'd6723e6f9cc71d7eb6f1a65ba4643aac')
+
+ depends_on('mpi@2:')
+ depends_on('gsl')
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', self.prefix.Scripts)
+ run_env.set('PYRO_LOOKUP_FILE', join_path(self.prefix, 'Data',
+ 'LookUp_E123.dat'))
+ run_env.set('SEQ_LOOKUP_FILE', join_path(self.prefix, 'Data',
+ 'Tran.dat'))
+
+ def install(self, spec, prefix):
+ make('install')
+ install_tree('bin', prefix.bin)
+ install_tree('Data', prefix.Data)
+ install_tree('FastaUnique', prefix.FastaUnique)
+ install_tree('FCluster', prefix.FCluster)
+ install_tree('NDist', prefix.NDist)
+ install_tree('Perseus', prefix.Perseus)
+ install_tree('PerseusD', prefix.PerseusD)
+ install_tree('PyroDist', prefix.PyroDist)
+ install_tree('PyroNoise', prefix.PyroNoise)
+ install_tree('PyroNoiseM', prefix.PyroNoiseM)
+ install_tree('Scripts', prefix.Scripts)
+ install_tree('SeqDist', prefix.SeqDist)
+ install_tree('SeqNoise', prefix.SeqNoise)
+ install_tree('SplitClusterClust', prefix.SplitClusterClust)
+ install_tree('SplitClusterEven', prefix.SplitClusterEven)
+ install_tree('Test', prefix.Test)
+ install_tree('TestFLX', prefix.TestFLX)
+ install_tree('TestTitanium', prefix.TestTitanium)
+ install_tree('TestTitaniumFast', prefix.TestTitaniumFast)
diff --git a/var/spack/repos/builtin/packages/amr-exp-parabolic/package.py b/var/spack/repos/builtin/packages/amr-exp-parabolic/package.py
new file mode 100644
index 0000000000..14d393ed27
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amr-exp-parabolic/package.py
@@ -0,0 +1,95 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class AmrExpParabolic(MakefilePackage):
+ """Simplified block-structured adaptive mesh refinement algorithm
+ in two and three dimensions with subcycling in time.
+ The algorithm solves a linear advection diffusion equation
+ with a simple numerical method. This proxy app is intended to
+ capture the communication pattern of an explicit AMR algorithm
+ but does not represent an accurate characterization of
+ floating point effort or
+ relative costs of communication to computation."""
+
+ homepage = "https://ccse.lbl.gov/ExaCT/index.html"
+ url = "https://ccse.lbl.gov/ExaCT/AMR_Exp_Parabolic.tgz"
+ tags = ['proxy-app']
+
+ version(
+ 'release', '330604d9cc755dad8a2cdfaa7ff8f6a4',
+ url='https://ccse.lbl.gov/ExaCT/AMR_Exp_Parabolic.tgz')
+
+ variant(
+ 'debug', default=False, description='Turn on debugging')
+ variant(
+ 'mpi', default=True, description='Build with MPI support')
+ variant(
+ 'openmp', default=False,
+ description='Build with OpenMP support')
+ variant(
+ 'prof', default=False, description='Use profiler')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('gmake', type='build')
+
+ build_directory = 'MiniApps/AMR_Adv_Diff_F90'
+
+ def edit(self, spec, prefix):
+ def_file = FileFilter('Tools/F_mk/GMakedefs.mak')
+ def_file.filter('tdir = t/.*', 'tdir := t/$(suf)')
+ def_file.filter('hdir = t/.*', 'hdir := t/html')
+ def_file.filter('include $(BOXLIB_HOME)/Tools/F_mk/GMakeMPI.mak', '#')
+
+ if '+mpi' in spec:
+ def_file.filter('FC.*:=.*', 'FC = {0}'.format(spec['mpi'].mpifc))
+ def_file.filter('F90.*:=.*', 'F90 = {0}'.format(spec['mpi'].mpifc))
+ def_file.filter(
+ 'mpi_include_dir =.*',
+ 'mpi_include_dir = {0}'.format(spec['mpi'].prefix.include))
+ def_file.filter(
+ 'mpi_lib_dir =.*',
+ 'mpi_lib_dir = {0}'.format(spec['mpi'].prefix.lib))
+
+ with working_dir(self.build_directory):
+ makefile = FileFilter('GNUmakefile')
+ if '+debug' in spec:
+ makefile.filter('NDEBUG.*:= t', '#')
+ if '~mpi' in spec:
+ makefile.filter('MPI.*:= t', '#')
+ if '+openmp' in spec:
+ makefile.filter('OMP.*:=', 'OMP := t')
+ if '+prof' in spec:
+ makefile.filter('PROF.*:=', 'PROF := t')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ files = glob.glob(join_path(self.build_directory, '*.exe'))
+ for f in files:
+ install(f, prefix.bin)
+ install('README.txt', prefix)
+ install('license.txt', prefix)
diff --git a/var/spack/repos/builtin/packages/amrex/package.py b/var/spack/repos/builtin/packages/amrex/package.py
new file mode 100644
index 0000000000..89533db2e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/amrex/package.py
@@ -0,0 +1,86 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Amrex(CMakePackage):
+ """AMReX is the successor to BoxLib.
+ It is a Block-Structured AMR Framework.
+ """
+
+ homepage = "https://ccse.lbl.gov/AMReX/index.html"
+ url = "https://github.com/AMReX-Codes/amrex.git"
+
+ version('17.06', git='https://github.com/AMReX-Codes/amrex.git', commit='836d3c7')
+ version('master', git='https://github.com/AMReX-Codes/amrex.git', tag='master')
+ version('develop', git='https://github.com/AMReX-Codes/amrex.git', tag='development')
+
+ variant('dims',
+ default='3',
+ values=('1', '2', '3'),
+ multi=False,
+ description='Number of spatial dimensions')
+
+ variant('prec',
+ default='DOUBLE',
+ values=('FLOAT', 'DOUBLE'),
+ multi=False,
+ description='Floating point precision')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+ variant('openmp', default=False, description='Enable OpenMP parallel support')
+ variant('fortran', default=True, description='Enable Fortran support')
+ variant('debug', default=False, description='Enable debugging features')
+ variant('particles', default=False, description='Include particle classes in build')
+
+ depends_on('mpi', when='+mpi')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ cmake_args = [
+ '-DENABLE_POSITION_INDEPENDENT_CODE=ON',
+ '-DBL_SPACEDIM:INT=%d' % int(spec.variants['dims'].value),
+ '-DBL_PRECISION:STRING=%s' % spec.variants['prec'].value,
+ '-DENABLE_FMG=%s' % ('+fortran' in spec),
+ '-DENABLE_FBASELIB=%s' % ('+fortran' in spec),
+ '-DBL_DEBUG:INT=%d' % int('+debug' in spec),
+ '-DBL_USE_PARTICLES:INT=%d' % int('+particles' in spec),
+ '-DENABLE_MPI:INT=%d' % int('+mpi' in spec),
+ '-DENABLE_OpenMP:INT=%d' % int('+openmp' in spec),
+ ]
+
+ if '+mpi' in spec:
+ cmake_args += [
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx
+ ]
+ if '+fortran' in spec:
+ cmake_args += [
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc
+ ]
+ cmake_args += ['-DENABLE_FORTRAN_MPI=%s' % ('+fortran' in spec)]
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/andi/package.py b/var/spack/repos/builtin/packages/andi/package.py
new file mode 100644
index 0000000000..44c2644507
--- /dev/null
+++ b/var/spack/repos/builtin/packages/andi/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Andi(AutotoolsPackage):
+ """andi is used for for estimating the
+ evolutionary distance between closely related genomes."""
+
+ homepage = "https://github.com/EvolBioInf/andi"
+ url = "https://github.com/EvolBioInf/andi/archive/v0.10.tar.gz"
+
+ version('0.10', '3aaba7961798bb4aaa546baa44e469d8')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('gsl')
+ depends_on('libdivsufsort')
diff --git a/var/spack/repos/builtin/packages/angsd/package.py b/var/spack/repos/builtin/packages/angsd/package.py
new file mode 100644
index 0000000000..eb3e5e58f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/angsd/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Angsd(MakefilePackage):
+ """Angsd is a program for analysing NGS data. The software can handle a
+ number of different input types from mapped reads to imputed genotype
+ probabilities. Most methods take genotype uncertainty into account
+ instead of basing the analysis on called genotypes. This is especially
+ useful for low and medium depth data."""
+
+ homepage = "https://github.com/ANGSD/angsd"
+ url = "https://github.com/ANGSD/angsd/archive/0.919.tar.gz"
+
+ version('0.919', '79d342f49c24ac00d35934f2617048d4')
+
+ depends_on('htslib')
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('R_LIBS', prefix.R)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('angsd', join_path(prefix.bin))
+ install_tree('R', prefix.R)
+ install_tree('RES', prefix.RES)
+ install_tree('scripts', prefix.scripts)
diff --git a/var/spack/repos/builtin/packages/ant/package.py b/var/spack/repos/builtin/packages/ant/package.py
index 81a0e089e5..82478c481d 100644
--- a/var/spack/repos/builtin/packages/ant/package.py
+++ b/var/spack/repos/builtin/packages/ant/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,11 +32,16 @@ class Ant(Package):
"""
homepage = "http://ant.apache.org/"
- url = "http://apache.claz.org/ant/source/apache-ant-1.9.7-src.tar.gz"
+ url = "https://archive.apache.org/dist/ant/source/apache-ant-1.9.7-src.tar.gz"
- version('1.9.7', 'a2fd9458c76700b7be51ef12f07d4bb1')
+ # 1.10.0 requires newer Java, not yet tested....
+ # version('1.10.0', '2260301bb7734e34d8b96f1a5fd7979c')
+ version('1.9.9', '22c9d40dabafbec348aaada226581239')
+ version('1.9.8', '16253d516d5c33c4af9ef8fafcf1004b')
+ version('1.9.7', 'a2fd9458c76700b7be51ef12f07d4bb1')
+ version('1.9.6', '29b7507c9053e301d2b85091f2aec6f0')
- depends_on('jdk')
+ depends_on('java')
def install(self, spec, prefix):
env['ANT_HOME'] = self.prefix
diff --git a/var/spack/repos/builtin/packages/antlr/gcc.patch b/var/spack/repos/builtin/packages/antlr/gcc.patch
new file mode 100644
index 0000000000..40de6b7861
--- /dev/null
+++ b/var/spack/repos/builtin/packages/antlr/gcc.patch
@@ -0,0 +1,15 @@
+Description: Adds missing includes to fix FTBFS.
+
+Index: antlr-2.7.7/lib/cpp/antlr/CharScanner.hpp
+===================================================================
+--- antlr-2.7.7.orig/lib/cpp/antlr/CharScanner.hpp 2006-11-01 22:37:17.000000000 +0100
++++ antlr-2.7.7/lib/cpp/antlr/CharScanner.hpp 2009-01-15 20:47:53.000000000 +0100
+@@ -17,6 +17,8 @@
+ #else
+ #include <cctype>
+ #endif
++#include <cstdio>
++#include <cstring>
+
+ #if ( _MSC_VER == 1200 )
+ // VC6 seems to need this
diff --git a/var/spack/repos/builtin/packages/antlr/package.py b/var/spack/repos/builtin/packages/antlr/package.py
index 88653a8ea9..50324dd82c 100644
--- a/var/spack/repos/builtin/packages/antlr/package.py
+++ b/var/spack/repos/builtin/packages/antlr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,29 +32,20 @@ class Antlr(AutotoolsPackage):
frameworks. From a grammar, ANTLR generates a parser that can build and
walk parse trees."""
- homepage = "http://www.antlr.org"
- url = "https://github.com/antlr/antlr/tarball/v2.7.7"
+ homepage = "http://www.antlr2.org/"
+ url = "http://www.antlr2.org/download/antlr-2.7.7.tar.gz"
- # Notes from http://nco.sourceforge.net/#bld
- # The first steps to build (i.e., compile, for the most part) NCO from
- # source code are to install the pre-requisites: ANTLR version 2.7.7
- # (like this one not version 3.x or 4.x!) (required for ncap2)... ANTLR
- # binaries from major distributions are pre-built with the source patch
- # necessary to allow NCO to link to ANTLR... The ANTLR source file
- # CharScanner.hpp must include this line: #include <cstring> or else
- # ncap2 will not compile (this tarball is already patched).
- version('2.7.7', '914865e853fe8e1e61a9f23d045cb4ab',
- # Patched version as described above
- url='http://dust.ess.uci.edu/tmp/antlr-2.7.7.tar.gz')
- # Unpatched version
- # url='http://dust.ess.uci.edu/nco/antlr-2.7.7.tar.gz')
+ version('2.7.7', '01cc9a2a454dd33dcd8c856ec89af090')
+
+ # Fixes build with recent versions of GCC
+ patch('gcc.patch')
variant('cxx', default=True, description='Enable ANTLR for C++')
variant('java', default=False, description='Enable ANTLR for Java')
variant('python', default=False, description='Enable ANTLR for Python')
extends('python', when='+python')
- depends_on('jdk', type=('build', 'run'), when='+java')
+ depends_on('java', type=('build', 'run'), when='+java')
def configure_args(self):
spec = self.spec
diff --git a/var/spack/repos/builtin/packages/ape/package.py b/var/spack/repos/builtin/packages/ape/package.py
index 48e436804f..dd24c84e5e 100644
--- a/var/spack/repos/builtin/packages/ape/package.py
+++ b/var/spack/repos/builtin/packages/ape/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,7 +35,7 @@ class Ape(Package):
version('2.2.1', 'ab81da85bd749c0c136af088c7f9ad58')
depends_on('gsl')
- depends_on('libxc')
+ depends_on('libxc@:2.2.2')
def install(self, spec, prefix):
args = []
diff --git a/var/spack/repos/builtin/packages/apex/package.py b/var/spack/repos/builtin/packages/apex/package.py
index 832e10a1ec..50f74f6220 100644
--- a/var/spack/repos/builtin/packages/apex/package.py
+++ b/var/spack/repos/builtin/packages/apex/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,14 +23,13 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-from spack.util.environment import *
-class Apex(Package):
+class Apex(CMakePackage):
homepage = "http://github.com/khuck/xpress-apex"
url = "http://github.com/khuck/xpress-apex/archive/v0.1.tar.gz"
- version('0.1', '8b95f0c0313da1575960d3ad69f18e75')
+ version('0.1', 'e224a0b9033e23a9697ce2a3c307a0a3')
depends_on("binutils+libiberty")
depends_on("boost@1.54:")
@@ -38,19 +37,14 @@ class Apex(Package):
depends_on("activeharmony@4.5:")
depends_on("ompt-openmp")
- def install(self, spec, prefix):
-
- path = get_path("PATH")
- path.remove(spec["binutils"].prefix.bin)
- path_set("PATH", path)
- with working_dir("build", create=True):
- cmake('-DBOOST_ROOT=%s' % spec['boost'].prefix,
- '-DUSE_BFD=TRUE',
- '-DBFD_ROOT=%s' % spec['binutils'].prefix,
- '-DUSE_ACTIVEHARMONY=TRUE',
- '-DACTIVEHARMONY_ROOT=%s' % spec['activeharmony'].prefix,
- '-DUSE_OMPT=TRUE',
- '-DOMPT_ROOT=%s' % spec['ompt-openmp'].prefix,
- '..', *std_cmake_args)
- make()
- make("install")
+ def cmake_args(self):
+ spec = self.spec
+ return [
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DUSE_BFD=TRUE',
+ '-DBFD_ROOT=%s' % spec['binutils'].prefix,
+ '-DUSE_ACTIVEHARMONY=TRUE',
+ '-DACTIVEHARMONY_ROOT=%s' % spec['activeharmony'].prefix,
+ '-DUSE_OMPT=TRUE',
+ '-DOMPT_ROOT=%s' % spec['ompt-openmp'].prefix,
+ ]
diff --git a/var/spack/repos/builtin/packages/applewmproto/package.py b/var/spack/repos/builtin/packages/applewmproto/package.py
index 8d7e360bfb..170df5d570 100644
--- a/var/spack/repos/builtin/packages/applewmproto/package.py
+++ b/var/spack/repos/builtin/packages/applewmproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Applewmproto(Package):
+class Applewmproto(AutotoolsPackage):
"""Apple Rootless Window Management Extension.
This extension defines a protcol that allows X window managers
@@ -39,8 +39,3 @@ class Applewmproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/appres/package.py b/var/spack/repos/builtin/packages/appres/package.py
index 47a9c5bb54..87f5c2ff96 100644
--- a/var/spack/repos/builtin/packages/appres/package.py
+++ b/var/spack/repos/builtin/packages/appres/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Appres(Package):
+class Appres(AutotoolsPackage):
"""The appres program prints the resources seen by an application (or
subhierarchy of an application) with the specified class and instance
names. It can be used to determine which resources a particular
@@ -42,9 +42,3 @@ class Appres(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/apr-util/package.py b/var/spack/repos/builtin/packages/apr-util/package.py
index 8e01d3bbdd..1b68584530 100644
--- a/var/spack/repos/builtin/packages/apr-util/package.py
+++ b/var/spack/repos/builtin/packages/apr-util/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,21 +25,93 @@
from spack import *
-class AprUtil(Package):
+class AprUtil(AutotoolsPackage):
"""Apache Portable Runtime Utility"""
+
homepage = 'https://apr.apache.org/'
- url = 'http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz'
+ url = 'http://archive.apache.org/dist/apr/apr-util-1.6.0.tar.gz'
+
+ version('1.6.0', '3b03dbff60728a4f4c33f5d929e8b35a')
+ version('1.5.4', '866825c04da827c6e5f53daff5569f42')
- version('1.5.4', '866825c04da827c6e5f53daff5569f42')
+ variant('crypto', default=True, description='Enable crypto support')
+ variant('gdbm', default=False, description='Enable GDBM support')
+ variant('pgsql', default=False, description='Enable PostgreSQL support')
+ variant('sqlite', default=False, description='Enable sqlite DBD driver')
+ variant('odbc', default=False, description='Enalbe ODBC support')
depends_on('apr')
+ depends_on('expat')
+ depends_on('libiconv')
+
+ depends_on('openssl', when='+crypto')
+ depends_on('gdbm', when='+gdbm')
+ depends_on('postgresql', when='+pgsql')
+ depends_on('sqlite', when='+sqlite')
+ depends_on('unixodbc', when='+odbc')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ '--with-apr={0}'.format(spec['apr'].prefix),
+ '--with-expat={0}'.format(spec['expat'].prefix),
+ '--with-iconv={0}'.format(spec['libiconv'].prefix),
+ # TODO: Add support for the following database managers
+ '--without-ndbm',
+ '--without-berkeley-db',
+ '--without-mysql',
+ '--without-oracle',
+ ]
+
+ if '+crypto' in spec:
+ args.extend([
+ '--with-crypto',
+ '--with-openssl={0}'.format(spec['openssl'].prefix),
+ ])
+ else:
+ args.append('--without-crypto')
+
+ if '+gdbm' in spec:
+ args.append('--with-gdbm={0}'.format(spec['gdbm'].prefix))
+ else:
+ args.append('--without-gdbm')
+
+ if '+pgsql' in spec:
+ args.append('--with-pgsql={0}'.format(spec['postgresql'].prefix))
+ else:
+ args.append('--without-pgsql')
+
+ if '+sqlite' in spec:
+ if spec.satisfies('^sqlite@3.0:3.999'):
+ args.extend([
+ '--with-sqlite3={0}'.format(spec['sqlite'].prefix),
+ '--without-sqlite2',
+ ])
+ elif spec.satisfies('^sqlite@2.0:2.999'):
+ args.extend([
+ '--with-sqlite2={0}'.format(spec['sqlite'].prefix),
+ '--without-sqlite3',
+ ])
+ else:
+ args.extend([
+ '--without-sqlite2',
+ '--without-sqlite3',
+ ])
+
+ if '+odbc' in spec:
+ args.append('--with-odbc={0}'.format(spec['unixodbc'].prefix))
+ else:
+ args.append('--without-odbc')
- def install(self, spec, prefix):
+ return args
- # configure, build, install:
- options = ['--prefix=%s' % prefix]
- options.append('--with-apr=%s' % spec['apr'].prefix)
+ def check(self):
+ # FIXME: Database driver tests fail, at least on macOS:
+ #
+ # Failed to load driver file apr_dbd_pgsql.so
+ # Failed to load driver file apr_dbd_sqlite3.so
+ # Failed to load driver file apr_dbd_odbc.so
- configure(*options)
- make()
- make('install')
+ # Tests occassionally fail when run in parallel
+ make('check', parallel=False)
diff --git a/var/spack/repos/builtin/packages/apr/package.py b/var/spack/repos/builtin/packages/apr/package.py
index 0cd51f52e3..f78b229229 100644
--- a/var/spack/repos/builtin/packages/apr/package.py
+++ b/var/spack/repos/builtin/packages/apr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,11 @@
from spack import *
-class Apr(Package):
+class Apr(AutotoolsPackage):
"""Apache portable runtime."""
- homepage = 'https://apr.apache.org/'
- url = 'http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz'
- version('1.5.2', '98492e965963f852ab29f9e61b2ad700')
+ homepage = 'https://apr.apache.org/'
+ url = 'http://archive.apache.org/dist/apr/apr-1.6.2.tar.gz'
- def install(self, spec, prefix):
- options = ['--prefix=%s' % prefix]
- configure(*options)
- make()
- make('install')
+ version('1.6.2', '8672e78514e3fcef2643127c524bf0f9')
+ version('1.5.2', '98492e965963f852ab29f9e61b2ad700')
diff --git a/var/spack/repos/builtin/packages/archer/package.py b/var/spack/repos/builtin/packages/archer/package.py
new file mode 100644
index 0000000000..87ced1051a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/archer/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Archer(CMakePackage):
+ """ARCHER, a data race detection tool for large OpenMP applications."""
+
+ homepage = "https://github.com/PRUNERS/ARCHER"
+ url = "https://github.com/PRUNERS/archer/archive/v1.0.0.tar.gz"
+
+ version('1.0.0', '790bfaf00b9f57490eb609ecabfe954a')
+
+ depends_on('cmake@3.4.3:', type='build')
+ depends_on('llvm')
+ depends_on('ninja@1.5:', type='build')
+ depends_on('llvm-openmp-ompt')
+
+ generator = 'Ninja'
+
+ def cmake_args(self):
+ return [
+ '-DCMAKE_C_COMPILER=clang',
+ '-DCMAKE_CXX_COMPILER=clang++',
+ '-DOMP_PREFIX:PATH=%s' % self.spec['llvm-openmp-ompt'].prefix,
+ ]
diff --git a/var/spack/repos/builtin/packages/argtable/package.py b/var/spack/repos/builtin/packages/argtable/package.py
new file mode 100644
index 0000000000..f622e29837
--- /dev/null
+++ b/var/spack/repos/builtin/packages/argtable/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Argtable(AutotoolsPackage):
+ """Argtable is an ANSI C library for parsing GNU style command line
+ options with a minimum of fuss.
+ """
+
+ homepage = "http://argtable.sourceforge.net/"
+ url = "https://sourceforge.net/projects/argtable/files/argtable/argtable-2.13/argtable2-13.tar.gz/download"
+
+ version('2-13', '156773989d0d6406cea36526d3926668')
diff --git a/var/spack/repos/builtin/packages/arlecore/package.py b/var/spack/repos/builtin/packages/arlecore/package.py
new file mode 100644
index 0000000000..69de30423d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/arlecore/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import distutils.dir_util
+
+
+class Arlecore(Package):
+ """An Integrated Software for Population Genetics Data Analysis"""
+
+ homepage = "http://cmpg.unibe.ch/software/arlequin35/"
+ url = "http://cmpg.unibe.ch/software/arlequin35/linux/arlecore_linux.zip"
+
+ version('3.5.2.2', '347a589fc609f359eb61557a2e8ceb2f')
+
+ depends_on('r', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ distutils.dir_util.copy_tree(".", prefix)
diff --git a/var/spack/repos/builtin/packages/armadillo/package.py b/var/spack/repos/builtin/packages/armadillo/package.py
index 2336da4520..2037f552d8 100644
--- a/var/spack/repos/builtin/packages/armadillo/package.py
+++ b/var/spack/repos/builtin/packages/armadillo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Armadillo(Package):
+class Armadillo(CMakePackage):
"""Armadillo is a high quality linear algebra library (matrix maths)
for the C++ language, aiming towards a good balance between speed and
ease of use."""
@@ -33,40 +33,42 @@ class Armadillo(Package):
homepage = "http://arma.sourceforge.net/"
url = "http://sourceforge.net/projects/arma/files/armadillo-7.200.1.tar.xz"
+ version('8.100.1', 'd9762d6f097e0451d0cfadfbda295e7c')
+ version('7.950.1', 'c06eb38b12cae49cab0ce05f96147147')
+ # NOTE: v7.900.1 download url seems broken is no v7.950.1?
+ version('7.900.1', '5ef71763bd429a3d481499878351f3be')
version('7.500.0', '7d316fdf3c3c7ea92b64704180ae315d')
version('7.200.2', 'b21585372d67a8876117fd515d8cf0a2')
version('7.200.1', 'ed86d6df0058979e107502e1fe3e469e')
variant('hdf5', default=False, description='Include HDF5 support')
- depends_on('cmake@2.8:', type='build')
+ depends_on('cmake@2.8.12:', type='build')
depends_on('arpack-ng') # old arpack causes undefined symbols
depends_on('blas')
depends_on('lapack')
depends_on('superlu@5.2:')
depends_on('hdf5', when='+hdf5')
- def install(self, spec, prefix):
- arpack = find_libraries(['libarpack'], root=spec[
- 'arpack-ng'].prefix.lib, shared=True)
- superlu = find_libraries(['libsuperlu'], root=spec[
- 'superlu'].prefix, shared=False, recurse=True)
- cmake_args = [
+ # Adds an `#undef linux` to prevent preprocessor expansion of include
+ # directories with `linux` in them getting transformed into a 1.
+ # E.g. `/path/linux-x86_64/dir` -> `/path/1-x86_64/dir` if/when a linux
+ # platform's compiler is adding `#define linux 1`.
+ patch('undef_linux.patch', when='platform=linux')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ return [
# ARPACK support
- '-DARPACK_LIBRARY={0}'.format(arpack.joined()),
+ '-DARPACK_LIBRARY={0}'.format(spec['arpack-ng'].libs.joined(";")),
# BLAS support
- '-DBLAS_LIBRARY={0}'.format(spec['blas'].blas_libs.joined()),
+ '-DBLAS_LIBRARY={0}'.format(spec['blas'].libs.joined(";")),
# LAPACK support
- '-DLAPACK_LIBRARY={0}'.format(spec['lapack'].lapack_libs.joined()),
+ '-DLAPACK_LIBRARY={0}'.format(spec['lapack'].libs.joined(";")),
# SuperLU support
'-DSuperLU_INCLUDE_DIR={0}'.format(spec['superlu'].prefix.include),
- '-DSuperLU_LIBRARY={0}'.format(superlu.joined()),
+ '-DSuperLU_LIBRARY={0}'.format(spec['superlu'].libs.joined(";")),
# HDF5 support
'-DDETECT_HDF5={0}'.format('ON' if '+hdf5' in spec else 'OFF')
]
-
- cmake_args.extend(std_cmake_args)
- cmake('.', *cmake_args)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/armadillo/undef_linux.patch b/var/spack/repos/builtin/packages/armadillo/undef_linux.patch
new file mode 100644
index 0000000000..68b434dca8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/armadillo/undef_linux.patch
@@ -0,0 +1,4 @@
+--- a/include/armadillo_bits/compiler_setup.hpp
++++ b/include/armadillo_bits/compiler_setup.hpp
+@@ -0,0 +1 @@
++#undef linux
diff --git a/var/spack/repos/builtin/packages/arpack-ng/package.py b/var/spack/repos/builtin/packages/arpack-ng/package.py
index a1c18d8086..a784baf1cc 100644
--- a/var/spack/repos/builtin/packages/arpack-ng/package.py
+++ b/var/spack/repos/builtin/packages/arpack-ng/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -56,6 +56,7 @@ class ArpackNg(Package):
homepage = 'https://github.com/opencollab/arpack-ng'
url = 'https://github.com/opencollab/arpack-ng/archive/3.3.0.tar.gz'
+ version('3.5.0', '9762c9ae6d739a9e040f8201b1578874')
version('3.4.0', 'ae9ca13f2143a7ea280cb0e2fd4bfae4')
version('3.3.0', 'ed3648a23f0a868a43ef44c97a21bad5')
@@ -80,6 +81,19 @@ class ArpackNg(Package):
depends_on('mpi', when='+mpi')
+ @property
+ def libs(self):
+ # TODO: do we need spec['arpack-ng:parallel'].libs ?
+ # query_parameters = self.spec.last_query.extra_parameters
+ libraries = ['libarpack']
+
+ if '+mpi' in self.spec:
+ libraries = ['libparpack'] + libraries
+
+ return find_libraries(
+ libraries, root=self.prefix, shared=True, recurse=True
+ )
+
@when('@3.4.0:')
def install(self, spec, prefix):
@@ -88,8 +102,8 @@ class ArpackNg(Package):
options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % prefix)
# Make sure we use Spack's blas/lapack:
- lapack_libs = spec['lapack'].lapack_libs.joined(';')
- blas_libs = spec['blas'].blas_libs.joined(';')
+ lapack_libs = spec['lapack'].libs.joined(';')
+ blas_libs = spec['blas'].libs.joined(';')
options.extend([
'-DLAPACK_FOUND=true',
@@ -114,7 +128,7 @@ class ArpackNg(Package):
make('test')
make('install')
- @when('@3.3.0')
+ @when('@3.3.0') # noqa
def install(self, spec, prefix):
# Apparently autotools are not bootstrapped
which('libtoolize')()
@@ -129,8 +143,8 @@ class ArpackNg(Package):
])
options.extend([
- '--with-blas={0}'.format(spec['blas'].blas_libs.ld_flags),
- '--with-lapack={0}'.format(spec['lapack'].lapack_libs.ld_flags)
+ '--with-blas={0}'.format(spec['blas'].libs.ld_flags),
+ '--with-lapack={0}'.format(spec['lapack'].libs.ld_flags)
])
if '+shared' not in spec:
options.append('--enable-shared=no')
diff --git a/var/spack/repos/builtin/packages/arpack/package.py b/var/spack/repos/builtin/packages/arpack/package.py
deleted file mode 100644
index 91b5f06a4a..0000000000
--- a/var/spack/repos/builtin/packages/arpack/package.py
+++ /dev/null
@@ -1,73 +0,0 @@
-##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
-# Produced at the Lawrence Livermore National Laboratory.
-#
-# This file is part of Spack.
-# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
-# LLNL-CODE-647188
-#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License (as
-# published by the Free Software Foundation) version 2.1, February 1999.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
-# conditions of the GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-##############################################################################
-from spack import *
-import os
-
-
-class Arpack(Package):
- """A collection of Fortran77 subroutines designed to solve large scale
- eigenvalue problems."""
-
- homepage = "http://www.caam.rice.edu/software/ARPACK/"
- url = "http://www.caam.rice.edu/software/ARPACK/SRC/arpack96.tar.gz"
-
- version('96', 'fffaa970198b285676f4156cebc8626e')
-
- depends_on('blas')
- depends_on('lapack')
-
- def patch(self):
- makefile = FileFilter('ARmake.inc')
-
- # Section 1: Paths and Libraries
-
- # Change the build directory
- makefile.filter('^home.*', 'home = %s' % os.getcwd())
-
- # Use external BLAS/LAPACK
- makefile.filter('^BLASdir.*',
- 'BLASdir = %s' % self.spec['blas'].prefix)
- makefile.filter('^LAPACKdir.*',
- 'LAPACKdir = %s' % self.spec['lapack'].prefix)
-
- # Do not include the platform in the library name
- makefile.filter('^PLAT.*', 'PLAT = ')
- makefile.filter('^ARPACKLIB.*', 'ARPACKLIB = $(home)/libarpack.a')
-
- # Section 2: Compilers
-
- # Be sure to use the Spack compiler wrapper
- makefile.filter('^FC.*', 'FC = {0}'.format(os.environ['F77']))
- makefile.filter('^FFLAGS.*', 'FFLAGS = -O2 -g -fPIC')
-
- if not which('ranlib'):
- makefile.filter('^RANLIB.*', 'RANLIB = touch')
-
- def install(self, spec, prefix):
- with working_dir('SRC'):
- make('all')
-
- mkdir(prefix.lib)
- install('libarpack.a', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/ascent/package.py b/var/spack/repos/builtin/packages/ascent/package.py
new file mode 100644
index 0000000000..854bf1e909
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ascent/package.py
@@ -0,0 +1,333 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+
+from spack import *
+
+import socket
+import os
+
+import llnl.util.tty as tty
+from os import environ as env
+
+
+def cmake_cache_entry(name, value):
+ """
+ Helper that creates CMake cache entry strings used in
+ 'host-config' files.
+ """
+ return 'set({0} "{1}" CACHE PATH "")\n\n'.format(name, value)
+
+
+class Ascent(Package):
+ """Ascent is an open source many-core capable lightweight in situ
+ visualization and analysis infrastructure for multi-physics HPC
+ simulations."""
+
+ homepage = "https://github.com/Alpine-DAV/ascent"
+ url = "https://github.com/Alpine-DAV/ascent"
+
+ maintainers = ['cyrush']
+
+ version('develop',
+ git='https://github.com/Alpine-DAV/ascent.git',
+ branch='develop',
+ submodules=True)
+
+ ###########################################################################
+ # package variants
+ ###########################################################################
+
+ variant("shared", default=True, description="Build Conduit as shared libs")
+
+ variant("cmake", default=True,
+ description="Build CMake (if off, attempt to use cmake from PATH)")
+
+ variant("mpi", default=True, description="Build Ascent MPI Support")
+
+ # variants for python support
+ variant("python", default=True, description="Build Conduit Python support")
+
+ # variants for runtime features
+
+ variant("vtkh", default=True,
+ description="Build VTK-h filter and rendering support")
+
+ variant("tbb", default=True, description="Build tbb support")
+ variant("cuda", default=False, description="Build cuda support")
+
+ variant("adios", default=True, description="Build Adios filter support")
+
+ # variants for dev-tools (docs, etc)
+ variant("doc", default=False, description="Build Conduit's documentation")
+
+ ###########################################################################
+ # package dependencies
+ ###########################################################################
+
+ depends_on("cmake", when="+cmake")
+ depends_on("conduit")
+
+ #######################
+ # Python
+ #######################
+ # we need a shared version of python b/c linking with static python lib
+ # causes duplicate state issues when running compiled python modules.
+ depends_on("python+shared")
+ extends("python", when="+python")
+ # TODO: blas and lapack are disabled due to build
+ # issues Cyrus experienced on OSX 10.11.6
+ depends_on("py-numpy~blas~lapack", when="+python", type=('build', 'run'))
+
+ #######################
+ # MPI
+ #######################
+ depends_on("mpi", when="+mpi")
+ depends_on("py-mpi4py", when="+python+mpi")
+
+ #############################
+ # TPLs for Runtime Features
+ #############################
+
+ depends_on("vtkh", when="+vtkh")
+ depends_on("vtkh+cuda", when="+vtkh+cuda")
+ depends_on("adios", when="+adios")
+
+ #######################
+ # Documentation related
+ #######################
+ depends_on("py-sphinx", when="+python+doc", type='build')
+
+ def install(self, spec, prefix):
+ """
+ Build and install Conduit.
+ """
+ with working_dir('spack-build', create=True):
+ host_cfg_fname = self.create_host_config(spec, prefix)
+ cmake_args = []
+ # if we have a static build, we need to avoid any of
+ # spack's default cmake settings related to rpaths
+ # (see: https://github.com/LLNL/spack/issues/2658)
+ if "+shared" in spec:
+ cmake_args.extend(std_cmake_args)
+ else:
+ for arg in std_cmake_args:
+ if arg.count("RPATH") == 0:
+ cmake_args.append(arg)
+ cmake_args.extend(["-C", host_cfg_fname, "../src"])
+ cmake(*cmake_args)
+ make()
+ make("install")
+ # TODO also copy host_cfg_fname into install
+
+ def create_host_config(self, spec, prefix):
+ """
+ This method creates a 'host-config' file that specifies
+ all of the options used to configure and build ascent.
+ """
+
+ #######################
+ # Compiler Info
+ #######################
+ c_compiler = env["SPACK_CC"]
+ cpp_compiler = env["SPACK_CXX"]
+ f_compiler = None
+
+ if self.compiler.fc:
+ # even if this is set, it may not exist so do one more sanity check
+ if os.path.isfile(env["SPACK_FC"]):
+ f_compiler = env["SPACK_FC"]
+
+ #######################################################################
+ # By directly fetching the names of the actual compilers we appear
+ # to doing something evil here, but this is necessary to create a
+ # 'host config' file that works outside of the spack install env.
+ #######################################################################
+
+ sys_type = spec.architecture
+ # if on llnl systems, we can use the SYS_TYPE
+ if "SYS_TYPE" in env:
+ sys_type = env["SYS_TYPE"]
+
+ ##############################################
+ # Find and record what CMake is used
+ ##############################################
+
+ if "+cmake" in spec:
+ cmake_exe = spec['cmake'].command.path
+ else:
+ cmake_exe = which("cmake")
+ if cmake_exe is None:
+ msg = 'failed to find CMake (and cmake variant is off)'
+ raise RuntimeError(msg)
+ cmake_exe = cmake_exe.path
+
+ host_cfg_fname = "%s-%s-%s.cmake" % (socket.gethostname(),
+ sys_type,
+ spec.compiler)
+
+ cfg = open(host_cfg_fname, "w")
+ cfg.write("##################################\n")
+ cfg.write("# spack generated host-config\n")
+ cfg.write("##################################\n")
+ cfg.write("# {0}-{1}\n".format(sys_type, spec.compiler))
+ cfg.write("##################################\n\n")
+
+ # Include path to cmake for reference
+ cfg.write("# cmake from spack \n")
+ cfg.write("# cmake executable path: %s\n\n" % cmake_exe)
+
+ #######################
+ # Compiler Settings
+ #######################
+
+ cfg.write("#######\n")
+ cfg.write("# using %s compiler spec\n" % spec.compiler)
+ cfg.write("#######\n\n")
+ cfg.write("# c compiler used by spack\n")
+ cfg.write(cmake_cache_entry("CMAKE_C_COMPILER", c_compiler))
+ cfg.write("# cpp compiler used by spack\n")
+ cfg.write(cmake_cache_entry("CMAKE_CXX_COMPILER", cpp_compiler))
+
+ cfg.write("# fortran compiler used by spack\n")
+ if f_compiler is not None:
+ cfg.write(cmake_cache_entry("ENABLE_FORTRAN", "ON"))
+ cfg.write(cmake_cache_entry("CMAKE_Fortran_COMPILER", f_compiler))
+ else:
+ cfg.write("# no fortran compiler found\n\n")
+ cfg.write(cmake_cache_entry("ENABLE_FORTRAN", "OFF"))
+
+ #######################################################################
+ # Core Dependencies
+ #######################################################################
+
+ #######################
+ # Conduit
+ #######################
+
+ cfg.write("# conduit from spack \n")
+ cfg.write(cmake_cache_entry("CONDUIT_DIR", spec['conduit'].prefix))
+
+ #######################################################################
+ # Optional Dependencies
+ #######################################################################
+
+ #######################
+ # Python
+ #######################
+
+ cfg.write("# Python Support\n")
+
+ if "+python" in spec:
+ cfg.write("# Enable python module builds\n")
+ cfg.write(cmake_cache_entry("ENABLE_PYTHON", "ON"))
+ cfg.write("# python from spack \n")
+ cfg.write(cmake_cache_entry("PYTHON_EXECUTABLE",
+ spec['python'].command.path))
+ # install module to standard style site packages dir
+ # so we can support spack activate
+ cfg.write(cmake_cache_entry("PYTHON_MODULE_INSTALL_PREFIX",
+ site_packages_dir))
+ else:
+ cfg.write(cmake_cache_entry("ENABLE_PYTHON", "OFF"))
+
+ if "+doc" in spec:
+ cfg.write(cmake_cache_entry("ENABLE_DOCS", "ON"))
+
+ cfg.write("# sphinx from spack \n")
+ sphinx_build_exe = join_path(spec['py-sphinx'].prefix.bin,
+ "sphinx-build")
+ cfg.write(cmake_cache_entry("SPHINX_EXECUTABLE", sphinx_build_exe))
+
+ cfg.write("# doxygen from uberenv\n")
+ doxygen_exe = spec['doxygen'].command.path
+ cfg.write(cmake_cache_entry("DOXYGEN_EXECUTABLE", doxygen_exe))
+ else:
+ cfg.write(cmake_cache_entry("ENABLE_DOCS", "OFF"))
+
+ #######################
+ # MPI
+ #######################
+
+ cfg.write("# MPI Support\n")
+
+ if "+mpi" in spec:
+ cfg.write(cmake_cache_entry("ENABLE_MPI", "ON"))
+ cfg.write(cmake_cache_entry("MPI_C_COMPILER", spec['mpi'].mpicc))
+ cfg.write(cmake_cache_entry("MPI_CXX_COMPILER",
+ spec['mpi'].mpicxx))
+ cfg.write(cmake_cache_entry("MPI_Fortran_COMPILER",
+ spec['mpi'].mpifc))
+ else:
+ cfg.write(cmake_cache_entry("ENABLE_MPI", "OFF"))
+
+ #######################
+ # CUDA
+ #######################
+
+ cfg.write("# CUDA Support\n")
+
+ if "+cuda" in spec:
+ cfg.write(cmake_cache_entry("ENABLE_CUDA", "ON"))
+ else:
+ cfg.write(cmake_cache_entry("ENABLE_CUDA", "OFF"))
+
+ #######################
+ # VTK-h
+ #######################
+
+ cfg.write("# vtk-h support \n")
+
+ if "+vtkh" in spec:
+ cfg.write("# tbb from spack\n")
+ cfg.write(cmake_cache_entry("TBB_DIR", spec['tbb'].prefix))
+
+ cfg.write("# vtk-m from spack\n")
+ cfg.write(cmake_cache_entry("VTKM_DIR", spec['vtkm'].prefix))
+
+ cfg.write("# vtk-h from spack\n")
+ cfg.write(cmake_cache_entry("VTKH_DIR", spec['vtkh'].prefix))
+ else:
+ cfg.write("# vtk-h not built by spack \n")
+
+ #######################
+ # Adios
+ #######################
+
+ cfg.write("# adios support\n")
+
+ if "+adios" in spec:
+ cfg.write(cmake_cache_entry("ADIOS_DIR", spec['adios'].prefix))
+ else:
+ cfg.write("# adios not built by spack \n")
+
+ cfg.write("##################################\n")
+ cfg.write("# end spack generated host-config\n")
+ cfg.write("##################################\n")
+ cfg.close()
+
+ host_cfg_fname = os.path.abspath(host_cfg_fname)
+ tty.info("spack generated conduit host-config file: " + host_cfg_fname)
+ return host_cfg_fname
diff --git a/var/spack/repos/builtin/packages/asciidoc/package.py b/var/spack/repos/builtin/packages/asciidoc/package.py
index 552030d965..885fc02404 100644
--- a/var/spack/repos/builtin/packages/asciidoc/package.py
+++ b/var/spack/repos/builtin/packages/asciidoc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Asciidoc(Package):
+class Asciidoc(AutotoolsPackage):
"""A presentable text document format for writing articles, UNIX man
pages and other small to medium sized documents."""
@@ -38,9 +38,3 @@ class Asciidoc(Package):
depends_on('libxslt')
depends_on('docbook-xml')
depends_on('docbook-xsl')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/aspa/package.py b/var/spack/repos/builtin/packages/aspa/package.py
new file mode 100644
index 0000000000..3686ffe4ea
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aspa/package.py
@@ -0,0 +1,71 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Aspa(MakefilePackage):
+ """A fundamental premise in ExMatEx is that scale-bridging performed in
+ heterogeneous MPMD materials science simulations will place important
+ demands upon the exascale ecosystem that need to be identified and
+ quantified.
+ """
+ tags = ['proxy-app']
+ homepage = "http://www.exmatex.org/aspa.html"
+ url = "https://github.com/exmatex/ASPA/archive/master.tar.gz"
+
+ version('master', git='https://github.com/exmatex/ASPA.git',
+ description='master')
+ variant('mpi', default=True, description='Build with MPI Support')
+
+ depends_on('lapack')
+ depends_on('blas')
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5')
+
+ @property
+ def build_targets(self):
+ targets = [
+ '--directory=exec',
+ '--file=Makefile',
+ 'LIBS={0} {1} {2}'.format(self.spec['lapack'].libs.ld_flags,
+ self.spec['blas'].libs.ld_flags,
+ self.spec['hdf5'].libs.ld_flags),
+ 'CXX={0}'.format(self.spec['mpi'].mpicxx)
+ ]
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+ mkdirp(prefix.input)
+ install('exec/aspa', prefix.bin)
+ install('exec/README', prefix.doc)
+ install('exec/aspa.inp', prefix.input)
+ install('exec/kriging_model_centers.txt', prefix.input)
+ install('exec/point_data.txt', prefix.input)
+ install('exec/value_data.txt', prefix.input)
+ for files in glob.glob('doc/*.*'):
+ install(files, prefix.doc)
diff --git a/var/spack/repos/builtin/packages/aspell/package.py b/var/spack/repos/builtin/packages/aspell/package.py
new file mode 100644
index 0000000000..c24a50ef39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aspell/package.py
@@ -0,0 +1,85 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from llnl.util.link_tree import LinkTree
+import spack.store
+from spack.package import ExtensionError, ExtensionConflictError
+
+
+# See also: AspellDictPackage
+class Aspell(AutotoolsPackage):
+ """GNU Aspell is a Free and Open Source spell checker designed to
+ eventually replace Ispell."""
+
+ homepage = "http://aspell.net/"
+ url = "https://ftpmirror.gnu.org/aspell/aspell-0.60.6.1.tar.gz"
+
+ extendable = True # support activating dictionaries
+
+ version('0.60.6.1', 'e66a9c9af6a60dc46134fdacf6ce97d7')
+
+ # The dictionaries install all their bits into their prefix.lib dir,
+ # we want to link them into aspell's dict-dir.
+ # These are identical to what's in spack/package.py except
+ # for using:
+ # - extension.prefix.lib instead of extension.prefix in LinkTree()
+ # - dest_dir instead of self.prefix in tree.(find_conflict|merge)()
+ def activate(self, extension, **kwargs):
+ extensions_layout = kwargs.get("extensions_layout",
+ spack.store.extensions)
+ if extensions_layout is not spack.store.extensions:
+ raise ExtensionError(
+ 'aspell does not support non-global extensions')
+
+ aspell = which(self.prefix.bin.aspell)
+ dest_dir = aspell('dump', 'config', 'dict-dir', output=str).strip()
+ tree = LinkTree(extension.prefix.lib)
+
+ def ignore(filename):
+ return (filename in spack.store.layout.hidden_file_paths or
+ kwargs.get('ignore', lambda f: False)(filename))
+
+ conflict = tree.find_conflict(dest_dir, ignore=ignore)
+ if conflict:
+ raise ExtensionConflictError(conflict)
+
+ tree.merge(dest_dir, ignore=ignore)
+
+ def deactivate(self, extension, **kwargs):
+ extensions_layout = kwargs.get("extensions_layout",
+ spack.store.extensions)
+ if extensions_layout is not spack.store.extensions:
+ raise ExtensionError(
+ 'aspell does not support non-global extensions')
+
+ aspell = which(self.prefix.bin.aspell)
+ dest_dir = aspell('dump', 'config', 'dict-dir', output=str).strip()
+
+ def ignore(filename):
+ return (filename in spack.store.layout.hidden_file_paths or
+ kwargs.get('ignore', lambda f: False)(filename))
+
+ tree = LinkTree(extension.prefix.lib)
+ tree.unmerge(dest_dir, ignore=ignore)
diff --git a/var/spack/repos/builtin/packages/aspell6-de/package.py b/var/spack/repos/builtin/packages/aspell6-de/package.py
new file mode 100644
index 0000000000..5a4b1c82d8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aspell6-de/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Aspell6De(AspellDictPackage):
+ """German (de) dictionary for aspell."""
+
+ homepage = "http://aspell.net/"
+ url = "ftp://ftp.gnu.org/gnu/aspell/dict/de/aspell6-de-20030222-1.tar.bz2"
+
+ version('6-de-20030222-1', '5950c5c8a36fc93d4d7616591bace6a6')
diff --git a/var/spack/repos/builtin/packages/aspell6-en/package.py b/var/spack/repos/builtin/packages/aspell6-en/package.py
new file mode 100644
index 0000000000..38d6caeabd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aspell6-en/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Aspell6En(AspellDictPackage):
+ """English (en) dictionary for aspell."""
+
+ homepage = "http://aspell.net/"
+ url = "ftp://ftp.gnu.org/gnu/aspell/dict/en/aspell6-en-2017.01.22-0.tar.bz2"
+
+ version('2017.01.22-0', 'a6e002076574de9dc4915967032a1dab')
diff --git a/var/spack/repos/builtin/packages/aspell6-es/package.py b/var/spack/repos/builtin/packages/aspell6-es/package.py
new file mode 100644
index 0000000000..84a798d41a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/aspell6-es/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Aspell6Es(AspellDictPackage):
+ """Spanish (es) dictionary for aspell."""
+
+ homepage = "http://aspell.net/"
+ url = "ftp://ftp.gnu.org/gnu/aspell/dict/es/aspell6-es-1.11-2.tar.bz2"
+
+ version('1.11-2', '8406336a89c64e47e96f4153d0af70c4')
diff --git a/var/spack/repos/builtin/packages/assimp/package.py b/var/spack/repos/builtin/packages/assimp/package.py
new file mode 100644
index 0000000000..dd9b414772
--- /dev/null
+++ b/var/spack/repos/builtin/packages/assimp/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Assimp(CMakePackage):
+ """Open Asset Import Library (Assimp) is a portable Open Source library to
+ import various well-known 3D model formats in a uniform manner."""
+
+ homepage = "https://www.assimp.org"
+ url = "https://github.com/assimp/assimp/archive/v3.3.1.tar.gz"
+
+ version('4.0.1', '23a6301c728a413aafbfa1cca19ba91f')
+
+ depends_on('boost')
+
+ def cmake_args(self):
+ args = ['-DASSIMP_BUILD_TESTS=OFF']
+ return args
diff --git a/var/spack/repos/builtin/packages/astra/package.py b/var/spack/repos/builtin/packages/astra/package.py
index e32e70cada..694a394c69 100644
--- a/var/spack/repos/builtin/packages/astra/package.py
+++ b/var/spack/repos/builtin/packages/astra/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/astral/astral.sh b/var/spack/repos/builtin/packages/astral/astral.sh
new file mode 100644
index 0000000000..3f530d7f4e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/astral/astral.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the astral jar file
+java $JAVA_ARGS $JAVA_OPTS -jar astral.jar "$@"
diff --git a/var/spack/repos/builtin/packages/astral/package.py b/var/spack/repos/builtin/packages/astral/package.py
new file mode 100644
index 0000000000..11d8b0ed23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/astral/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Astral(Package):
+ """ASTRAL is a tool for estimating an unrooted species tree given a set of
+ unrooted gene trees."""
+
+ homepage = "https://github.com/smirarab/ASTRAL"
+ url = "https://github.com/smirarab/ASTRAL/archive/v4.10.7.tar.gz"
+
+ version('4.10.7', '38c81020570254e3f5c75d6c3c27fc6d')
+
+ depends_on('java', type=('build', 'run'))
+
+ phases = ['build', 'install']
+
+ def build(self, spec, prefix):
+ make = Executable('./make.sh')
+ make()
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install_tree('lib', prefix.tools.lib)
+ jar_file = 'astral.{v}.jar'.format(v=self.version)
+ install(jar_file, prefix.tools)
+
+ script_sh = join_path(os.path.dirname(__file__), "astral.sh")
+ script = prefix.bin.astral
+ install(script_sh, script)
+ set_executable(script)
+
+ java = self.spec['java'].prefix.bin.java
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('astral.jar', join_path(prefix.tools, jar_file),
+ script, **kwargs)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('ASTRAL_HOME', self.prefix.tools)
diff --git a/var/spack/repos/builtin/packages/astyle/package.py b/var/spack/repos/builtin/packages/astyle/package.py
index 16c59469fa..62e7204168 100644
--- a/var/spack/repos/builtin/packages/astyle/package.py
+++ b/var/spack/repos/builtin/packages/astyle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,18 +32,25 @@ class Astyle(MakefilePackage):
"""
homepage = "http://astyle.sourceforge.net/"
- url = "http://downloads.sourceforge.net/project/astyle/astyle/astyle%202.04/astyle_2.04_linux.tar.gz"
+ # homepage is dead use Gentoo Mirror
+ # url = "http://downloads.sourceforge.net/project/astyle/astyle/astyle%202.04/astyle_2.04_linux.tar.gz"
+ url = "http://distfiles.gentoo.org/distfiles/astyle_3.0.1_linux.tar.gz"
+ maintainers = ['davydden']
+
+ version('3.0.1', 'c301f09679efa2e1eb6e6b5fd33788b4')
+ version('2.06', 'ff588e7fcede824591cf5b9085df109d')
version('2.05.1', '4142d178047d7040da3e0e2f1b030a1a')
- version('2.04', '30b1193a758b0909d06e7ee8dd9627f6')
+ version('2.04', '30b1193a758b0909d06e7ee8dd9627f6')
parallel = False
+ @property
def build_directory(self):
return join_path(self.stage.source_path, 'build', self.compiler.name)
def edit(self, spec, prefix):
- makefile = join_path(self.build_directory(), 'Makefile')
+ makefile = join_path(self.build_directory, 'Makefile')
filter_file(r'^CXX\s*=.*', 'CXX=%s' % spack_cxx, makefile)
# strangely enough install -o $(USER) -g $(USER) stoped working on OSX
if sys.platform == 'darwin':
diff --git a/var/spack/repos/builtin/packages/atk/package.py b/var/spack/repos/builtin/packages/atk/package.py
index 0a7d48774d..93ce88bb8a 100644
--- a/var/spack/repos/builtin/packages/atk/package.py
+++ b/var/spack/repos/builtin/packages/atk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Atk(Package):
+class Atk(AutotoolsPackage):
"""ATK provides the set of accessibility interfaces that are
implemented by other toolkits and applications. Using the ATK
interfaces, accessibility tools have full access to view and
@@ -38,13 +38,15 @@ class Atk(Package):
depends_on('glib')
depends_on('pkg-config', type='build')
+ depends_on('gobject-introspection')
def url_for_version(self, version):
"""Handle atk's version-based custom URLs."""
url = 'http://ftp.gnome.org/pub/gnome/sources/atk'
return url + '/%s/atk-%s.tar.xz' % (version.up_to(2), version)
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
+ run_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/atlas/package.py b/var/spack/repos/builtin/packages/atlas/package.py
index 51f0fced2b..7f5652bad4 100644
--- a/var/spack/repos/builtin/packages/atlas/package.py
+++ b/var/spack/repos/builtin/packages/atlas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import os
+
from spack import *
-from spack.package_test import *
-from spack.util.executable import Executable
-import os.path
+from spack.package_test import compile_c_and_execute, compare_output_file
class Atlas(Package):
@@ -54,7 +54,13 @@ class Atlas(Package):
url='http://sourceforge.net/projects/math-atlas/files/Developer%20%28unstable%29/3.11.34/atlas3.11.34.tar.bz2')
variant('shared', default=True, description='Builds shared library')
- variant('pthread', default=False, description='Use multithreaded libraries')
+
+ variant(
+ 'threads', default='none',
+ description='Multithreading support',
+ values=('pthreads', 'none'),
+ multi=False
+ )
provides('blas')
provides('lapack')
@@ -110,14 +116,15 @@ class Atlas(Package):
make('shared_all')
make("install")
- self.install_test()
+ if self.run_tests:
+ self.install_test()
@property
- def blas_libs(self):
+ def libs(self):
# libsatlas.[so,dylib,dll ] contains all serial APIs (serial lapack,
# serial BLAS), and all ATLAS symbols needed to support them. Whereas
# libtatlas.[so,dylib,dll ] is parallel (multithreaded) version.
- is_threaded = '+pthread' in self.spec
+ is_threaded = self.spec.satisfies('threads=pthreads')
if '+shared' in self.spec:
to_find = ['libtatlas'] if is_threaded else ['libsatlas']
shared = True
@@ -135,10 +142,6 @@ class Atlas(Package):
to_find, root=self.prefix, shared=shared, recurse=True
)
- @property
- def lapack_libs(self):
- return self.blas_libs
-
def install_test(self):
source_file = join_path(os.path.dirname(self.module.__file__),
'test_cblas_dgemm.c')
@@ -146,7 +149,7 @@ class Atlas(Package):
'test_cblas_dgemm.output')
include_flags = ["-I%s" % self.spec.prefix.include]
- link_flags = self.lapack_libs.ld_flags.split()
+ link_flags = self.libs.ld_flags.split()
output = compile_c_and_execute(source_file, include_flags, link_flags)
compare_output_file(output, blessed_file)
diff --git a/var/spack/repos/builtin/packages/atompaw/package.py b/var/spack/repos/builtin/packages/atompaw/package.py
index 17d0ef8209..c86a5c5de5 100644
--- a/var/spack/repos/builtin/packages/atompaw/package.py
+++ b/var/spack/repos/builtin/packages/atompaw/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -49,7 +49,7 @@ class Atompaw(Package):
def install(self, spec, prefix):
options = ['--prefix=%s' % prefix]
- linalg = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ linalg = spec['lapack'].libs + spec['blas'].libs
options.extend([
"--with-linalg-libs=%s" % linalg.ld_flags,
"--enable-libxc",
diff --git a/var/spack/repos/builtin/packages/atop/package.py b/var/spack/repos/builtin/packages/atop/package.py
index e3a9d464a9..6c59ee4dbe 100644
--- a/var/spack/repos/builtin/packages/atop/package.py
+++ b/var/spack/repos/builtin/packages/atop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,6 +32,9 @@ class Atop(Package):
version('2.2-3', '034dc1544f2ec4e4d2c739d320dc326d')
+ depends_on('zlib')
+ depends_on('ncurses')
+
def install(self, spec, prefix):
make()
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/augustus/package.py b/var/spack/repos/builtin/packages/augustus/package.py
new file mode 100644
index 0000000000..d79cde02c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/augustus/package.py
@@ -0,0 +1,72 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Augustus(MakefilePackage):
+ """AUGUSTUS is a program that predicts genes in eukaryotic
+ genomic sequences"""
+
+ homepage = "http://bioinf.uni-greifswald.de/augustus/"
+ url = "http://bioinf.uni-greifswald.de/augustus/binaries/augustus-3.3.tar.gz"
+
+ version('3.3', '9ebe494df78ebf6a43091cfc8551050c')
+ version('3.2.3', 'b8c47ea8d0c45aa7bb9a82626c8ff830',
+ url='http://bioinf.uni-greifswald.de/augustus/binaries/old/augustus-3.2.3.tar.gz')
+
+ depends_on('bamtools')
+ depends_on('gsl')
+ depends_on('boost')
+ depends_on('zlib')
+
+ def edit(self, spec, prefix):
+ with working_dir(join_path('auxprogs', 'filterBam', 'src')):
+ makefile = FileFilter('Makefile')
+ makefile.filter('BAMTOOLS = .*', 'BAMTOOLS = %s' % self.spec[
+ 'bamtools'].prefix)
+ makefile.filter('INCLUDES = *',
+ 'INCLUDES = -I$(BAMTOOLS)/include/bamtools ')
+ makefile.filter('LIBS = -lbamtools -lz',
+ 'LIBS = $(BAMTOOLS)/lib/bamtools'
+ '/libbamtools.a -lz')
+ with working_dir(join_path('auxprogs', 'bam2hints')):
+ makefile = FileFilter('Makefile')
+ makefile.filter('# Variable definition',
+ 'BAMTOOLS = %s' % self.spec['bamtools'].prefix)
+ makefile.filter('INCLUDES = /usr/include/bamtools',
+ 'INCLUDES = $(BAMTOOLS)/include/bamtools')
+ makefile.filter('LIBS = -lbamtools -lz',
+ 'LIBS = $(BAMTOOLS)/lib/bamtools'
+ '/libbamtools.a -lz')
+
+ def install(self, spec, prefix):
+ install_tree('bin', join_path(self.spec.prefix, 'bin'))
+ install_tree('config', join_path(self.spec.prefix, 'config'))
+ install_tree('scripts', join_path(self.spec.prefix, 'scripts'))
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('AUGUSTUS_CONFIG_PATH', join_path(
+ self.prefix, 'config'))
+ run_env.prepend_path('PATH', join_path(self.prefix, 'scripts'))
diff --git a/var/spack/repos/builtin/packages/autoconf/package.py b/var/spack/repos/builtin/packages/autoconf/package.py
index d812350ae8..f178a6e264 100644
--- a/var/spack/repos/builtin/packages/autoconf/package.py
+++ b/var/spack/repos/builtin/packages/autoconf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,7 +36,32 @@ class Autoconf(AutotoolsPackage):
version('2.59', 'd4d45eaa1769d45e59dcb131a4af17a0')
version('2.13', '9de56d4a161a723228220b0f425dc711')
- depends_on('m4@1.4.6:', type='build')
+ # Note: m4 is not a pure build-time dependency of autoconf. m4 is
+ # needed when autoconf runs, not only when autoconf is built.
+ depends_on('m4@1.4.6:', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+
+ build_directory = 'spack-build'
+
+ def patch(self):
+ # The full perl shebang might be too long; we have to fix this here
+ # because autom4te is called during the build
+ filter_file('^#! @PERL@ -w',
+ '#! /usr/bin/env perl',
+ 'bin/autom4te.in')
+
+ @run_after('install')
+ def filter_sbang(self):
+ # We have to do this after install because otherwise the install
+ # target will try to rebuild the binaries (filter_file updates the
+ # timestamps)
+ perl = join_path(self.spec['perl'].prefix.bin, 'perl')
+
+ # Revert sbang, so Spack's sbang hook can fix it up
+ filter_file('^#! /usr/bin/env perl',
+ '#! {0} -w'.format(perl),
+ '{0}/autom4te'.format(self.prefix.bin),
+ backup=False)
def _make_executable(self, name):
return Executable(join_path(self.prefix.bin, name))
diff --git a/var/spack/repos/builtin/packages/autodock-vina/main.patch b/var/spack/repos/builtin/packages/autodock-vina/main.patch
new file mode 100644
index 0000000000..aafd780f64
--- /dev/null
+++ b/var/spack/repos/builtin/packages/autodock-vina/main.patch
@@ -0,0 +1,29 @@
+--- autodock_vina_1_1_2/src/main/main.cpp 2011-05-11 15:35:00.000000000 -0500
++++ autodock_vina_1_1_2/src/main/main.cpp 2017-09-11 10:06:44.939452217 -0500
+@@ -47,7 +47,7 @@
+ using boost::filesystem::path;
+
+ path make_path(const std::string& str) {
+- return path(str, boost::filesystem::native);
++ return path(str);
+ }
+
+ void doing(int verbosity, const std::string& str, tee& log) {
+@@ -661,7 +661,7 @@
+ cpu, seed, verbosity, max_modes_sz, energy_range, log);
+ }
+ catch(file_error& e) {
+- std::cerr << "\n\nError: could not open \"" << e.name.native_file_string() << "\" for " << (e.in ? "reading" : "writing") << ".\n";
++ std::cerr << "\n\nError: could not open \"" << e.name.filename() << "\" for " << (e.in ? "reading" : "writing") << ".\n";
+ return 1;
+ }
+ catch(boost::filesystem::filesystem_error& e) {
+@@ -673,7 +673,7 @@
+ return 1;
+ }
+ catch(parse_error& e) {
+- std::cerr << "\n\nParse error on line " << e.line << " in file \"" << e.file.native_file_string() << "\": " << e.reason << '\n';
++ std::cerr << "\n\nParse error on line " << e.line << " in file \"" << e.file.filename() << "\": " << e.reason << '\n';
+ return 1;
+ }
+ catch(std::bad_alloc&) {
diff --git a/var/spack/repos/builtin/packages/autodock-vina/package.py b/var/spack/repos/builtin/packages/autodock-vina/package.py
new file mode 100644
index 0000000000..255839e894
--- /dev/null
+++ b/var/spack/repos/builtin/packages/autodock-vina/package.py
@@ -0,0 +1,72 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from shutil import copyfile
+from shutil import copymode
+import sys
+
+
+class AutodockVina(MakefilePackage):
+ """AutoDock Vina is an open-source program for doing molecular docking"""
+
+ homepage = "http://vina.scripps.edu/"
+ url = "http://vina.scripps.edu/download/autodock_vina_1_1_2.tgz"
+
+ version('1_1_2', 'b467b71ee77dd155b65b1c5364e4220f')
+
+ depends_on('boost@1.65.0')
+
+ # Replacing depecrated function call of boost with current function call
+ patch('main.patch')
+ patch('split.patch')
+
+ @property
+ def build_directory(self):
+ if sys.platform == "darwin":
+ return join_path('build', 'mac', 'release')
+ else:
+ return join_path('build', 'linux', 'release')
+
+ def edit(self, spec, prefix):
+ with working_dir(self.build_directory):
+ makefile = FileFilter('Makefile')
+ makefile.filter('BOOST_INCLUDE = .*', 'BOOST_INCLUDE = %s' %
+ self.spec['boost'].prefix.include)
+ makefile.filter('C_PLATFORM=.*', 'C_PLATFORM=-pthread')
+ makefile.filter('GPP=.*', 'GPP=%s' % spack_cc)
+ mcp = FileFilter('../../makefile_common')
+ mcp.filter('LIBS = ', 'LIBS = -l stdc++ -lm ')
+
+ def build(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make()
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ mkdirp(prefix.bin)
+ copyfile("vina", join_path(prefix.bin, "vina"))
+ copymode("vina", join_path(prefix.bin, "vina"))
+ copyfile("vina_split", join_path(prefix.bin, "vina_split"))
+ copymode("vina_split", join_path(prefix.bin, "vina_split"))
diff --git a/var/spack/repos/builtin/packages/autodock-vina/split.patch b/var/spack/repos/builtin/packages/autodock-vina/split.patch
new file mode 100644
index 0000000000..e369d62216
--- /dev/null
+++ b/var/spack/repos/builtin/packages/autodock-vina/split.patch
@@ -0,0 +1,29 @@
+--- autodock_vina_1_1_2/src/split/split.cpp 2011-05-11 15:35:00.000000000 -0500
++++ autodock_vina_1_1_2/src/split/split.cpp 2017-09-11 10:06:44.933452243 -0500
+@@ -38,7 +38,7 @@
+ using boost::filesystem::path;
+
+ path make_path(const std::string& str) {
+- return path(str, boost::filesystem::native);
++ return path(str);
+ }
+
+ std::string default_prefix(const std::string& input_name, const std::string& add) {
+@@ -208,7 +208,7 @@
+ write_multimodel_pdbqt(tmp, ligand_prefix, flex_prefix);
+ }
+ catch(file_error& e) {
+- std::cerr << "\n\nError: could not open \"" << e.name.native_file_string() << "\" for " << (e.in ? "reading" : "writing") << ".\n";
++ std::cerr << "\n\nError: could not open \"" << e.name.filename() << "\" for " << (e.in ? "reading" : "writing") << ".\n";
+ return 1;
+ }
+ catch(boost::filesystem::filesystem_error& e) {
+@@ -220,7 +220,7 @@
+ return 1;
+ }
+ catch(parse_error& e) {
+- std::cerr << "\n\nParse error on line " << e.line << " in file \"" << e.file.native_file_string() << "\": " << e.reason << '\n';
++ std::cerr << "\n\nParse error on line " << e.line << " in file \"" << e.file.filename() << "\": " << e.reason << '\n';
+ return 1;
+ }
+ catch(std::bad_alloc&) {
diff --git a/var/spack/repos/builtin/packages/autogen/package.py b/var/spack/repos/builtin/packages/autogen/package.py
new file mode 100644
index 0000000000..4198ab1589
--- /dev/null
+++ b/var/spack/repos/builtin/packages/autogen/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Autogen(AutotoolsPackage):
+ """AutoGen is a tool designed to simplify the creation and maintenance of
+ programs that contain large amounts of repetitious text. It is especially
+ valuable in programs that have several blocks of text that must be kept
+ synchronized."""
+
+ homepage = "https://www.gnu.org/software/autogen/index.html"
+ url = "https://ftp.gnu.org/gnu/autogen/rel5.18.12/autogen-5.18.12.tar.gz"
+ list_url = "https://ftp.gnu.org/gnu/autogen"
+ list_depth = 1
+
+ version('5.18.12', '551d15ccbf5b5fc5658da375d5003389')
+
+ variant('xml', default=True, description='Enable XML support')
+
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ depends_on('guile@1.8:2.0')
+ depends_on('libxml2', when='+xml')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ # `make check` fails without this
+ # Adding a gettext dependency does not help
+ '--disable-nls',
+ ]
+
+ if '+xml' in spec:
+ args.append('--with-libxml2={0}'.format(spec['libxml2'].prefix))
+ else:
+ args.append('--without-libxml2')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/automaded/package.py b/var/spack/repos/builtin/packages/automaded/package.py
index 7e586b2991..7b227afb9d 100644
--- a/var/spack/repos/builtin/packages/automaded/package.py
+++ b/var/spack/repos/builtin/packages/automaded/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Automaded(Package):
+class Automaded(CMakePackage):
"""AutomaDeD (Automata-based Debugging for Dissimilar parallel
tasks) is a tool for automatic diagnosis of performance and
correctness problems in MPI applications. It creates
@@ -45,9 +45,7 @@ class Automaded(Package):
depends_on('mpi')
depends_on('boost')
depends_on('callpath')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8:', type='build')
- def install(self, spec, prefix):
- cmake("-DSTATE_TRACKER_WITH_CALLPATH=ON", *std_cmake_args)
- make()
- make("install")
+ def cmake_args(self):
+ return ['-DSTATE_TRACKER_WITH_CALLPATH=ON']
diff --git a/var/spack/repos/builtin/packages/automake/package.py b/var/spack/repos/builtin/packages/automake/package.py
index 6c0a47ff95..2140612b7f 100644
--- a/var/spack/repos/builtin/packages/automake/package.py
+++ b/var/spack/repos/builtin/packages/automake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,13 +29,24 @@ class Automake(AutotoolsPackage):
"""Automake -- make file builder part of autotools"""
homepage = 'http://www.gnu.org/software/automake/'
- url = 'http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gz'
+ url = 'http://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz'
+ version('1.15.1', '95df3f2d6eb8f81e70b8cb63a93c8853')
version('1.15', '716946a105ca228ab545fc37a70df3a3')
version('1.14.1', 'd052a3e884631b9c7892f2efce542d75')
version('1.11.6', '0286dc30295b62985ca51919202ecfcc')
depends_on('autoconf', type='build')
+ depends_on('perl', type=('build', 'run'))
+
+ build_directory = 'spack-build'
+
+ def patch(self):
+ # The full perl shebang might be too long
+ for file in ('aclocal', 'automake'):
+ filter_file('^#!@PERL@ -w',
+ '#!/usr/bin/env perl',
+ 't/wrap/{0}.in'.format(file))
def _make_executable(self, name):
return Executable(join_path(self.prefix.bin, name))
diff --git a/var/spack/repos/builtin/packages/bamtools/package.py b/var/spack/repos/builtin/packages/bamtools/package.py
index 7bb1985003..a45cf38b80 100644
--- a/var/spack/repos/builtin/packages/bamtools/package.py
+++ b/var/spack/repos/builtin/packages/bamtools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,23 +23,25 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import os
-class Bamtools(Package):
+class Bamtools(CMakePackage):
"""C++ API & command-line toolkit for working with BAM data."""
homepage = "https://github.com/pezmaster31/bamtools"
url = "https://github.com/pezmaster31/bamtools/archive/v2.4.0.tar.gz"
+ version('2.4.1', '41cadf513f2744256851accac2bc7baa')
version('2.4.0', '6139d00c1b1fe88fe15d094d8a74d8b9')
version('2.3.0', 'd327df4ba037d6eb8beef65d7da75ebc')
version('2.2.3', '6eccd3e45e4ba12a68daa3298998e76d')
- depends_on('cmake', type='build')
+ depends_on('zlib', type='link')
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
-
- make()
- make('install')
+ def cmake_args(self):
+ args = []
+ rpath = self.rpath
+ rpath.append(os.path.join(self.prefix.lib, "bamtools"))
+ args.append("-DCMAKE_INSTALL_RPATH=%s" % ':'.join(rpath))
+ return args
diff --git a/var/spack/repos/builtin/packages/bamutil/libstatgen-issue-9.patch b/var/spack/repos/builtin/packages/bamutil/libstatgen-issue-9.patch
new file mode 100644
index 0000000000..23435f7c3c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bamutil/libstatgen-issue-9.patch
@@ -0,0 +1,11 @@
+--- a/libStatGen/general/PedigreeLoader.cpp 2017-05-29 11:08:07.627528417 -0700
++++ b/libStatGen/general/PedigreeLoader.cpp 2017-05-29 11:08:36.247547411 -0700
+@@ -636,7 +636,7 @@
+ return 2;
+ default :
+ {
+- bool result = atoi(code);
++ int result = atoi(code);
+
+ if (result != 0 && result != 1 && result != 2)
+ {
diff --git a/var/spack/repos/builtin/packages/bamutil/package.py b/var/spack/repos/builtin/packages/bamutil/package.py
new file mode 100644
index 0000000000..d739fe1f84
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bamutil/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bamutil(MakefilePackage):
+ """bamUtil is a repository that contains several programs
+ that perform operations on SAM/BAM files. All of these programs
+ are built into a single executable, bam.
+ """
+
+ homepage = "http://genome.sph.umich.edu/wiki/BamUtil"
+ url = "http://genome.sph.umich.edu/w/images/7/70/BamUtilLibStatGen.1.0.13.tgz"
+
+ version('1.0.13', '08b7d0bb1d60be104a11f0e54ddf4a79')
+
+ # Looks like this will be fixed in 1.0.14.
+ # https://github.com/statgen/libStatGen/issues/9
+ patch('libstatgen-issue-9.patch', when='@1.0.13:')
+
+ parallel = False
+
+ @property
+ def install_targets(self):
+ return ['install', 'INSTALLDIR={0}'.format(self.prefix.bin)]
diff --git a/var/spack/repos/builtin/packages/bash-completion/package.py b/var/spack/repos/builtin/packages/bash-completion/package.py
index 666a1bef13..2e59e6247e 100644
--- a/var/spack/repos/builtin/packages/bash-completion/package.py
+++ b/var/spack/repos/builtin/packages/bash-completion/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,10 +25,10 @@
from spack import *
-class BashCompletion(Package):
+class BashCompletion(AutotoolsPackage):
"""Programmable completion functions for bash."""
homepage = "https://github.com/scop/bash-completion"
- url = "https://github.com/scop/bash-completion/archive/2.3.tar.gz"
+ url = "https://github.com/scop/bash-completion/archive/2.3.tar.gz"
version('2.3', '67e50f5f3c804350b43f2b664c33dde811d24292')
version('develop', git='https://github.com/scop/bash-completion.git')
@@ -41,16 +41,9 @@ class BashCompletion(Package):
# Other dependencies
depends_on('bash@4.1:', type='run')
- def install(self, spec, prefix):
- make_args = ['--prefix=%s' % prefix]
-
- autoreconf('-i')
- configure(*make_args)
- make()
- # make("check") # optional, requires dejagnu and tcllib
- make("install",
- parallel=False)
-
+ @run_after('install')
+ def show_message_to_user(self):
+ prefix = self.prefix
# Guidelines for individual user as provided by the author at
# https://github.com/scop/bash-completion
print('=====================================================')
@@ -59,6 +52,6 @@ class BashCompletion(Package):
print('')
print('# Use bash-completion, if available')
print('[[ $PS1 && -f %s/share/bash-completion/bash_completion ]] && \ ' % prefix) # NOQA: ignore=E501
- print(' . %s/share/bash-completion/bash_completion' % prefix)
+ print(' . %s/share/bash-completion/bash_completion' % prefix)
print('')
print('=====================================================')
diff --git a/var/spack/repos/builtin/packages/bash/package.py b/var/spack/repos/builtin/packages/bash/package.py
index e0cd114635..478edccd99 100644
--- a/var/spack/repos/builtin/packages/bash/package.py
+++ b/var/spack/repos/builtin/packages/bash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,21 +25,27 @@
from spack import *
-class Bash(Package):
+class Bash(AutotoolsPackage):
"""The GNU Project's Bourne Again SHell."""
homepage = "https://www.gnu.org/software/bash/"
- url = "ftp://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz"
+ url = "https://ftp.gnu.org/gnu/bash/bash-4.4.tar.gz"
+ version('4.4', '148888a7c95ac23705559b6f477dfe25')
version('4.3', '81348932d5da294953e15d4814c74dd1')
- depends_on('readline')
+ depends_on('ncurses')
+ depends_on('readline@5.0:')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix,
- '--with-curses',
- '--with-installed-readline=%s' % spec['readline'].prefix)
+ def configure_args(self):
+ spec = self.spec
- make()
- make("tests")
- make("install")
+ return [
+ 'LIBS=-lncursesw',
+ '--with-curses',
+ '--enable-readline',
+ '--with-installed-readline={0}'.format(spec['readline'].prefix),
+ ]
+
+ def check(self):
+ make('tests')
diff --git a/var/spack/repos/builtin/packages/bats/package.py b/var/spack/repos/builtin/packages/bats/package.py
new file mode 100644
index 0000000000..4ee05c5a1c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bats/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bats(Package):
+ """Bats is a TAP-compliant testing framework for Bash."""
+
+ homepage = "https://github.com/sstephenson/bats"
+ url = "https://github.com/sstephenson/bats/archive/v0.4.0.tar.gz"
+
+ version('0.4.0', 'aeeddc0b36b8321930bf96fce6ec41ee')
+
+ def install(self, spec, prefix):
+ bash = which("bash")
+ bash('install.sh', prefix)
diff --git a/var/spack/repos/builtin/packages/bazel/package.py b/var/spack/repos/builtin/packages/bazel/package.py
index 94ac73cbd2..ff9817be97 100644
--- a/var/spack/repos/builtin/packages/bazel/package.py
+++ b/var/spack/repos/builtin/packages/bazel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,26 +32,36 @@ class Bazel(Package):
"""Bazel is Google's own build tool"""
homepage = "https://www.bazel.io"
- url = "https://github.com/bazelbuild/bazel/archive/0.3.1.tar.gz"
+ url = "https://github.com/bazelbuild/bazel/releases/download/0.5.0/bazel-0.5.0-dist.zip"
+ version('0.4.5', '2b737be42678900470ae9e48c975ac5b2296d9ae23c007bf118350dbe7c0552b')
+ version('0.4.4', '5e7c52b89071efc41277e2f0057d258f')
version('0.3.1', '5c959467484a7fc7dd2e5e4a1e8e866b')
version('0.3.0', '33a2cb457d28e1bee9282134769b9283')
version('0.2.3', '393a491d690e43caaba88005efe6da91')
version('0.2.2b', '75081804f073cbd194da1a07b16cba5f')
version('0.2.2', '644bc4ea7f429d835e74f255dc1054e6')
- depends_on('jdk@8:')
+ depends_on('java@8:')
+ depends_on('zip')
+
patch('fix_env_handling.patch')
patch('link.patch')
patch('cc_configure.patch')
+ def url_for_version(self, version):
+ if version >= Version('0.4.1'):
+ return 'https://github.com/bazelbuild/bazel/releases/download/{0}/bazel-{0}-dist.zip'.format(version)
+ else:
+ return 'https://github.com/bazelbuild/bazel/archive/{0}.tar.gz'.format(version)
+
def install(self, spec, prefix):
bash = which('bash')
bash('-c', './compile.sh')
mkdir(prefix.bin)
install('output/bazel', prefix.bin)
- def setup_dependent_package(self, module, dep_spec):
+ def setup_dependent_package(self, module, dependent_spec):
class BazelExecutable(Executable):
"""Special callable executable object for bazel so the user can
specify parallel or not on a per-invocation basis. Using
@@ -82,8 +92,8 @@ class Bazel(Package):
return super(BazelExecutable, self).__call__(*args, **kwargs)
jobs = cpu_count()
- if not dep_spec.package.parallel:
+ if not dependent_spec.package.parallel:
jobs = 1
- elif dep_spec.package.make_jobs:
- jobs = dep_spec.package.make_jobs
+ elif dependent_spec.package.make_jobs:
+ jobs = dependent_spec.package.make_jobs
module.bazel = BazelExecutable('bazel', 'build', jobs)
diff --git a/var/spack/repos/builtin/packages/bbcp/package.py b/var/spack/repos/builtin/packages/bbcp/package.py
index 5d5e64a390..f72b4fcb12 100644
--- a/var/spack/repos/builtin/packages/bbcp/package.py
+++ b/var/spack/repos/builtin/packages/bbcp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/bbmap/package.py b/var/spack/repos/builtin/packages/bbmap/package.py
new file mode 100644
index 0000000000..15d7d880c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bbmap/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bbmap(Package):
+ """Short read aligner for DNA and RNA-seq data."""
+
+ homepage = "http://sourceforge.net/projects/bbmap/"
+ url = "https://downloads.sourceforge.net/project/bbmap/BBMap_37.36.tar.gz"
+
+ version('37.36', '1e1086e1fae490a7d03c5a065b1c262f')
+
+ depends_on('java')
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/bcftools/package.py b/var/spack/repos/builtin/packages/bcftools/package.py
index a1b4a06dbb..b1cccc1f21 100644
--- a/var/spack/repos/builtin/packages/bcftools/package.py
+++ b/var/spack/repos/builtin/packages/bcftools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,9 +34,15 @@ class Bcftools(Package):
homepage = "http://samtools.github.io/bcftools/"
url = "https://github.com/samtools/bcftools/releases/download/1.3.1/bcftools-1.3.1.tar.bz2"
+ version('1.6', 'c4dba1e8cb55db0f94b4c47724b4f9fa')
+ version('1.4', '50ccf0a073bd70e99cdb3c8be830416e')
version('1.3.1', '575001e9fca37cab0c7a7287ad4b1cdb')
+ version('1.2', '8044bed8fce62f7072fc6835420f0906')
- depends_on('zlib')
+ depends_on('htslib@1.6', when='@1.6')
+ depends_on('htslib@1.4', when='@1.4')
+ depends_on('htslib@1.3.1', when='@1.3.1')
+ depends_on('htslib@1.2', when='@1.2')
def install(self, spec, prefix):
make("prefix=%s" % prefix, "all")
diff --git a/var/spack/repos/builtin/packages/bcl2fastq2/cmake-macros.patch b/var/spack/repos/builtin/packages/bcl2fastq2/cmake-macros.patch
new file mode 100644
index 0000000000..a799ef68e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bcl2fastq2/cmake-macros.patch
@@ -0,0 +1,10 @@
+--- a/src/cmake/bcl2fastq_redist_macros.cmake 2017-05-11 15:03:27.652495488 -0700
++++ b/src/cmake/bcl2fastq_redist_macros.cmake 2017-05-11 15:06:38.326745889 -0700
+@@ -30,6 +30,7 @@
+ message(" Found: ${libname}, correct version ${version}")
+ message(" ${${libname}_UPPER}_INCLUDE_DIR = ${${${libname}_UPPER}_INCLUDE_DIR}")
+ message(" ${${libname}_UPPER}_LIBRARIES = ${${${libname}_UPPER}_LIBRARIES}")
++ set (HAVE_${${libname}_UPPER} true CACHE BOOL "package" FORCE)
+ else("${${${libname}_UPPER}_VERSION_STRING}" STREQUAL "${version}")
+ message(" Not found: ${libname}, incorrect version ( ${${${libname}_UPPER}_VERSION} )")
+ set(${${libname}_UPPER}_FOUND "FALSE")
diff --git a/var/spack/repos/builtin/packages/bcl2fastq2/cxxConfigure-cmake.patch b/var/spack/repos/builtin/packages/bcl2fastq2/cxxConfigure-cmake.patch
new file mode 100644
index 0000000000..4452bb31c1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bcl2fastq2/cxxConfigure-cmake.patch
@@ -0,0 +1,12 @@
+--- a/src/cmake/cxxConfigure.cmake 2017-05-11 16:55:14.745107845 -0700
++++ b/src/cmake/cxxConfigure.cmake 2017-05-11 17:16:39.355981745 -0700
+@@ -101,6 +101,9 @@
+ if((NOT HAVE_LIBXML2) OR (NOT HAVE_LIBXSLT))
+ find_package_version(LibXml2 ${BCL2FASTQ_LIBXML2_VERSION})
+ find_package_version(LibXslt ${BCL2FASTQ_LIBXSLT_VERSION})
++ # macro isn't ONLY for redist, see its definition...
++ string(REGEX REPLACE "/include$" "" LIBEXSLT_HINT ${LIBXSLT_INCLUDE_DIR})
++ find_library_redist(LIBEXSLT ${LIBEXSLT_HINT} libexslt/exslt.h exslt)
+ endif((NOT HAVE_LIBXML2) OR (NOT HAVE_LIBXSLT))
+
+ if((NOT HAVE_LIBXML2) OR (NOT HAVE_LIBXSLT))
diff --git a/var/spack/repos/builtin/packages/bcl2fastq2/package.py b/var/spack/repos/builtin/packages/bcl2fastq2/package.py
new file mode 100644
index 0000000000..173bb050ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bcl2fastq2/package.py
@@ -0,0 +1,110 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+import shutil
+import llnl.util.tty as tty
+
+
+# This application uses cmake to build, but they wrap it with a
+# configure script that performs dark magic. This package does it
+# their way.
+class Bcl2fastq2(Package):
+ """The bcl2fastq2 Conversion Software converts base
+ call (BCL) files from a sequencing run into FASTQ
+ files."""
+
+ homepage = "https://support.illumina.com/downloads/bcl2fastq-conversion-software-v2-18.html"
+
+ version('2.19.1.403', 'baba7a02767fd868e87cb36781d2be26')
+ version('2.18.0.12', 'fbe06492117f65609c41be0c27e3215c')
+ # 2.17.1.14 is no longer distributed. If you have a copy of the
+ # source tarball, you can drop it into a local mirror w/ the name
+ # mirror/bcl2fastq2/bcl2fastq2-2.17.1.14.zip and go from there.
+ version('2.17.1.14', '7426226c6db095862e636b95c38608d3')
+
+ depends_on('boost@1.54.0')
+ depends_on('cmake@2.8.9:')
+ depends_on('libxml2@2.7.8')
+ depends_on('libxslt@1.1.26~crypto')
+ depends_on('libgcrypt')
+ depends_on('zlib')
+
+ # Their cmake macros don't set the flag when they find a library
+ # that makes them happy.
+ patch('cmake-macros.patch')
+ # After finding the libxslt bits, cmake still needs to wire in the
+ # libexslt bits.
+ patch('cxxConfigure-cmake.patch')
+
+ root_cmakelists_dir = 'src'
+
+ # v2.17.1.14 and v2.18.0.12 were available via HTTP.
+ # v2.19.1.403 is only available via ftp.
+ # who knows what the future will hold.
+ def url_for_version(self, version):
+ if version.string == '2.19.1.403':
+ return "ftp://webdata2:webdata2@ussd-ftp.illumina.com/downloads/software/bcl2fastq/bcl2fastq2-v2.19.1-tar.zip"
+ else:
+ url = "https://support.illumina.com/content/dam/illumina-support/documents/downloads/software/bcl2fastq/bcl2fastq2-v{0}-tar.zip"
+ # - required to change the version from dots to dashes.
+ return url.format(version.dashed)
+
+ # Illumina tucks the source inside a gzipped tarball inside a zip
+ # file. We let the normal Spack expansion bit unzip the zip file,
+ # then follow it with a function untars the tarball after Spack's
+ # done it's bit.
+ def do_stage(self, mirror_only=False):
+ # wrap (decorate) the standard expand_archive step with a
+ # helper, then call the real do_stage().
+ self.stage.expand_archive = self.unpack_it(self.stage.expand_archive)
+ super(Bcl2fastq2, self).do_stage(mirror_only)
+
+ def unpack_it(self, f):
+ def wrap():
+ f() # call the original expand_archive()
+ with working_dir(self.stage.path):
+ if os.path.isdir('bcl2fastq'):
+ tty.msg("The tarball has already been unpacked")
+ else:
+ tty.msg("Unpacking bcl2fastq2 tarball")
+ tty.msg("cwd sez: {0}".format(os.getcwd()))
+ tarball = 'bcl2fastq2-v{0}.tar.gz'.format(
+ self.version.dotted)
+ shutil.move(join_path('spack-expanded-archive', tarball),
+ '.')
+ os.rmdir('spack-expanded-archive')
+ tar = which('tar')
+ tar('-xf', tarball)
+ tty.msg("Finished unpacking bcl2fastq2 tarball")
+ return wrap
+
+ def install(self, spec, prefix):
+ bash = which('bash')
+ bash("src/configure", "--prefix={0}".format(prefix),
+ "--with-cmake={0}".format(join_path(spec['cmake'].prefix.bin,
+ "cmake")))
+ make()
+ make("install")
diff --git a/var/spack/repos/builtin/packages/bdftopcf/package.py b/var/spack/repos/builtin/packages/bdftopcf/package.py
index 095f0c1bd4..a85bcf5307 100644
--- a/var/spack/repos/builtin/packages/bdftopcf/package.py
+++ b/var/spack/repos/builtin/packages/bdftopcf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Bdftopcf(Package):
+class Bdftopcf(AutotoolsPackage):
"""bdftopcf is a font compiler for the X server and font server. Fonts
in Portable Compiled Format can be read by any architecture, although
the file is structured to allow one particular architecture to read
@@ -41,10 +41,6 @@ class Bdftopcf(Package):
depends_on('libxfont')
depends_on('pkg-config@0.9.0:', type='build')
+ depends_on('xproto', type='build')
+ depends_on('fontsproto', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/bdw-gc/package.py b/var/spack/repos/builtin/packages/bdw-gc/package.py
index 5120266319..7971dae506 100644
--- a/var/spack/repos/builtin/packages/bdw-gc/package.py
+++ b/var/spack/repos/builtin/packages/bdw-gc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,14 @@
from spack import *
-class BdwGc(Package):
+class BdwGc(AutotoolsPackage):
"""The Boehm-Demers-Weiser conservative garbage collector is a garbage
collecting replacement for C malloc or C++ new."""
homepage = "http://www.hboehm.info/gc/"
- url = "http://www.hboehm.info/gc/gc_source/gc-7.4.4.tar.gz"
+ url = "http://www.hboehm.info/gc/gc_source/gc-7.6.0.tar.gz"
+ version('7.6.0', 'bf46ccbdaccfa3186c2ab87191c8855a')
version('7.4.4', '96d18b0448a841c88d56e4ab3d180297')
variant('libatomic-ops', default=True,
@@ -39,15 +40,12 @@ class BdwGc(Package):
depends_on('libatomic-ops', when='+libatomic-ops')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
+
config_args = [
- '--prefix={0}'.format(prefix),
'--with-libatomic-ops={0}'.format(
'yes' if '+libatomic-ops' in spec else 'no')
]
- configure(*config_args)
-
- make()
- make('check')
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/bear/package.py b/var/spack/repos/builtin/packages/bear/package.py
index f52050d7b9..f3f46b1025 100644
--- a/var/spack/repos/builtin/packages/bear/package.py
+++ b/var/spack/repos/builtin/packages/bear/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,14 @@
from spack import *
-class Bear(Package):
+class Bear(CMakePackage):
"""Bear is a tool that generates a compilation database for clang tooling
from non-cmake build systems."""
homepage = "https://github.com/rizsotto/Bear"
url = "https://github.com/rizsotto/Bear/archive/2.0.4.tar.gz"
+ version('2.2.0', '87250cc3a9a697e7d1e8972253a35259')
version('2.0.4', 'fd8afb5e8e18f8737ba06f90bd77d011')
- depends_on('cmake', type='build')
- depends_on("python")
-
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
-
- make("all")
- make("install")
+ depends_on('python')
+ depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/beast2/package.py b/var/spack/repos/builtin/packages/beast2/package.py
new file mode 100644
index 0000000000..88066116a2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/beast2/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Beast2(Package):
+ """BEAST is a cross-platform program for Bayesian inference using MCMC
+ of molecular sequences. It is entirely orientated towards rooted,
+ time-measured phylogenies inferred using strict or relaxed molecular
+ clock models. It can be used as a method of reconstructing phylogenies
+ but is also a framework for testing evolutionary hypotheses without
+ conditioning on a single tree topology."""
+
+ homepage = "http://beast2.org/"
+ url = "https://github.com/CompEvol/beast2/releases/download/v2.4.6/BEAST.v2.4.6.Linux.tgz"
+
+ version('2.4.6', 'b446f4ab121df9b991f7bb7ec94c8217')
+
+ depends_on('java')
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('BEAST', self.prefix)
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('examples', join_path(self.prefix, 'examples'))
+ install_tree('images', join_path(self.prefix, 'images'))
+ install_tree('lib', prefix.lib)
+ install_tree('templates', join_path(self.prefix, 'templates'))
diff --git a/var/spack/repos/builtin/packages/bedtools2/package.py b/var/spack/repos/builtin/packages/bedtools2/package.py
index 46f3185154..5956491f1b 100644
--- a/var/spack/repos/builtin/packages/bedtools2/package.py
+++ b/var/spack/repos/builtin/packages/bedtools2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,6 +36,7 @@ class Bedtools2(Package):
version('2.26.0', '52227e7efa6627f0f95d7d734973233d')
version('2.25.0', '534fb4a7bf0d0c3f05be52a0160d8e3d')
+ version('2.23.0', '4fa3671b3a3891eefd969ad3509222e3')
depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/beforelight/package.py b/var/spack/repos/builtin/packages/beforelight/package.py
index 37a91f5614..457c547a16 100644
--- a/var/spack/repos/builtin/packages/beforelight/package.py
+++ b/var/spack/repos/builtin/packages/beforelight/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Beforelight(Package):
+class Beforelight(AutotoolsPackage):
"""The beforelight program is a sample implementation of a screen saver
for X servers supporting the MIT-SCREEN-SAVER extension. It is only
recommended for use as a code sample, as it does not include features
@@ -42,9 +42,3 @@ class Beforelight(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/gbenchmark/package.py b/var/spack/repos/builtin/packages/benchmark/package.py
index 1c54f60243..8c4dc6ec1f 100644
--- a/var/spack/repos/builtin/packages/gbenchmark/package.py
+++ b/var/spack/repos/builtin/packages/benchmark/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,25 @@
from spack import *
-class Gbenchmark(CMakePackage):
+class Benchmark(CMakePackage):
"""A microbenchmark support library"""
homepage = "https://github.com/google/benchmark"
- url = "https://github.com/google/benchmark/archive/v1.0.0.tar.gz"
+ url = "https://github.com/google/benchmark/archive/v1.1.0.tar.gz"
- version('1.1.0', '8c539bbe2a212618fa87b6c38fba087100b6e4ae')
- version('1.0.0', '4f778985dce02d2e63262e6f388a24b595254a93')
+ version('develop', branch='master',
+ git='https://github.com/google/benchmark.git')
- def build_type(self):
- return "Release"
+ # first properly installed CMake config packages in
+ # 1.2.0 release: https://github.com/google/benchmark/issues/363
+ version('1.2.0', '48d0b090cd7a84af2c4a28c8dc963c74')
+ version('1.1.0', '66b2a23076cf70739525be0092fc3ae3')
+ version('1.0.0', '1474ff826f8cd68067258db75a0835b8')
+
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo',
+ 'MinSizeRel', 'Coverage'))
def patch(self):
filter_file(
@@ -48,12 +56,3 @@ class Gbenchmark(CMakePackage):
r'##### add_cxx_compiler_flag(-Werror',
'CMakeLists.txt'
)
-
- def cmake_args(self, spec, prefix):
- if self.compiler.name == 'intel':
- return [
- "-DCMAKE_CXX_FLAGS=-no-ansi-alias -fno-strict-aliasing",
- "-DCMAKE_C_FLAGS=-no-ansi-alias -fno-strict-aliasing",
- "-DBENCHMARK_ENABLE_TESTING=OFF"
- ]
- return []
diff --git a/var/spack/repos/builtin/packages/berkeley-db/package.py b/var/spack/repos/builtin/packages/berkeley-db/package.py
new file mode 100644
index 0000000000..3962ef3472
--- /dev/null
+++ b/var/spack/repos/builtin/packages/berkeley-db/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class BerkeleyDb(AutotoolsPackage):
+ """Oracle Berkeley DB"""
+
+ homepage = "http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/overview/index.html"
+ url = "http://download.oracle.com/berkeley-db/db-5.3.28.tar.gz"
+
+ version('5.3.28', 'b99454564d5b4479750567031d66fe24')
+ version('6.0.35', 'c65a4d3e930a116abaaf69edfc697f25')
+ version('6.1.29', '7f4d47302dfec698fe088e5285c9098e')
+ version('6.2.32', '33491b4756cb44b91c3318b727e71023')
+
+ configure_directory = 'dist'
+ build_directory = 'spack-build'
+
+ def url_for_version(self, version):
+ # newer version need oracle login, so get them from gentoo mirror
+ return 'http://distfiles.gentoo.org/distfiles/db-{0}.tar.gz'.format(version)
+
+ def configure_args(self):
+ return ['--disable-static', '--enable-cxx', '--enable-stl']
diff --git a/var/spack/repos/builtin/packages/bertini/package.py b/var/spack/repos/builtin/packages/bertini/package.py
index 7dd17a062e..dc3e746eae 100644
--- a/var/spack/repos/builtin/packages/bertini/package.py
+++ b/var/spack/repos/builtin/packages/bertini/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Bertini(Package):
+class Bertini(AutotoolsPackage):
"""Bertini is a general-purpose solver, written in C, that was created
for research about polynomial continuation. It solves for the numerical
solution of systems of polynomial equations using homotopy continuation."""
@@ -42,9 +42,3 @@ class Bertini(Package):
depends_on('gmp')
depends_on('mpfr')
depends_on('mpi', when='+mpi')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/bib2xhtml/package.py b/var/spack/repos/builtin/packages/bib2xhtml/package.py
index b356038180..3c9bab772e 100644
--- a/var/spack/repos/builtin/packages/bib2xhtml/package.py
+++ b/var/spack/repos/builtin/packages/bib2xhtml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,9 +33,6 @@ class Bib2xhtml(Package):
version('3.0-15-gf506', 'a26ba02fe0053bbbf2277bdf0acf8645')
- def url_for_version(self, v):
- return ('http://www.spinellis.gr/sw/textproc/bib2xhtml/bib2xhtml-v%s.tar.gz' % v)
-
def install(self, spec, prefix):
# Add the bst include files to the install directory
bst_include = join_path(prefix.share, 'bib2xhtml')
diff --git a/var/spack/repos/builtin/packages/bigreqsproto/package.py b/var/spack/repos/builtin/packages/bigreqsproto/package.py
index 61fd9c5121..e271e12777 100644
--- a/var/spack/repos/builtin/packages/bigreqsproto/package.py
+++ b/var/spack/repos/builtin/packages/bigreqsproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Bigreqsproto(Package):
+class Bigreqsproto(AutotoolsPackage):
"""Big Requests Extension.
This extension defines a protocol to enable the use of requests
@@ -38,8 +38,3 @@ class Bigreqsproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/binutils/binutilskrell-2.24.patch b/var/spack/repos/builtin/packages/binutils/binutilskrell-2.24.patch
deleted file mode 100644
index f48291a6c9..0000000000
--- a/var/spack/repos/builtin/packages/binutils/binutilskrell-2.24.patch
+++ /dev/null
@@ -1,52 +0,0 @@
---- binutils-2.24/libiberty/Makefile.in 2013-11-04 10:33:40.000000000 -0500
-+++ binutils-2.24-fixes/libiberty/Makefile.in 2014-10-17 16:22:31.413655000 -0400
-@@ -66,6 +66,7 @@
- MAKEOVERRIDES =
-
- TARGETLIB = ./libiberty.a
-+TARGETLIBPIC = ./libiberty_pic.a
- TESTLIB = ./testlib.a
-
- LIBOBJS = @LIBOBJS@
-@@ -355,27 +356,27 @@
- # since it will be passed the multilib flags.
- MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory`
- install_to_libdir: all
-- if test -n "${target_header_dir}"; then \
-- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
-- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \
-- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \
-- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \
-- case "${target_header_dir}" in \
-- /*) thd=${target_header_dir};; \
-- *) thd=${includedir}/${target_header_dir};; \
-- esac; \
-- ${mkinstalldirs} $(DESTDIR)$${thd}; \
-- for h in ${INSTALLED_HEADERS}; do \
-- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \
-- done; \
-- fi
-+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
-+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \
-+ $(INSTALL_DATA) pic/$(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC)n; \
-+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \
-+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIBPIC)n ;$(RANLIB) $(TARGETLIBPIC)n ); \
-+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \
-+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIBPIC); \
-+ ${mkinstalldirs} $(DESTDIR)$${includedir}; \
-+ for h in ${INSTALLED_HEADERS}; do \
-+ ${INSTALL_DATA} $$h $(DESTDIR)$${includedir}; \
-+ done;
- @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
-
- install_to_tooldir: all
- ${mkinstalldirs} $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)
- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)n
-+ $(INSTALL_DATA) pic/$(TARGETLIB) $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)n
- ( cd $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n; $(RANLIB) $(TARGETLIB)n )
-+ ( cd $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR) ; chmod 644 $(TARGETLIBPIC)n; $(RANLIB) $(TARGETLIBPIC)n )
- mv -f $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIB)
-+ mv -f $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)n $(DESTDIR)$(tooldir)/lib/$(MULTIOSDIR)/$(TARGETLIBPIC)
- @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
-
- # required-list was used when building a shared bfd/opcodes/libiberty
diff --git a/var/spack/repos/builtin/packages/binutils/package.py b/var/spack/repos/builtin/packages/binutils/package.py
index bf49ca9405..c3c521bad8 100644
--- a/var/spack/repos/builtin/packages/binutils/package.py
+++ b/var/spack/repos/builtin/packages/binutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,12 +25,13 @@
from spack import *
-class Binutils(Package):
+class Binutils(AutotoolsPackage):
"""GNU binutils, which contain the linker, assembler, objdump and others"""
homepage = "http://www.gnu.org/software/binutils/"
- url = "https://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.bz2"
+ url = "https://ftp.gnu.org/gnu/binutils/binutils-2.28.tar.bz2"
+ version('2.28', '9e8340c96626b469a603c15c9d843727')
version('2.27', '2869c9bf3e60ee97c74ac2a6bf4e9d68')
version('2.26', '64146a0faa3b411ba774f47d41de239f')
version('2.25', 'd9f3303f802a5b6b0bb73a335ab89d66')
@@ -38,25 +39,26 @@ class Binutils(Package):
version('2.23.2', '4f8fa651e35ef262edc01d60fb45702e')
version('2.20.1', '2b9dc8f2b7dbd5ec5992c6e29de0b764')
- depends_on('m4', type='build')
- depends_on('flex', type='build')
- depends_on('bison', type='build')
-
- # Add a patch that creates binutils libiberty_pic.a which is preferred by
- # OpenSpeedShop and cbtf-krell
- variant('krellpatch', default=False,
- description="build with openspeedshop based patch.")
+ variant('plugins', default=False,
+ description="enable plugins, needed for gold linker")
variant('gold', default=True, description="build the gold linker")
- patch('binutilskrell-2.24.patch', when='@2.24+krellpatch')
+ variant('libiberty', default=False, description='Also install libiberty.')
patch('cr16.patch')
patch('update_symbol-2.26.patch', when='@2.26')
- variant('libiberty', default=False, description='Also install libiberty.')
+ depends_on('zlib')
+
+ depends_on('m4', type='build')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
+ depends_on('gettext')
+
+ def configure_args(self):
+ spec = self.spec
- def install(self, spec, prefix):
configure_args = [
- '--prefix=%s' % prefix,
+ '--with-system-zlib',
'--disable-dependency-tracking',
'--disable-werror',
'--enable-interwork',
@@ -64,14 +66,16 @@ class Binutils(Package):
'--enable-shared',
'--enable-64-bit-bfd',
'--enable-targets=all',
- '--with-sysroot=/']
+ '--with-sysroot=/',
+ ]
if '+gold' in spec:
configure_args.append('--enable-gold')
+ if '+plugins' in spec:
+ configure_args.append('--enable-plugins')
+
if '+libiberty' in spec:
configure_args.append('--enable-install-libiberty')
- configure(*configure_args)
- make()
- make("install")
+ return configure_args
diff --git a/var/spack/repos/builtin/packages/bioawk/package.py b/var/spack/repos/builtin/packages/bioawk/package.py
new file mode 100644
index 0000000000..386aa16953
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bioawk/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from shutil import copyfile
+from shutil import copymode
+
+
+class Bioawk(MakefilePackage):
+ """Bioawk is an extension to Brian Kernighan's awk, adding the support of
+ several common biological data formats, including optionally gzip'ed
+ BED, GFF, SAM, VCF, FASTA/Q and TAB-delimited formats with column names.
+ """
+
+ homepage = "https://github.com/lh3/bioawk"
+ url = "https://github.com/lh3/bioawk/archive/v1.0.zip"
+
+ version('1.0', 'e423942689f944369de270900978be28')
+
+ depends_on('zlib')
+ depends_on('bison', type=('build'))
+
+ parallel = False
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ copyfile("bioawk", join_path(prefix.bin, "bioawk"))
+ copymode("bioawk", join_path(prefix.bin, "bioawk"))
+ copyfile("maketab", join_path(prefix.bin, "maketab"))
+ copymode("maketab", join_path(prefix.bin, "maketab"))
diff --git a/var/spack/repos/builtin/packages/bison/package.py b/var/spack/repos/builtin/packages/bison/package.py
index 70795f05cc..1cc2aacfaf 100644
--- a/var/spack/repos/builtin/packages/bison/package.py
+++ b/var/spack/repos/builtin/packages/bison/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,22 +23,26 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from spack.operating_systems.mac_os import macOS_version
+import sys
-class Bison(Package):
+class Bison(AutotoolsPackage):
"""Bison is a general-purpose parser generator that converts
an annotated context-free grammar into a deterministic LR or
generalized LR (GLR) parser employing LALR(1) parser tables."""
homepage = "http://www.gnu.org/software/bison/"
- url = "http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz"
+ url = "http://ftp.gnu.org/gnu/bison/bison-3.0.4.tar.gz"
version('3.0.4', 'a586e11cd4aff49c3ff6d3b6a4c9ccf8')
+ version('2.7', 'ded660799e76fb1667d594de1f7a0da9')
- depends_on("m4", type='build')
+ depends_on('m4', type=('build', 'run'))
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
+ patch('pgi.patch', when='@3.0.4')
- make()
- make("install")
+ if sys.platform == 'darwin' and macOS_version() >= Version('10.13'):
+ patch('secure_snprintf.patch', level=0, when='@3.0.4')
+
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/bison/pgi.patch b/var/spack/repos/builtin/packages/bison/pgi.patch
new file mode 100644
index 0000000000..8aeaa96a51
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bison/pgi.patch
@@ -0,0 +1,10 @@
+--- a/lib/config.in.h
++++ b/lib/config.in.h
+@@ -2182,6 +2182,7 @@
+ ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
+ : (199901L <= __STDC_VERSION__ \
+ && !defined __HP_cc \
++ && !defined __PGI \
+ && !(defined __SUNPRO_C && __STDC__))) \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
+ # define _GL_INLINE inline
diff --git a/var/spack/repos/builtin/packages/bison/secure_snprintf.patch b/var/spack/repos/builtin/packages/bison/secure_snprintf.patch
new file mode 100644
index 0000000000..0dff749f2a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bison/secure_snprintf.patch
@@ -0,0 +1,15 @@
+With format string strictness, High Sierra also enforces that %n isn't used
+in dynamic format strings, but we should just disable its use on darwin in
+general.
+
+--- lib/vasnprintf.c.orig 2017-06-22 15:19:15.000000000 -0700
++++ lib/vasnprintf.c 2017-06-22 15:20:20.000000000 -0700
+@@ -4869,7 +4869,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
+ #endif
+ *fbp = dp->conversion;
+ #if USE_SNPRINTF
+-# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
++# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
+ fbp[1] = '%';
+ fbp[2] = 'n';
+ fbp[3] = '\0';
diff --git a/var/spack/repos/builtin/packages/bitmap/package.py b/var/spack/repos/builtin/packages/bitmap/package.py
index 55fdacefd5..2ea4613a53 100644
--- a/var/spack/repos/builtin/packages/bitmap/package.py
+++ b/var/spack/repos/builtin/packages/bitmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Bitmap(Package):
+class Bitmap(AutotoolsPackage):
"""bitmap, bmtoa, atobm - X bitmap (XBM) editor and converter utilities."""
homepage = "http://cgit.freedesktop.org/xorg/app/bitmap"
@@ -43,9 +43,3 @@ class Bitmap(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/blast-plus/blast-make-fix2.5.0.diff b/var/spack/repos/builtin/packages/blast-plus/blast-make-fix2.5.0.diff
new file mode 100644
index 0000000000..5611a0e83b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/blast-plus/blast-make-fix2.5.0.diff
@@ -0,0 +1,22 @@
+--- ncbi-blast-2.5.0+-src/c++/src/build-system/Makefile.in.top 2014-11-12 17:41:55.000000000 +0100
++++ MakeFile 2016-12-19 18:00:58.000000000 +0100
+@@ -1,4 +1,4 @@
+-# $Id: Makefile.in.top 451817 2014-11-12 16:41:55Z ucko $
++# $Id$
+ # Top-level meta-makefile that simplifies building even further.
+
+ # include @builddir@/Makefile.mk
+@@ -49,9 +49,10 @@
+ for x in *.a; do \
+ $(LN_S) "$$x" "`$(BASENAME) \"$$x\" .a`-static.a"; \
+ done
+- cd $(includedir0) && find * -name CVS -prune -o -print |\
+- cpio -pd $(pincludedir)
+- $(INSTALL) -m 644 $(incdir)/* $(pincludedir)
++ #for d in $(includedir0) $(incdir); do \
++ # cd $$d && find * -name .svn prune -o -print | \
++ # cpio -pd $(pincludedir) ; \
++ #done
+ ## set up appropriate build and status directories somewhere under $(libdir)?
+
+ install-gbench:
diff --git a/var/spack/repos/builtin/packages/blast-plus/package.py b/var/spack/repos/builtin/packages/blast-plus/package.py
new file mode 100644
index 0000000000..073eab24d1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/blast-plus/package.py
@@ -0,0 +1,221 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+# This is a based largely on the Homebrew science formula:
+# https://github.com/Homebrew/homebrew-science/blob/master/blast.rb
+#
+# There s one tricky bit to be resolved:
+#
+# - HDF5 builds explode, blast's configure script tries to run a program that
+# uses a variable called 'HOST' but some other bit defines a macro called
+# HOST that's defined to a string. Hilarity ensues.
+#
+#
+from spack import *
+
+
+class BlastPlus(AutotoolsPackage):
+ """Basic Local Alignment Search Tool."""
+
+ homepage = "http://blast.ncbi.nlm.nih.gov/"
+ url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.6.0/ncbi-blast-2.6.0+-src.tar.gz"
+
+ version('2.6.0', 'c8ce8055b10c4d774d995f88c7cc6225')
+ version('2.2.30', 'f8e9a5eb368173142fe6867208b73715')
+
+ # homebrew sez: Fixed upstream in future version > 2.6
+ # But this bug sez that it will be fixed in 2.6
+ # https://github.com/Homebrew/homebrew-science/pull/4740
+ # The 2.6.0 src still matches the "before" bit of the patch
+ # so it's probably still "needed".
+ # On the other hand, the `find` command is broken and there
+ # aren't any .svn dirs in the tree, so I've updated their patch
+ # to just comment out the block.
+ patch('blast-make-fix2.5.0.diff', when="@2.5.0:2.6.0")
+
+ # See https://github.com/Homebrew/homebrew-science/issues/2337#issuecomment-170011511
+ @when('@:2.2.31')
+ def patch(self):
+ filter_file("2.95* | 2.96* | 3.* | 4.* )",
+ "2.95* | 2.96* | 3.* | 4.* | 5.* )",
+ "c++/src/build-system/configure",
+ string=True)
+
+ # No...
+ # depends_on :mysql => :optional
+
+ variant('static', default=False,
+ description='Build with static linkage')
+ variant('jpeg', default=True,
+ description='Build with jpeg support')
+ variant('png', default=True,
+ description='Build with png support')
+ variant('freetype', default=True,
+ description='Build with freetype support')
+ # variant('hdf5', default=True,
+ # description='Build with hdf5 support')
+ variant('gnutls', default=True,
+ description='Build with gnutls support')
+ variant('openssl', default=True,
+ description='Build with openssl support')
+ variant('zlib', default=True,
+ description='Build with zlib support')
+ variant('bzip2', default=True,
+ description='Build with bzip2 support')
+ variant('lzo', default=True,
+ description='Build with lzo support')
+ variant('pcre', default=True,
+ description='Build with pcre support')
+ variant('perl', default=True,
+ description='Build with perl support')
+ variant('python', default=True,
+ description='Build with python support')
+
+ depends_on('jpeg', when='+jpeg')
+ depends_on('libpng', when='+png')
+ depends_on('freetype', when='+freetype')
+ # depends_on('hdf5', when='+hdf5')
+ depends_on('gnutls', when='+gnutls')
+ depends_on('openssl', when='+openssl')
+ depends_on('zlib', when='+zlib')
+ depends_on('bzip2', when='+bzip2')
+ depends_on('lzo', when='+lzo')
+ depends_on('pcre', when='+pcre')
+
+ depends_on('python', when='+python')
+ depends_on('perl', when='+perl')
+
+ configure_directory = 'c++'
+
+ def configure_args(self):
+ spec = self.spec
+
+ config_args = [
+ '--with-bin-release',
+ '--without-debug',
+ '--with-mt',
+ '--with-64',
+ '--without-boost',
+ ]
+
+ if '+static' in spec:
+ config_args.append('--with-static')
+ # FIXME
+ # args << "--with-static-exe" unless OS.linux?
+ # args << "--with-dll" if build.with? "dll"
+ else:
+ config_args.extend([
+ '--with-dll',
+ '--without-static',
+ '--without-static-exe'
+ ])
+
+ if '+jpeg' in spec:
+ config_args.append(
+ '--with-jpeg={0}'.format(self.spec['jpeg'].prefix)
+ )
+ else:
+ config_args.append('--without-jpeg')
+
+ if '+png' in spec:
+ config_args.append(
+ '--with-png={0}'.format(self.spec['libpng'].prefix)
+ )
+ else:
+ config_args.append('--without-png')
+
+ if '+freetype' in spec:
+ config_args.append(
+ '--with-freetype={0}'.format(self.spec['freetype'].prefix)
+ )
+ else:
+ config_args.append('--without-freetype')
+
+ config_args.append('--without-hdf5')
+ # if '+hdf5' in spec:
+ # # FIXME
+ # config_args.append(
+ # '--with-hdf5={0}'.format(self.spec['hdf5'].prefix)
+ # )
+ # else:
+ # config_args.append('--without-hdf5')
+
+ if '+zlib' in spec:
+ config_args.append(
+ '--with-z={0}'.format(self.spec['zlib'].prefix)
+ )
+ else:
+ config_args.append('--without-z')
+
+ if '+bzip2' in spec:
+ config_args.append(
+ '--with-bz2={0}'.format(self.spec['bzip2'].prefix)
+ )
+ else:
+ config_args.append('--without-bz2')
+
+ if '+lzo' in spec:
+ config_args.append(
+ '--with-lzo={0}'.format(self.spec['lzo'].prefix)
+ )
+ else:
+ config_args.append('--without-lzo')
+
+ if '+gnutls' in spec:
+ config_args.append(
+ '--with-gnutls={0}'.format(self.spec['gnutls'].prefix)
+ )
+ else:
+ config_args.append('--without-gnutls')
+
+ if '+openssl' in spec:
+ config_args.append(
+ '--with-openssl={0}'.format(self.spec['openssl'].prefix)
+ )
+ else:
+ config_args.append('--without-openssl')
+
+ if '+pcre' in spec:
+ config_args.append(
+ '--with-pcre={0}'.format(self.spec['pcre'].prefix)
+ )
+ else:
+ config_args.append('--without-pcre')
+
+ if '+python' in spec:
+ config_args.append(
+ '--with-python={0}'.format(self.spec['python'].home)
+ )
+ else:
+ config_args.append('--without-python')
+
+ if '+perl' in spec:
+ config_args.append(
+ '--with-perl={0}'.format(self.spec['perl'].prefix)
+ )
+ else:
+ config_args.append('--without-python')
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/blat/package.py b/var/spack/repos/builtin/packages/blat/package.py
new file mode 100644
index 0000000000..60a33bbdff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/blat/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Blat(Package):
+ """BLAT (BLAST-like alignment tool) is a pairwise sequence
+ alignment algorithm."""
+
+ homepage = "https://genome.ucsc.edu/FAQ/FAQblat.html"
+ url = "https://users.soe.ucsc.edu/~kent/src/blatSrc35.zip"
+
+ version('35', '16e546b8843b85e0b0f2fa603cd78724')
+
+ depends_on('libpng')
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('MACHTYPE', 'x86_64')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ make("BINDIR=%s" % prefix.bin)
diff --git a/var/spack/repos/builtin/packages/blaze/package.py b/var/spack/repos/builtin/packages/blaze/package.py
new file mode 100644
index 0000000000..2f175ff7d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/blaze/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Blaze(Package):
+ """Blaze is an open-source, high-performance C++ math library for dense and
+ sparse arithmetic. With its state-of-the-art Smart Expression Template
+ implementation Blaze combines the elegance and ease of use of a
+ domain-specific language with HPC-grade performance, making it one of the
+ most intuitive and fastest C++ math libraries available.
+ """
+
+ homepage = "https://bitbucket.org/blaze-lib/blaze/overview"
+ url = "https://bitbucket.org/blaze-lib/blaze/downloads/blaze-3.1.tar.gz"
+
+ version('3.2', '47bd4a4f1b6292f5a6f71ed9d5287480')
+ version('3.1', '2938e015f0d274e8d62ee5c4c0c1e9f3')
+ version('3.0', '0c4cefb0be7b5a27ed8a377941be1ab1')
+ version('2.6', 'f7b515eeffd5cce92eb02dc6f8905f4d')
+ version('2.5', '53a862763c275046ff0a8f07dfd3985b')
+ version('2.4', '7cf2e963a73d3c95ced0f7eaa0ae3677')
+ version('2.3', '2f8ca52d23447ac75a03bb43b12ef774')
+ version('2.2', '686a514108d7f3c6c7325ed57c171a59')
+ version('2.1', 'e5e419a2b35f0a36cd9d7527a250c56a')
+ version('2.0', 'aeb6a865e9e3810ee55456f961458a8e')
+ version('1.5', '5b77b605ee5ad35631bb3039737142c9')
+ version('1.4', '3f06d710161954ccae0975d87f1069ca')
+ version('1.3', 'ebd7f91fc5fca4108bfd16a86f9abd82')
+ version('1.2', 'b1511324456c3f70fce198a2b63e71ef')
+ version('1.1', '5e52ebe68217f2e50d66dfdb9803d51e')
+ version('1.0', 'a46508a2965ace9d89ded30a386d9548')
+
+ def install(self, spec, prefix):
+ install_tree('blaze', join_path(prefix.include, 'blaze'))
diff --git a/var/spack/repos/builtin/packages/bliss/package.py b/var/spack/repos/builtin/packages/bliss/package.py
index a81a806807..6604c2dc9a 100644
--- a/var/spack/repos/builtin/packages/bliss/package.py
+++ b/var/spack/repos/builtin/packages/bliss/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/blitz/package.py b/var/spack/repos/builtin/packages/blitz/package.py
index d6fd31d637..2cb9d8f5ab 100644
--- a/var/spack/repos/builtin/packages/blitz/package.py
+++ b/var/spack/repos/builtin/packages/blitz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/bml/package.py b/var/spack/repos/builtin/packages/bml/package.py
new file mode 100644
index 0000000000..ee4b805d1b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bml/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bml(CMakePackage):
+ """The basic matrix library (bml) is a collection of various matrix data
+ formats (in dense and sparse) and their associated algorithms for basic
+ matrix operations."""
+
+ homepage = "http://lanl.github.io/bml/"
+ url = "https://github.com/lanl/bml/tarball/v1.2.2"
+
+ version('1.2.2', 'c86959cb0188e9d0a9a2cbad03b2782d')
+ version('1.1.0', '271adecee08aee678be9eeceee06b6fb')
+ version('develop', git='https://github.com/lanl/bml', branch='master')
+
+ variant('shared', default=True, description='Build shared libs')
+ variant('mpi', default=False, description='Build with MPI Support')
+
+ conflicts('+mpi', when='@:1.2.2')
+
+ depends_on("blas")
+ depends_on("lapack")
+ depends_on('mpi', when='+mpi')
+
+ def cmake_args(self):
+ args = [
+ '-DBUILD_SHARED_LIBS={0}'.format(
+ 'ON' if '+shared' in self.spec else 'OFF')
+ ]
+ spec = self.spec
+ if '+mpi' in spec:
+ args.append('-DBML_MPI=True')
+ args.append('-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc)
+ args.append('-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx)
+ args.append('-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc)
+ else:
+ args.append('-DBML_MPI=False')
+ return args
diff --git a/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi.patch b/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi.patch
new file mode 100644
index 0000000000..925592e321
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi.patch
@@ -0,0 +1,290 @@
+diff -uNr boost_1_63_0/boost/mpl/assert.hpp boost_1_63_0/boost/mpl/assert.hpp
+--- boost_1_63_0/boost/mpl/assert.hpp 2016-12-22 07:33:17.000000000 -0500
++++ boost_1_63_0/boost/mpl/assert.hpp 2017-05-31 20:09:43.704689605 -0400
+@@ -56,7 +56,7 @@
+ // and GCC (which issues "unused variable" warnings when static constants are used
+ // at a function scope)
+ #if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
+- || (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0)
++ || (BOOST_MPL_CFG_GCC != 0) || (BOOST_MPL_CFG_GPU != 0) || defined(__PGI)
+ # define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
+ #else
+ # define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) BOOST_STATIC_CONSTANT(T, expr)
+diff -uNr boost_1_63_0/boost/type_traits/is_floating_point.hpp boost_1_63_0/boost/type_traits/is_floating_point.hpp
+--- boost_1_63_0/boost/type_traits/is_floating_point.hpp 2016-12-22 07:33:20.000000000 -0500
++++ boost_1_63_0/boost/type_traits/is_floating_point.hpp 2017-05-31 20:12:50.187001957 -0400
+@@ -20,8 +20,9 @@
+ template<> struct is_floating_point<float> : public true_type{};
+ template<> struct is_floating_point<double> : public true_type{};
+ template<> struct is_floating_point<long double> : public true_type{};
+-
+-#if defined(BOOST_HAS_FLOAT128)
++
++// In PGI compiler, __float128 is a typedef, not its own type.
++#if defined(BOOST_HAS_FLOAT128) && !defined(__PGI)
+ template<> struct is_floating_point<__float128> : public true_type{};
+ #endif
+
+diff -uNr boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp
+--- boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp 2016-12-22 07:33:20.000000000 -0500
++++ boost_1_63_0/boost/spirit/home/lex/lexer/lexertl/functor.hpp 2017-05-31 20:11:12.365788989 -0400
+@@ -98,11 +98,7 @@
+ };
+
+ public:
+- functor()
+-#if defined(__PGI)
+- : eof()
+-#endif
+- {}
++ functor() {}
+
+ #if BOOST_WORKAROUND(BOOST_MSVC, <= 1310)
+ // somehow VC7.1 needs this (meaningless) assignment operator
+diff -uNr boost_1_63_0/boost/cstdint.hpp boost_1_63_0/boost/cstdint.hpp
+--- boost_1_63_0/boost/cstdint.hpp 2016-12-22 07:33:14.000000000 -0500
++++ boost_1_63_0/boost/cstdint.hpp 2017-05-31 20:04:52.821068853 -0400
+@@ -367,9 +367,6 @@
+ #include <stddef.h>
+ #endif
+
+-// PGI seems to not support intptr_t/uintptr_t properly. BOOST_HAS_STDINT_H is not defined for this compiler by Boost.Config.
+-#if !defined(__PGIC__)
+-
+ #if (defined(BOOST_WINDOWS) && !defined(_WIN32_WCE)) \
+ || (defined(_XOPEN_UNIX) && (_XOPEN_UNIX+0 > 0) && !defined(__UCLIBC__)) \
+ || defined(__CYGWIN__) \
+@@ -393,8 +390,6 @@
+
+ #endif
+
+-#endif // !defined(__PGIC__)
+-
+ #endif // BOOST_CSTDINT_HPP
+
+
+diff -uNr boost_1_63_0/libs/filesystem/src/operations.cpp boost_1_63_0/libs/filesystem/src/operations.cpp
+--- boost_1_63_0/libs/filesystem/src/operations.cpp 2016-12-22 07:33:15.000000000 -0500
++++ boost_1_63_0/libs/filesystem/src/operations.cpp 2017-05-31 20:06:26.492231150 -0400
+@@ -2051,10 +2051,6 @@
+ return ok;
+ }
+
+-#if defined(__PGI) && defined(__USE_FILE_OFFSET64)
+-#define dirent dirent64
+-#endif
+-
+ error_code dir_itr_first(void *& handle, void *& buffer,
+ const char* dir, string& target,
+ fs::file_status &, fs::file_status &)
+diff -uNr boost_1_63_0/tools/build/src/engine/boehm_gc/configure boost_1_63_0/tools/build/src/engine/boehm_gc/configure
+--- boost_1_63_0/tools/build/src/engine/boehm_gc/configure 2016-12-22 07:33:21.000000000 -0500
++++ boost_1_63_0/tools/build/src/engine/boehm_gc/configure 2017-05-31 13:02:25.089265415 -0400
+@@ -9286,7 +9286,7 @@
+ lt_prog_compiler_pic='-KPIC'
+ lt_prog_compiler_static='-static'
+ ;;
+- pgcc* | pgf77* | pgf90* | pgf95*)
++ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ lt_prog_compiler_wl='-Wl,'
+@@ -9722,7 +9722,7 @@
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ tmp_addflag=
+ case $cc_basename,$host_cpu in
+- pgcc*) # Portland Group C compiler
++ pgcc* | pgc++*) # Portland Group C compiler
+ whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+@@ -13421,7 +13421,7 @@
+ export_dynamic_flag_spec_CXX='${wl}--export-dynamic'
+ whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+ ;;
+- pgCC*)
++ pgc++*)
+ # Portland Group C++ compiler
+ archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+@@ -14098,7 +14098,7 @@
+ lt_prog_compiler_pic_CXX='-KPIC'
+ lt_prog_compiler_static_CXX='-static'
+ ;;
+- pgCC*)
++ pgc++*)
+ # Portland Group C++ compiler.
+ lt_prog_compiler_wl_CXX='-Wl,'
+ lt_prog_compiler_pic_CXX='-fpic'
+@@ -15812,7 +15812,7 @@
+ lt_prog_compiler_pic_F77='-KPIC'
+ lt_prog_compiler_static_F77='-static'
+ ;;
+- pgcc* | pgf77* | pgf90* | pgf95*)
++ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ lt_prog_compiler_wl_F77='-Wl,'
+@@ -16248,7 +16248,7 @@
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ tmp_addflag=
+ case $cc_basename,$host_cpu in
+- pgcc*) # Portland Group C compiler
++ pgcc* | pgc++*) # Portland Group C compiler
+ whole_archive_flag_spec_F77='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+@@ -18386,7 +18386,7 @@
+ lt_prog_compiler_pic_GCJ='-KPIC'
+ lt_prog_compiler_static_GCJ='-static'
+ ;;
+- pgcc* | pgf77* | pgf90* | pgf95*)
++ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ lt_prog_compiler_wl_GCJ='-Wl,'
+@@ -18822,7 +18822,7 @@
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ tmp_addflag=
+ case $cc_basename,$host_cpu in
+- pgcc*) # Portland Group C compiler
++ pgcc* | pgc++*) # Portland Group C compiler
+ whole_archive_flag_spec_GCJ='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+ tmp_addflag=' $pic_flag'
+ ;;
+diff -uNr boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4
+--- boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 2016-12-22 07:33:21.000000000 -0500
++++ boost_1_63_0/tools/build/src/engine/boehm_gc/libtool.m4 2017-05-31 13:02:56.629643895 -0400
+@@ -3325,7 +3325,7 @@
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+ _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+ ;;
+- pgCC*)
++ pgc++*)
+ # Portland Group C++ compiler
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+@@ -4977,7 +4977,7 @@
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+- pgCC*)
++ pgc++*)
+ # Portland Group C++ compiler.
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
+@@ -5225,7 +5225,7 @@
+ _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+ _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
+ ;;
+- pgcc* | pgf77* | pgf90* | pgf95*)
++ pgcc* | pgc++* | pgf77* | pgf90* | pgf95*)
+ # Portland Group compilers (*not* the Pentium gcc compiler,
+ # which looks to be a dead project)
+ _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+diff -uNr boost_1_63_0/tools/build/src/tools/pgi.jam boost_1_63_0/tools/build/src/tools/pgi.jam
+--- boost_1_63_0/tools/build/src/tools/pgi.jam 2016-12-22 07:33:21.000000000 -0500
++++ boost_1_63_0/tools/build/src/tools/pgi.jam 2017-05-31 20:25:19.726296130 -0400
+@@ -25,7 +25,7 @@
+ {
+ local condition = [ common.check-init-parameters pgi : version $(version) ] ;
+
+- local l_command = [ common.get-invocation-command pgi : pgCC : $(command) ] ;
++ local l_command = [ common.get-invocation-command pgi : pgc++ : $(command) ] ;
+
+ common.handle-options pgi : $(condition) : $(l_command) : $(options) ;
+
+@@ -36,17 +36,10 @@
+ flags pgi.compile DEFINES $(condition) :
+ [ feature.get-values <define> : $(options) ] : unchecked ;
+
+- # IOV_MAX support
+- flags pgi.compile DEFINES $(condition) : __need_IOV_MAX : unchecked ;
+-
+ # set link flags
+ flags pgi.link FINDLIBS-ST : [
+ feature.get-values <find-static-library> : $(options) ] : unchecked ;
+
+- # always link lib rt to resolve clock_gettime()
+- flags pgi.link FINDLIBS-SA : rt [
+- feature.get-values <find-shared-library> : $(options) ] : unchecked ;
+-
+ gcc.init-link-flags pgi gnu $(condition) ;
+ }
+
+@@ -56,18 +49,19 @@
+ generators.register-fortran-compiler pgi.compile.fortran : FORTRAN : OBJ : <toolset>pgi ;
+
+ # Declare flags and actions for compilation
+-flags pgi.compile OPTIONS : -Kieee ;
+-flags pgi.compile OPTIONS <link>shared : -fpic -fPIC ;
++flags pgi.compile OPTIONS <link>shared : -fpic ;
+ flags pgi.compile OPTIONS <debug-symbols>on : -gopt ;
+-flags pgi.compile OPTIONS <profiling>on : -xprofile=tcov ;
+-flags pgi.compile OPTIONS <optimization>speed : -fast -Mx,8,0x10000000 ;
+-flags pgi.compile OPTIONS <optimization>space : -xO2 -xspace ;
+-# flags pgi.compile OPTIONS <threading>multi : -mt ;
++flags pgi.compile OPTIONS <optimization>off : -O0 ;
++flags pgi.compile OPTIONS <optimization>speed : -fast ;
++flags pgi.compile OPTIONS <optimization>space : -fast ;
+
+ flags pgi.compile OPTIONS <warnings>off : -Minform=severe ;
+ flags pgi.compile OPTIONS <warnings>on : -Minform=warn ;
++flags pgi.compile OPTIONS <warnings-as-errors>on : -Werror ;
+
+ flags pgi.compile.c++ OPTIONS <inlining>off : -INLINE:none ;
++flags pgi.compile.c++ OPTIONS <rtti>off : --no_rtti ;
++flags pgi.compile.c++ OPTIONS <exception-handling>off : --no_exceptions ;
+
+ flags pgi.compile OPTIONS <cflags> ;
+ flags pgi.compile.c++ OPTIONS <cxxflags> ;
+@@ -95,9 +89,8 @@
+ flags pgi.link OPTIONS <debug-symbols>on : -gopt ;
+ # Strip the binary when no debugging is needed
+ flags pgi.link OPTIONS <debug-symbols>off : -s ;
+-flags pgi.link OPTIONS <profiling>on : -xprofile=tcov ;
+ flags pgi.link OPTIONS <linkflags> ;
+-flags pgi.link OPTIONS <link>shared : -fpic -fPIC ;
++flags pgi.link OPTIONS <link>shared : -fpic ;
+ flags pgi.link LINKPATH <library-path> ;
+ flags pgi.link FINDLIBS-ST <find-static-library> ;
+ flags pgi.link FINDLIBS-SA <find-shared-library> ;
+@@ -107,24 +100,14 @@
+ flags pgi.link LINK-RUNTIME <runtime-link>shared : dynamic ;
+ flags pgi.link RPATH <dll-path> ;
+
+-# On gcc, there are separate options for dll path at runtime and
+-# link time. On Solaris, there's only one: -R, so we have to use
+-# it, even though it's bad idea.
+-flags pgi.link RPATH <xdll-path> ;
+-
+ rule link ( targets * : sources * : properties * )
+ {
+ SPACE on $(targets) = " " ;
+ }
+
+-# reddish can only link statically and, somehow, the presence of -Bdynamic on the link line
+-# marks the executable as a dynamically linked exec even though no dynamic libraries are supplied.
+-# Yod on redstorm refuses to load an executable that is dynamically linked.
+-# removing the dynamic link options should get us where we need to be on redstorm.
+-# "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME)
+ actions link bind LIBRARIES
+ {
+- "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -Bstatic -l$(FINDLIBS-ST) -Bdynamic -l$(FINDLIBS-SA) -B$(LINK-RUNTIME)
++ "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-ST) -l$(FINDLIBS-SA)
+ }
+
+ # Slight mods for dlls
+@@ -133,11 +116,10 @@
+ SPACE on $(targets) = " " ;
+ }
+
+-# "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" -h$(<[1]:D=) -G "$(>)" "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME)
+
+ actions link.dll bind LIBRARIES
+ {
+- "$(CONFIG_COMMAND)" $(OPTIONS) -shared -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" -Wl,-h -Wl,$(<[1]:D=) "$(LIBRARIES)" -Bdynamic -l$(FINDLIBS-SA) -Bstatic -l$(FINDLIBS-ST) -B$(LINK-RUNTIME)
++ "$(CONFIG_COMMAND)" $(OPTIONS) -shared -L"$(LINKPATH)" -R"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST)
+ }
+
+ actions updated together piecemeal pgi.archive
diff --git a/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch b/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch
new file mode 100644
index 0000000000..3bfb989f80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/boost_1.63.0_pgi_17.4_workaround.patch
@@ -0,0 +1,250 @@
+diff -uNr boost_1_63_0/boost/archive/archive_exception.hpp boost_1_63_0/boost/archive/archive_exception.hpp
+--- boost_1_63_0/boost/archive/archive_exception.hpp 2016-12-22 07:33:19.000000000 -0500
++++ boost_1_63_0/boost/archive/archive_exception.hpp 2017-06-01 22:07:26.013983567 -0400
+@@ -42,13 +42,6 @@
+ class BOOST_SYMBOL_VISIBLE archive_exception :
+ public virtual std::exception
+ {
+-private:
+- char m_buffer[128];
+-protected:
+- BOOST_ARCHIVE_DECL unsigned int
+- append(unsigned int l, const char * a);
+- BOOST_ARCHIVE_DECL
+- archive_exception() BOOST_NOEXCEPT;
+ public:
+ typedef enum {
+ no_exception, // initialized without code
+@@ -90,6 +83,15 @@
+ BOOST_ARCHIVE_DECL archive_exception(archive_exception const &) BOOST_NOEXCEPT ;
+ virtual BOOST_ARCHIVE_DECL ~archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ;
+ virtual BOOST_ARCHIVE_DECL const char * what() const BOOST_NOEXCEPT_OR_NOTHROW ;
++protected:
++ BOOST_ARCHIVE_DECL unsigned int
++ append(unsigned int l, const char * a);
++ BOOST_ARCHIVE_DECL
++ archive_exception() BOOST_NOEXCEPT;
++private:
++ char m_buffer[128];
++ BOOST_ARCHIVE_DECL void
++ pgi_bug_workaround_init(archive_exception *, const char *, const char *);
+ };
+
+ }// namespace archive
+diff -uNr boost_1_63_0/boost/archive/xml_archive_exception.hpp boost_1_63_0/boost/archive/xml_archive_exception.hpp
+--- boost_1_63_0/boost/archive/xml_archive_exception.hpp 2016-12-22 07:33:19.000000000 -0500
++++ boost_1_63_0/boost/archive/xml_archive_exception.hpp 2017-05-31 21:02:03.373700156 -0400
+@@ -47,6 +47,9 @@
+ );
+ BOOST_ARCHIVE_DECL xml_archive_exception(xml_archive_exception const &) ;
+ virtual BOOST_ARCHIVE_DECL ~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW ;
++private:
++ BOOST_ARCHIVE_DECL void
++ pgi_bug_workaround_init_xml(xml_archive_exception *, exception_code, const char *, const char *);
+ };
+
+ }// namespace archive
+diff -uNr boost_1_63_0/libs/serialization/src/archive_exception.cpp boost_1_63_0/libs/serialization/src/archive_exception.cpp
+--- boost_1_63_0/libs/serialization/src/archive_exception.cpp 2016-12-22 07:33:19.000000000 -0500
++++ boost_1_63_0/libs/serialization/src/archive_exception.cpp 2017-06-01 22:06:14.193128909 -0400
+@@ -37,83 +37,90 @@
+ }
+
+ BOOST_ARCHIVE_DECL
+-archive_exception::archive_exception(
+- exception_code c,
+- const char * e1,
+- const char * e2
+-) BOOST_NOEXCEPT :
+- code(c)
++void
++archive_exception::pgi_bug_workaround_init(archive_exception *new_object, const char *e1, const char *e2)
+ {
+ unsigned int length = 0;
+- switch(code){
++ switch(new_object->code){
+ case no_exception:
+- length = append(length, "uninitialized exception");
++ length = new_object->append(length, "uninitialized exception");
+ break;
+- case unregistered_class:
+- length = append(length, "unregistered class");
++ case archive_exception::unregistered_class:
++ length = new_object->append(length, "unregistered class");
+ if(NULL != e1){
+- length = append(length, " - ");
+- length = append(length, e1);
++ length = new_object->append(length, " - ");
++ length = new_object->append(length, e1);
+ }
+ break;
+ case invalid_signature:
+- length = append(length, "invalid signature");
++ length = new_object->append(length, "invalid signature");
+ break;
+ case unsupported_version:
+- length = append(length, "unsupported version");
++ length = new_object->append(length, "unsupported version");
+ break;
+ case pointer_conflict:
+- length = append(length, "pointer conflict");
++ length = new_object->append(length, "pointer conflict");
+ break;
+ case incompatible_native_format:
+- length = append(length, "incompatible native format");
++ length = new_object->append(length, "incompatible native format");
+ if(NULL != e1){
+- length = append(length, " - ");
+- length = append(length, e1);
++ length = new_object->append(length, " - ");
++ length = new_object->append(length, e1);
+ }
+ break;
+ case array_size_too_short:
+- length = append(length, "array size too short");
++ length = new_object->append(length, "array size too short");
+ break;
+ case input_stream_error:
+- length = append(length, "input stream error");
++ length = new_object->append(length, "input stream error");
+ break;
+ case invalid_class_name:
+- length = append(length, "class name too long");
++ length = new_object->append(length, "class name too long");
+ break;
+ case unregistered_cast:
+- length = append(length, "unregistered void cast ");
+- length = append(length, (NULL != e1) ? e1 : "?");
+- length = append(length, "<-");
+- length = append(length, (NULL != e2) ? e2 : "?");
++ length = new_object->append(length, "unregistered void cast ");
++ length = new_object->append(length, (NULL != e1) ? e1 : "?");
++ length = new_object->append(length, "<-");
++ length = new_object->append(length, (NULL != e2) ? e2 : "?");
+ break;
+ case unsupported_class_version:
+- length = append(length, "class version ");
+- length = append(length, (NULL != e1) ? e1 : "<unknown class>");
++ length = new_object->append(length, "class version ");
++ length = new_object->append(length, (NULL != e1) ? e1 : "<unknown class>");
+ break;
+ case other_exception:
+ // if get here - it indicates a derived exception
+ // was sliced by passing by value in catch
+- length = append(length, "unknown derived exception");
++ length = new_object->append(length, "unknown derived exception");
+ break;
+ case multiple_code_instantiation:
+- length = append(length, "code instantiated in more than one module");
++ length = new_object->append(length, "code instantiated in more than one module");
+ if(NULL != e1){
+- length = append(length, " - ");
+- length = append(length, e1);
++ length = new_object->append(length, " - ");
++ length = new_object->append(length, e1);
+ }
+ break;
+ case output_stream_error:
+- length = append(length, "output stream error");
++ length = new_object->append(length, "output stream error");
+ break;
+ default:
+ BOOST_ASSERT(false);
+- length = append(length, "programming error");
++ length = new_object->append(length, "programming error");
+ break;
+ }
+ }
+
+ BOOST_ARCHIVE_DECL
++archive_exception::archive_exception(
++ exception_code c,
++ const char * e1,
++ const char * e2
++) BOOST_NOEXCEPT :
++ code(c)
++{
++ pgi_bug_workaround_init(this, e1, e2);
++}
++
++BOOST_ARCHIVE_DECL
+ archive_exception::archive_exception(archive_exception const & oth) BOOST_NOEXCEPT :
+ std::exception(oth),
+ code(oth.code)
+diff -uNr boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp
+--- boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp 2016-12-22 07:33:19.000000000 -0500
++++ boost_1_63_0/libs/serialization/src/xml_archive_exception.cpp 2017-05-31 20:58:15.650876427 -0400
+@@ -26,41 +26,48 @@
+ namespace archive {
+
+ BOOST_ARCHIVE_DECL
++void
++xml_archive_exception::pgi_bug_workaround_init_xml(xml_archive_exception *new_object, exception_code c, const char *e1, const char *e2)
++{
++ switch(c){
++ case xml_archive_parsing_error:
++ new_object->append(0, "unrecognized XML syntax");
++ break;
++ case xml_archive_tag_mismatch:{
++ unsigned int l;
++ l = new_object->append(0, "XML start/end tag mismatch");
++ if(NULL != e1){
++ l = new_object->append(l, " - ");
++ new_object->append(l, e1);
++ }
++ break;
++ }
++ case xml_archive_tag_name_error:
++ new_object->append(0, "Invalid XML tag name");
++ break;
++ default:
++ BOOST_ASSERT(false);
++ new_object->append(0, "programming error");
++ break;
++ }
++}
++
++BOOST_ARCHIVE_DECL
+ xml_archive_exception::xml_archive_exception(
+ exception_code c,
+ const char * e1,
+ const char * e2
+ ) :
+ archive_exception(other_exception, e1, e2)
+- {
+- switch(c){
+- case xml_archive_parsing_error:
+- archive_exception::append(0, "unrecognized XML syntax");
+- break;
+- case xml_archive_tag_mismatch:{
+- unsigned int l;
+- l = archive_exception::append(0, "XML start/end tag mismatch");
+- if(NULL != e1){
+- l = archive_exception::append(l, " - ");
+- archive_exception::append(l, e1);
+- }
+- break;
+- }
+- case xml_archive_tag_name_error:
+- archive_exception::append(0, "Invalid XML tag name");
+- break;
+- default:
+- BOOST_ASSERT(false);
+- archive_exception::append(0, "programming error");
+- break;
+- }
+- }
++{
++ pgi_bug_workaround_init_xml(this, c, e1, e2);
++}
+
+ BOOST_ARCHIVE_DECL
+ xml_archive_exception::xml_archive_exception(xml_archive_exception const & oth) :
+ archive_exception(oth)
+- {
+- }
++{
++}
+
+ BOOST_ARCHIVE_DECL xml_archive_exception::~xml_archive_exception() BOOST_NOEXCEPT_OR_NOTHROW {}
+
diff --git a/var/spack/repos/builtin/packages/boost/boost_10125.patch b/var/spack/repos/builtin/packages/boost/call_once_variadic.patch
index 71cfaa871e..f143644a70 100644
--- a/var/spack/repos/builtin/packages/boost/boost_10125.patch
+++ b/var/spack/repos/builtin/packages/boost/call_once_variadic.patch
@@ -1,3 +1,5 @@
+diff --git a/boost/thread/pthread/once.hpp b/boost/thread/pthread/once.hpp
+index ccfb051..0bef038 100644
--- a/boost/thread/pthread/once.hpp
+++ b/boost/thread/pthread/once.hpp
@@ -42,7 +42,7 @@ namespace boost
@@ -27,6 +29,8 @@
template<typename Function, class ...ArgTypes>
+diff --git a/boost/thread/pthread/once_atomic.hpp b/boost/thread/pthread/once_atomic.hpp
+index 9e2f876..923f07b 100644
--- a/boost/thread/pthread/once_atomic.hpp
+++ b/boost/thread/pthread/once_atomic.hpp
@@ -115,7 +115,7 @@ namespace boost
@@ -38,6 +42,8 @@
template<typename Function, class ...ArgTypes>
inline void call_once(once_flag& flag, BOOST_THREAD_RV_REF(Function) f, BOOST_THREAD_RV_REF(ArgTypes)... args)
+diff --git a/boost/thread/win32/once.hpp b/boost/thread/win32/once.hpp
+index cafcfd4..9b37b31 100644
--- a/boost/thread/win32/once.hpp
+++ b/boost/thread/win32/once.hpp
@@ -227,7 +227,7 @@ namespace boost
diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py
index 738e8a0e35..6134456188 100644
--- a/var/spack/repos/builtin/packages/boost/package.py
+++ b/var/spack/repos/builtin/packages/boost/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,6 @@
from spack import *
import sys
import os
-from glob import glob
class Boost(Package):
@@ -40,8 +39,22 @@ class Boost(Package):
homepage = "http://www.boost.org"
url = "http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2"
list_url = "http://sourceforge.net/projects/boost/files/boost/"
- list_depth = 2
-
+ list_depth = 1
+
+ version('develop',
+ git='https://github.com/boostorg/boost.git',
+ branch='develop',
+ submodules=True)
+
+ version('1.65.1', '41d7542ce40e171f3f7982aff008ff0d',
+ url='https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2')
+ version('1.65.0', '5512d3809801b0a1b9dd58447b70915d',
+ url='https://dl.bintray.com/boostorg/release/1.65.0/source/boost_1_65_0.tar.bz2')
+ # NOTE: 1.64.0 seems fine for *most* applications, but if you need
+ # +python and +mpi, there seem to be errors with out-of-date
+ # API calls from mpi/python.
+ # See: https://github.com/spack/spack/issues/3963
+ version('1.64.0', '93eecce2abed9d2442c9676914709349')
version('1.63.0', '1c837ecd990bb022d07e7aab32b09847')
version('1.62.0', '5fb94629535c19e48703bdb2b2e9490f')
version('1.61.0', '6095876341956f65f9d35939ccea1a9f')
@@ -120,6 +133,10 @@ class Boost(Package):
description="Build the Boost Graph library")
variant('taggedlayout', default=False,
description="Augment library names with build options")
+ variant('versionedlayout', default=False,
+ description="Augment library layout with versioned subdirs")
+ variant('clanglibcpp', default=False,
+ description='Compile with clang libc++ instead of libstdc++')
depends_on('icu4c', when='+icu')
depends_on('python', when='+python')
@@ -127,21 +144,29 @@ class Boost(Package):
depends_on('bzip2', when='+iostreams')
depends_on('zlib', when='+iostreams')
+ conflicts('+taggedlayout', when='+versionedlayout')
+
# Patch fix from https://svn.boost.org/trac/boost/ticket/11856
patch('boost_11856.patch', when='@1.60.0%gcc@4.4.7')
+ # Patch fix from https://svn.boost.org/trac/boost/ticket/11120
+ patch('python_jam.patch', when='@1.56.0: ^python@3:')
+ patch('python_jam_pre156.patch', when='@:1.55.0 ^python@3:')
+
+ # Patch fix for IBM XL compiler
+ patch('xl_1_62_0_le.patch', when='@1.62.0%xl_r')
+ patch('xl_1_62_0_le.patch', when='@1.62.0%xl')
+
# Patch fix from https://svn.boost.org/trac/boost/ticket/10125
- patch('boost_10125.patch', when='@1.55.0%gcc@5.0:5.9')
+ patch('call_once_variadic.patch', when='@1.55.0:1.55.9999%gcc@5.0:5.9')
+
+ # Patch fix for PGI compiler
+ patch('boost_1.63.0_pgi.patch', when='@1.63.0%pgi')
+ patch('boost_1.63.0_pgi_17.4_workaround.patch', when='@1.63.0%pgi@17.4')
def url_for_version(self, version):
- """
- Handle Boost's weird URLs,
- which write the version two different ways.
- """
- parts = [str(p) for p in Version(version)]
- dots = ".".join(parts)
- underscores = "_".join(parts)
- return "http://downloads.sourceforge.net/project/boost/boost/%s/boost_%s.tar.bz2" % (dots, underscores)
+ url = "http://downloads.sourceforge.net/project/boost/boost/{0}/boost_{1}.tar.bz2"
+ return url.format(version.dotted, version.underscored)
def determine_toolset(self, spec):
if spec.satisfies("platform=darwin"):
@@ -149,11 +174,14 @@ class Boost(Package):
toolsets = {'g++': 'gcc',
'icpc': 'intel',
- 'clang++': 'clang'}
+ 'clang++': 'clang',
+ 'xlc++': 'xlcpp',
+ 'xlc++_r': 'xlcpp',
+ 'pgc++': 'pgi'}
if spec.satisfies('@1.47:'):
toolsets['icpc'] += '-linux'
- for cc, toolset in toolsets.iteritems():
+ for cc, toolset in toolsets.items():
if cc in self.compiler.cxx_names:
return toolset
@@ -161,23 +189,11 @@ class Boost(Package):
return 'gcc'
def bjam_python_line(self, spec):
- from os.path import dirname, splitext
- pydir = 'python%s.%s*' % spec['python'].version.version[:2]
- incs = join_path(spec['python'].prefix.include, pydir, "pyconfig.h")
- incs = glob(incs)
- incs = " ".join([dirname(u) for u in incs])
-
- pylib = 'libpython%s.%s*' % spec['python'].version.version[:2]
- all_libs = join_path(spec['python'].prefix.lib, pylib)
- libs = [u for u in all_libs if splitext(u)[1] == dso_suffix]
- if len(libs) == 0:
- libs = [u for u in all_libs if splitext(u)[1] == '.a']
-
- libs = " ".join(libs)
- return 'using python : %s : %s : %s : %s ;\n' % (
+ return 'using python : {0} : {1} : {2} : {3} ;\n'.format(
spec['python'].version.up_to(2),
- join_path(spec['python'].prefix.bin, 'python'),
- incs, libs
+ spec['python'].command.path,
+ spec['python'].headers.directories[0],
+ spec['python'].libs[0]
)
def determine_bootstrap_options(self, spec, withLibs, options):
@@ -186,8 +202,7 @@ class Boost(Package):
options.append("--with-libraries=%s" % ','.join(withLibs))
if '+python' in spec:
- options.append('--with-python=%s' %
- join_path(spec['python'].prefix.bin, 'python'))
+ options.append('--with-python=%s' % spec['python'].command.path)
with open('user-config.jam', 'w') as f:
# Boost may end up using gcc even though clang+gfortran is set in
@@ -202,8 +217,21 @@ class Boost(Package):
spack_cxx))
if '+mpi' in spec:
- f.write('using mpi : %s ;\n' %
- join_path(spec['mpi'].prefix.bin, 'mpicxx'))
+
+ # Use the correct mpi compiler. If the compiler options are
+ # empty or undefined, Boost will attempt to figure out the
+ # correct options by running "${mpicxx} -show" or something
+ # similar, but that doesn't work with the Cray compiler
+ # wrappers. Since Boost doesn't use the MPI C++ bindings,
+ # that can be used as a compiler option instead.
+
+ mpi_line = 'using mpi : %s' % spec['mpi'].mpicxx
+
+ if 'platform=cray' in spec:
+ mpi_line += ' : <define>MPICH_SKIP_MPICXX'
+
+ f.write(mpi_line + ' ;\n')
+
if '+python' in spec:
f.write(self.bjam_python_line(spec))
@@ -238,6 +266,8 @@ class Boost(Package):
if '+taggedlayout' in spec:
layout = 'tagged'
+ elif '+versionedlayout' in spec:
+ layout = 'versioned'
else:
if len(threadingOpts) > 1:
raise RuntimeError("Cannot build both single and " +
@@ -260,6 +290,10 @@ class Boost(Package):
# https://svn.boost.org/trac/boost/ticket/12496
if spec.satisfies('%clang'):
options.extend(['pch=off'])
+ if '+clanglibcpp' in spec:
+ options.extend(['toolset=clang',
+ 'cxxflags="-stdlib=libc++"',
+ 'linkflags="-stdlib=libc++"'])
return threadingOpts
@@ -306,7 +340,6 @@ class Boost(Package):
if not spec.satisfies('@1.43.0:'):
withLibs.remove('random')
if '+graph' in spec and '+mpi' in spec:
- withLibs.remove('graph')
withLibs.append('graph_parallel')
# to make Boost find the user-config.jam
@@ -323,7 +356,11 @@ class Boost(Package):
b2name = './b2' if spec.satisfies('@1.47:') else './bjam'
b2 = Executable(b2name)
- b2_options = ['-j', '%s' % make_jobs]
+ jobs = make_jobs
+ # in 1.59 max jobs became dynamic
+ if jobs > 64 and spec.satisfies('@:1.58'):
+ jobs = 64
+ b2_options = ['-j', '%s' % jobs]
threadingOpts = self.determine_b2_options(spec, b2_options)
diff --git a/var/spack/repos/builtin/packages/boost/python_jam.patch b/var/spack/repos/builtin/packages/boost/python_jam.patch
new file mode 100644
index 0000000000..70054ba4ed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/python_jam.patch
@@ -0,0 +1,42 @@
+diff --git a/tools/build/src/tools/python.jam b/tools/build/src/tools/python.jam
+index 90377ea..123f66a 100644
+--- a/tools/build/src/tools/python.jam
++++ b/tools/build/src/tools/python.jam
+@@ -493,6 +493,10 @@ local rule probe ( python-cmd )
+ sys.$(s) = [ SUBST $(output) \\<$(s)=([^$(nl)]+) $1 ] ;
+ }
+ }
++ # Try to get python abiflags
++ full-cmd = $(python-cmd)" -c \"from sys import abiflags; print(abiflags, end='')\"" ;
++
++ sys.abiflags = [ SHELL $(full-cmd) ] ;
+ return $(output) ;
+ }
+ }
+@@ -502,7 +506,7 @@ local rule probe ( python-cmd )
+ # have a value based on the information given.
+ #
+ local rule compute-default-paths ( target-os : version ? : prefix ? :
+- exec-prefix ? )
++ exec-prefix ? : abiflags ? )
+ {
+ exec-prefix ?= $(prefix) ;
+
+@@ -539,7 +543,7 @@ local rule compute-default-paths ( target-os : version ? : prefix ? :
+ }
+ else
+ {
+- includes ?= $(prefix)/include/python$(version) ;
++ includes ?= $(prefix)/include/python$(version)$(abiflags) ;
+
+ local lib = $(exec-prefix)/lib ;
+ libraries ?= $(lib)/python$(version)/config $(lib) ;
+@@ -783,7 +787,7 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? :
+ exec-prefix = $(sys.exec_prefix) ;
+
+ compute-default-paths $(target-os) : $(sys.version) :
+- $(sys.prefix) : $(sys.exec_prefix) ;
++ $(sys.prefix) : $(sys.exec_prefix) : $(sys.abiflags) ;
+
+ version = $(sys.version) ;
+ interpreter-cmd ?= $(cmd) ;
diff --git a/var/spack/repos/builtin/packages/boost/python_jam_pre156.patch b/var/spack/repos/builtin/packages/boost/python_jam_pre156.patch
new file mode 100644
index 0000000000..b5c6404983
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/python_jam_pre156.patch
@@ -0,0 +1,42 @@
+diff --git a/tools/build/v2/tools/python.jam b/tools/build/v2/tools/python.jam
+index 90377ea..123f66a 100644
+--- a/tools/build/v2/tools/python.jam
++++ b/tools/build/v2/tools/python.jam
+@@ -493,6 +493,10 @@ local rule probe ( python-cmd )
+ sys.$(s) = [ SUBST $(output) \\<$(s)=([^$(nl)]+) $1 ] ;
+ }
+ }
++ # Try to get python abiflags
++ full-cmd = $(python-cmd)" -c \"from sys import abiflags; print(abiflags, end='')\"" ;
++
++ sys.abiflags = [ SHELL $(full-cmd) ] ;
+ return $(output) ;
+ }
+ }
+@@ -502,7 +506,7 @@ local rule probe ( python-cmd )
+ # have a value based on the information given.
+ #
+ local rule compute-default-paths ( target-os : version ? : prefix ? :
+- exec-prefix ? )
++ exec-prefix ? : abiflags ? )
+ {
+ exec-prefix ?= $(prefix) ;
+
+@@ -539,7 +543,7 @@ local rule compute-default-paths ( target-os : version ? : prefix ? :
+ }
+ else
+ {
+- includes ?= $(prefix)/include/python$(version) ;
++ includes ?= $(prefix)/include/python$(version)$(abiflags) ;
+
+ local lib = $(exec-prefix)/lib ;
+ libraries ?= $(lib)/python$(version)/config $(lib) ;
+@@ -783,7 +787,7 @@ local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? :
+ exec-prefix = $(sys.exec_prefix) ;
+
+ compute-default-paths $(target-os) : $(sys.version) :
+- $(sys.prefix) : $(sys.exec_prefix) ;
++ $(sys.prefix) : $(sys.exec_prefix) : $(sys.abiflags) ;
+
+ version = $(sys.version) ;
+ interpreter-cmd ?= $(cmd) ;
diff --git a/var/spack/repos/builtin/packages/boost/xl_1_62_0_le.patch b/var/spack/repos/builtin/packages/boost/xl_1_62_0_le.patch
new file mode 100644
index 0000000000..fd0eba345b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/xl_1_62_0_le.patch
@@ -0,0 +1,787 @@
+diff -uNr boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp
+--- boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp 2015-03-23 13:17:14.000000000 -0400
++++ boost_1_62_0/boost/accumulators/statistics/p_square_cumulative_distribution.hpp 2016-01-08 13:29:52.612408601 -0500
+@@ -10,7 +10,7 @@
+
+ #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
+ # pragma message ("Warning: This header is deprecated. Please use: boost/accumulators/statistics/p_square_cumul_dist.hpp")
+-#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
++#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # warning "This header is deprecated. Please use: boost/accumulators/statistics/p_square_cumul_dist.hpp"
+ #endif
+
+diff -uNr boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp
+--- boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp 2015-03-23 13:17:14.000000000 -0400
++++ boost_1_62_0/boost/accumulators/statistics/weighted_p_square_cumulative_distribution.hpp 2016-01-08 13:29:52.649942984 -0500
+@@ -10,7 +10,7 @@
+
+ #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
+ # pragma message ("Warning: This header is deprecated. Please use: boost/accumulators/statistics/weighted_p_square_cumul_dist.hpp")
+-#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
++#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # warning "This header is deprecated. Please use: boost/accumulators/statistics/weighted_p_square_cumul_dist.hpp"
+ #endif
+
+diff -uNr boost_1_62_0/boost/asio/detail/pop_options.hpp boost_1_62_0/boost/asio/detail/pop_options.hpp
+--- boost_1_62_0/boost/asio/detail/pop_options.hpp 2015-03-23 16:24:12.000000000 -0400
++++ boost_1_62_0/boost/asio/detail/pop_options.hpp 2016-01-08 13:29:52.725151630 -0500
+@@ -107,7 +107,7 @@
+
+ // MPW MrCpp or SCpp
+
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+
+ // IBM Visual Age
+
+diff -uNr boost_1_62_0/boost/asio/detail/push_options.hpp boost_1_62_0/boost/asio/detail/push_options.hpp
+--- boost_1_62_0/boost/asio/detail/push_options.hpp 2015-03-23 16:24:12.000000000 -0400
++++ boost_1_62_0/boost/asio/detail/push_options.hpp 2016-01-08 13:29:52.779979004 -0500
+@@ -114,7 +114,7 @@
+
+ // MPW MrCpp or SCpp
+
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+
+ // IBM Visual Age
+
+diff -uNr boost_1_62_0/boost/asio/impl/src.cpp boost_1_62_0/boost/asio/impl/src.cpp
+--- boost_1_62_0/boost/asio/impl/src.cpp 2015-03-23 16:24:12.000000000 -0400
++++ boost_1_62_0/boost/asio/impl/src.cpp 2016-01-08 13:29:52.855662358 -0500
+@@ -17,7 +17,7 @@
+ #elif defined(__GNUC__) \
+ || defined(__HP_aCC) \
+ || defined(__SUNPRO_CC) \
+- || defined(__IBMCPP__)
++ || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # warning "This file is deprecated."
+ # warning "Please #include <boost/asio/impl/src.hpp> instead."
+ #endif
+diff -uNr boost_1_62_0/boost/bind/bind.hpp boost_1_62_0/boost/bind/bind.hpp
+--- boost_1_62_0/boost/bind/bind.hpp 2015-05-03 18:08:08.000000000 -0400
++++ boost_1_62_0/boost/bind/bind.hpp 2016-01-08 13:29:52.921370966 -0500
+@@ -1970,7 +1970,7 @@
+ typedef void type;
+ };
+
+-#if !defined(__IBMCPP__) || __IBMCPP_FUNC_CV_TMPL_ARG_DEDUCTION
++#if !(defined(__IBMCPP__) && !defined(__ibmxl__)) || __IBMCPP_FUNC_CV_TMPL_ARG_DEDUCTION
+
+ template< class R, class T > struct add_cref< R (T::*) () const, 1 >
+ {
+diff -uNr boost_1_62_0/boost/config/requires_threads.hpp boost_1_62_0/boost/config/requires_threads.hpp
+--- boost_1_62_0/boost/config/requires_threads.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/config/requires_threads.hpp 2016-01-08 13:29:53.028994548 -0500
+@@ -70,7 +70,7 @@
+ // HP aCC
+ # error "Compiler threading support is not turned on. Please set the correct command line options for threading: -mt"
+
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+ // IBM Visual Age
+ # error "Compiler threading support is not turned on. Please compile the code with the xlC_r compiler"
+
+diff -uNr boost_1_62_0/boost/config/select_compiler_config.hpp boost_1_62_0/boost/config/select_compiler_config.hpp
+--- boost_1_62_0/boost/config/select_compiler_config.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/config/select_compiler_config.hpp 2016-01-08 13:29:53.495533933 -0500
+@@ -96,7 +96,7 @@
+ // IBM XL C/C++ for Linux (Little Endian)
+ # define BOOST_COMPILER_CONFIG "boost/config/compiler/xlcpp.hpp"
+
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+ // IBM Visual Age or IBM XL C/C++ for Linux (Big Endian)
+ # define BOOST_COMPILER_CONFIG "boost/config/compiler/vacpp.hpp"
+
+diff -uNr boost_1_62_0/boost/config/select_platform_config.hpp boost_1_62_0/boost/config/select_platform_config.hpp
+--- boost_1_62_0/boost/config/select_platform_config.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/config/select_platform_config.hpp 2016-01-08 13:29:53.575187839 -0500
+@@ -53,7 +53,7 @@
+ // MacOS
+ # define BOOST_PLATFORM_CONFIG "boost/config/platform/macos.hpp"
+
+-#elif defined(__IBMCPP__) || defined(_AIX)
++#elif (defined(__IBMCPP__) && !defined(__ibmxl__)) || defined(_AIX)
+ // IBM
+ # define BOOST_PLATFORM_CONFIG "boost/config/platform/aix.hpp"
+
+diff -uNr boost_1_62_0/boost/config/select_stdlib_config.hpp boost_1_62_0/boost/config/select_stdlib_config.hpp
+--- boost_1_62_0/boost/config/select_stdlib_config.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/config/select_stdlib_config.hpp 2016-01-08 13:29:53.626526177 -0500
+@@ -37,7 +37,7 @@
+ // #include if they know whose std lib they are using.
+ #if !defined(__LIBCOMO__) && !defined(__STD_RWCOMPILER_H__) && !defined(_RWSTD_VER)\
+ && !defined(_LIBCPP_VERSION) && !defined(__GLIBCPP__) && !defined(__GLIBCXX__)\
+- && !defined(__STL_CONFIG_H) && !defined(__MSL_CPP__) && !defined(__IBMCPP__)\
++ && !defined(__STL_CONFIG_H) && !defined(__MSL_CPP__) && !(defined(__IBMCPP__) && !defined(__ibmxl__) )\
+ && !defined(MSIPL_COMPILE_H) && !defined(_YVALS) && !defined(_CPPLIB_VER)
+ #include <utility>
+ #endif
+@@ -66,7 +66,7 @@
+ // MSL standard lib:
+ # define BOOST_STDLIB_CONFIG "boost/config/stdlib/msl.hpp"
+
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+ // take the default VACPP std lib
+ # define BOOST_STDLIB_CONFIG "boost/config/stdlib/vacpp.hpp"
+
+@@ -74,7 +74,7 @@
+ // Modena C++ standard library
+ # define BOOST_STDLIB_CONFIG "boost/config/stdlib/modena.hpp"
+
+-#elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
++#elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__) )) || defined(_CPPLIB_VER)
+ // Dinkumware Library (this has to appear after any possible replacement libraries):
+ # define BOOST_STDLIB_CONFIG "boost/config/stdlib/dinkumware.hpp"
+
+diff -uNr boost_1_62_0/boost/core/explicit_operator_bool.hpp boost_1_62_0/boost/core/explicit_operator_bool.hpp
+--- boost_1_62_0/boost/core/explicit_operator_bool.hpp 2015-07-20 05:32:52.000000000 -0400
++++ boost_1_62_0/boost/core/explicit_operator_bool.hpp 2016-01-08 13:29:53.895509554 -0500
+@@ -78,7 +78,7 @@
+
+ namespace detail {
+
+-#if !defined(_MSC_VER) && !defined(__IBMCPP__)
++#if !defined(_MSC_VER) && !(defined(__IBMCPP__) && !defined(__ibmxl__))
+
+ struct unspecified_bool
+ {
+diff -uNr boost_1_62_0/boost/cstdint.hpp boost_1_62_0/boost/cstdint.hpp
+--- boost_1_62_0/boost/cstdint.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/cstdint.hpp 2016-01-08 13:29:53.969672718 -0500
+@@ -54,7 +54,7 @@
+ // this is triggered with GCC, because it defines __cplusplus < 199707L
+ # define BOOST_NO_INT64_T
+ # endif
+-# elif defined(__FreeBSD__) || defined(__IBMCPP__) || defined(_AIX)
++# elif defined(__FreeBSD__) || (defined(__IBMCPP__) && !defined(__ibmxl__))|| defined(_AIX)
+ # include <inttypes.h>
+ # else
+ # include <stdint.h>
+diff -uNr boost_1_62_0/boost/current_function.hpp boost_1_62_0/boost/current_function.hpp
+--- boost_1_62_0/boost/current_function.hpp 2015-01-30 18:08:49.000000000 -0500
++++ boost_1_62_0/boost/current_function.hpp 2016-01-08 13:29:54.012897946 -0500
+@@ -40,7 +40,7 @@
+
+ # define BOOST_CURRENT_FUNCTION __FUNCSIG__
+
+-#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && (__IBMCPP__ >= 500))
++#elif (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 600)) || (defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 500))
+
+ # define BOOST_CURRENT_FUNCTION __FUNCTION__
+
+diff -uNr boost_1_62_0/boost/detail/container_fwd.hpp boost_1_62_0/boost/detail/container_fwd.hpp
+--- boost_1_62_0/boost/detail/container_fwd.hpp 2015-04-01 11:49:11.000000000 -0400
++++ boost_1_62_0/boost/detail/container_fwd.hpp 2016-01-08 13:29:54.062758504 -0500
+@@ -70,12 +70,12 @@
+ # elif defined(__MSL_CPP__)
+ // MSL standard lib:
+ # define BOOST_DETAIL_NO_CONTAINER_FWD
+-# elif defined(__IBMCPP__)
++# elif defined(__IBMCPP__) && !defined(__ibmxl__)
+ // The default VACPP std lib, forward declaration seems to be fine.
+ # elif defined(MSIPL_COMPILE_H)
+ // Modena C++ standard library
+ # define BOOST_DETAIL_NO_CONTAINER_FWD
+-# elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
++# elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER)
+ // Dinkumware Library (this has to appear after any possible replacement
+ // libraries)
+ # else
+diff -uNr boost_1_62_0/boost/detail/workaround.hpp boost_1_62_0/boost/detail/workaround.hpp
+--- boost_1_62_0/boost/detail/workaround.hpp 2015-08-04 07:44:49.000000000 -0400
++++ boost_1_62_0/boost/detail/workaround.hpp 2016-01-09 13:56:47.218685439 -0500
+@@ -85,7 +85,7 @@
+ #else
+ #define __GNUC_PATCHLEVEL___WORKAROUND_GUARD 0
+ #endif
+-#ifndef __IBMCPP__
++#if !defined(__IBMCPP__) || defined(__ibmxl__)
+ #define __IBMCPP___WORKAROUND_GUARD 1
+ #else
+ #define __IBMCPP___WORKAROUND_GUARD 0
+diff -uNr boost_1_62_0/boost/foreach.hpp boost_1_62_0/boost/foreach.hpp
+--- boost_1_62_0/boost/foreach.hpp 2015-03-04 15:36:38.000000000 -0500
++++ boost_1_62_0/boost/foreach.hpp 2016-01-09 13:58:39.495427757 -0500
+@@ -55,7 +55,7 @@
+ || BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \
+ || BOOST_WORKAROUND(BOOST_INTEL_WIN, BOOST_TESTED_AT(1400)) \
+ || (BOOST_WORKAROUND(__GNUC__, == 3) && (__GNUC_MINOR__ <= 3) && defined(__APPLE_CC__)) \
+- || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) \
++ || (BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) && (__IBMCPP__ < 1300)) \
+ || BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3206)) \
+ || BOOST_WORKAROUND(__SUNPRO_CC, >= 0x5100) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x590))
+diff -uNr boost_1_62_0/boost/functional/hash/detail/float_functions.hpp boost_1_62_0/boost/functional/hash/detail/float_functions.hpp
+--- boost_1_62_0/boost/functional/hash/detail/float_functions.hpp 2015-01-24 09:37:21.000000000 -0500
++++ boost_1_62_0/boost/functional/hash/detail/float_functions.hpp 2016-01-08 13:29:54.116374393 -0500
+@@ -47,7 +47,7 @@
+ #elif defined(__MSL_CPP__)
+ // MSL standard lib:
+ # define BOOST_HASH_CONFORMANT_FLOATS 0
+-#elif defined(__IBMCPP__)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__)
+ // VACPP std lib (probably conformant for much earlier version).
+ # if __IBMCPP__ >= 1210
+ # define BOOST_HASH_CONFORMANT_FLOATS 1
+@@ -57,7 +57,7 @@
+ #elif defined(MSIPL_COMPILE_H)
+ // Modena C++ standard library
+ # define BOOST_HASH_CONFORMANT_FLOATS 0
+-#elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
++#elif (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER)
+ // Dinkumware Library (this has to appear after any possible replacement libraries):
+ # if _CPPLIB_VER >= 405
+ # define BOOST_HASH_CONFORMANT_FLOATS 1
+diff -uNr boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp
+--- boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp 2014-08-03 15:46:30.000000000 -0400
++++ boost_1_62_0/boost/graph/edmunds_karp_max_flow.hpp 2016-01-08 13:29:54.165330185 -0500
+@@ -10,7 +10,7 @@
+
+ #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
+ # pragma message ("Warning: This header is deprecated. Please use: boost/graph/edmonds_karp_max_flow.hpp")
+-#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
++#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || (defined(__IBMCPP__) && !defined(__ibmxl__))
+ # warning "This header is deprecated. Please use: boost/graph/edmonds_karp_max_flow.hpp"
+ #endif
+
+diff -uNr boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp
+--- boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp 2015-07-21 17:39:18.000000000 -0400
++++ boost_1_62_0/boost/intrusive/detail/parent_from_member.hpp 2016-01-08 13:29:54.266801426 -0500
+@@ -71,7 +71,7 @@
+
+ //This works with gcc, msvc, ac++, ibmcpp
+ #elif defined(__GNUC__) || defined(__HP_aCC) || defined(BOOST_INTEL) || \
+- defined(__IBMCPP__) || defined(__DECCXX)
++ defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__DECCXX)
+ const Parent * const parent = 0;
+ const char *const member = static_cast<const char*>(static_cast<const void*>(&(parent->*ptr_to_member)));
+ return std::ptrdiff_t(member - static_cast<const char*>(static_cast<const void*>(parent)));
+diff -uNr boost_1_62_0/boost/iostreams/detail/add_facet.hpp boost_1_62_0/boost/iostreams/detail/add_facet.hpp
+--- boost_1_62_0/boost/iostreams/detail/add_facet.hpp 2015-01-25 14:33:40.000000000 -0500
++++ boost_1_62_0/boost/iostreams/detail/add_facet.hpp 2016-01-08 13:29:54.290652933 -0500
+@@ -23,7 +23,7 @@
+ #if (defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)) && \
+ defined(_STLP_NO_OWN_IOSTREAMS) \
+ /**/
+-# if (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
++# if (defined(_YVALS) && !(defined(__IBMCPP__) && !defined(__ibmxl__))) || defined(_CPPLIB_VER)
+ # define BOOST_IOSTREMS_STLPORT_WITH_OLD_DINKUMWARE
+ # endif
+ #endif
+diff -uNr boost_1_62_0/boost/iostreams/positioning.hpp boost_1_62_0/boost/iostreams/positioning.hpp
+--- boost_1_62_0/boost/iostreams/positioning.hpp 2015-01-25 14:33:40.000000000 -0500
++++ boost_1_62_0/boost/iostreams/positioning.hpp 2016-01-08 13:29:54.321832608 -0500
+@@ -82,7 +82,7 @@
+ // Converts a std::fpos_t to a stream_offset
+ inline stream_offset fpos_t_to_offset(std::fpos_t pos)
+ {
+-# if defined(_POSIX_) || (_INTEGRAL_MAX_BITS >= 64) || defined(__IBMCPP__)
++# if defined(_POSIX_) || (_INTEGRAL_MAX_BITS >= 64) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ return pos;
+ # else
+ return _FPOSOFF(pos);
+@@ -92,7 +92,7 @@
+ // Extracts the member _Fpos from a std::fpos
+ inline std::fpos_t streampos_to_fpos_t(std::streampos pos)
+ {
+-# if defined (_CPPLIB_VER) || defined(__IBMCPP__)
++# if defined (_CPPLIB_VER) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ return pos.seekpos();
+ # else
+ return pos.get_fpos_t();
+diff -uNr boost_1_62_0/boost/math/tools/config.hpp boost_1_62_0/boost/math/tools/config.hpp
+--- boost_1_62_0/boost/math/tools/config.hpp 2015-05-05 08:32:10.000000000 -0400
++++ boost_1_62_0/boost/math/tools/config.hpp 2016-01-08 13:29:54.360466863 -0500
+@@ -43,7 +43,7 @@
+ # define BOOST_MATH_CONTROL_FP _control87(MCW_EM,MCW_EM)
+ # include <float.h>
+ #endif
+-#ifdef __IBMCPP__
++#if defined(__IBMCPP__) && !defined(__ibmxl__)
+ //
+ // For reasons I don't unserstand, the tests with IMB's compiler all
+ // pass at long double precision, but fail with real_concept, those tests
+@@ -98,7 +98,7 @@
+ # define BOOST_MATH_CONTROL_FP _control87(MCW_EM,MCW_EM)
+ #endif
+
+-#ifdef __IBMCPP__
++#if defined(__IBMCPP__) && !defined(__ibmxl__)
+ # define BOOST_MATH_NO_DEDUCED_FUNCTION_POINTERS
+ #endif
+
+@@ -336,7 +336,7 @@
+ # endif
+ #endif
+
+-#if ((defined(__linux__) && !defined(__UCLIBC__) && !defined(BOOST_MATH_HAVE_FIXED_GLIBC)) || defined(__QNX__) || defined(__IBMCPP__)) && !defined(BOOST_NO_FENV_H)
++#if ((defined(__linux__) && !defined(__UCLIBC__) && !defined(BOOST_MATH_HAVE_FIXED_GLIBC)) || defined(__QNX__) || (defined(__IBMCPP__) && !defined(__ibmxl__))) && !defined(BOOST_NO_FENV_H)
+ //
+ // This code was introduced in response to this glibc bug: http://sourceware.org/bugzilla/show_bug.cgi?id=2445
+ // Basically powl and expl can return garbage when the result is small and certain exception flags are set
+diff -uNr boost_1_62_0/boost/math/tools/tuple.hpp boost_1_62_0/boost/math/tools/tuple.hpp
+--- boost_1_62_0/boost/math/tools/tuple.hpp 2015-05-05 08:32:10.000000000 -0400
++++ boost_1_62_0/boost/math/tools/tuple.hpp 2016-01-08 13:29:54.575224775 -0500
+@@ -27,7 +27,7 @@
+
+ }}
+
+-#elif (defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)) || defined(__IBMCPP__)
++#elif (defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)) || defined(__IBMCPP__) && !defined(__ibmxl__)
+
+ #include <boost/tuple/tuple.hpp>
+ #include <boost/tuple/tuple_comparison.hpp>
+diff -uNr boost_1_62_0/boost/preprocessor/config/config.hpp boost_1_62_0/boost/preprocessor/config/config.hpp
+--- boost_1_62_0/boost/preprocessor/config/config.hpp 2015-07-17 07:45:08.000000000 -0400
++++ boost_1_62_0/boost/preprocessor/config/config.hpp 2016-01-10 01:51:46.139445697 -0500
+@@ -43,7 +43,7 @@
+ # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_DMC())
+ # elif defined(__BORLANDC__) && __BORLANDC__ >= 0x581
+ # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT())
+-# elif defined(__BORLANDC__) || defined(__IBMC__) || defined(__IBMCPP__) || defined(__SUNPRO_CC)
++# elif defined(__BORLANDC__) || defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__SUNPRO_CC)
+ # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_BCC())
+ # elif defined(_MSC_VER) && !defined(__clang__)
+ # define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC())
+@@ -73,7 +73,7 @@
+ # define BOOST_PP_VARIADICS_MSVC 0
+ # if !defined BOOST_PP_VARIADICS
+ # /* variadic support explicitly disabled for all untested compilers */
+-# if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI
++# if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || (defined __IBMCPP__ && !defined __ibmxl__ ) || defined __PGI
+ # define BOOST_PP_VARIADICS 0
+ # /* VC++ (C/C++) */
+ # elif defined _MSC_VER && _MSC_VER >= 1400 && (!defined __EDG__ || defined(__INTELLISENSE__)) && !defined __clang__
+@@ -92,7 +92,7 @@
+ # elif !BOOST_PP_VARIADICS + 1 < 2
+ # undef BOOST_PP_VARIADICS
+ # define BOOST_PP_VARIADICS 1
+-# if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI))
++# if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || (defined __IBMCPP__ && !defined __ibmxl__ ) || defined __PGI))
+ # undef BOOST_PP_VARIADICS_MSVC
+ # define BOOST_PP_VARIADICS_MSVC 1
+ # endif
+diff -uNr boost_1_62_0/boost/preprocessor/seq/elem.hpp boost_1_62_0/boost/preprocessor/seq/elem.hpp
+--- boost_1_62_0/boost/preprocessor/seq/elem.hpp 2015-07-17 07:45:08.000000000 -0400
++++ boost_1_62_0/boost/preprocessor/seq/elem.hpp 2016-01-10 01:53:11.941880189 -0500
+@@ -35,7 +35,7 @@
+ # define BOOST_PP_SEQ_ELEM_III(im) BOOST_PP_SEQ_ELEM_IV(im)
+ # define BOOST_PP_SEQ_ELEM_IV(x, _) x
+ # else
+-# if defined(__IBMC__) || defined(__IBMCPP__)
++# if defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq))
+ # else
+ # define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_SEQ_ELEM_ ## i seq)
+diff -uNr boost_1_62_0/boost/preprocessor/seq/size.hpp boost_1_62_0/boost/preprocessor/seq/size.hpp
+--- boost_1_62_0/boost/preprocessor/seq/size.hpp 2015-07-17 07:45:08.000000000 -0400
++++ boost_1_62_0/boost/preprocessor/seq/size.hpp 2016-01-10 01:53:59.736320846 -0500
+@@ -22,7 +22,7 @@
+ # elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() || BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
+ # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_SEQ_SIZE_I(seq)
+ # define BOOST_PP_SEQ_SIZE_I(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq)
+-# elif defined(__IBMC__) || defined(__IBMCPP__)
++# elif defined(__IBMC__) && !defined(__ibmxl__) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq))
+ # else
+ # define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq)
+diff -uNr boost_1_62_0/boost/regex/icu.hpp boost_1_62_0/boost/regex/icu.hpp
+--- boost_1_62_0/boost/regex/icu.hpp 2015-02-14 08:22:25.000000000 -0500
++++ boost_1_62_0/boost/regex/icu.hpp 2016-01-08 13:29:54.840564509 -0500
+@@ -243,7 +243,7 @@
+ //
+ namespace re_detail{
+
+-#if !defined(BOOST_NO_MEMBER_TEMPLATES) && !defined(__IBMCPP__)
++#if !defined(BOOST_NO_MEMBER_TEMPLATES) && !(defined(__IBMCPP__) && !defined(__ibmxl__))
+ template <class InputIterator>
+ inline u32regex do_make_u32regex(InputIterator i,
+ InputIterator j,
+diff -uNr boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp
+--- boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp 2015-02-14 08:22:25.000000000 -0500
++++ boost_1_62_0/boost/regex/v4/cpp_regex_traits.hpp 2016-01-08 13:29:54.936872839 -0500
+@@ -275,7 +275,7 @@
+ // we need to start by initialising our syntax map so we know which
+ // character is used for which purpose:
+ #ifndef BOOST_NO_STD_MESSAGES
+-#ifndef __IBMCPP__
++#if !defined(__IBMCPP__) || defined(__ibmxl__)
+ typename std::messages<charT>::catalog cat = static_cast<std::messages<char>::catalog>(-1);
+ #else
+ typename std::messages<charT>::catalog cat = reinterpret_cast<std::messages<char>::catalog>(-1);
+@@ -702,7 +702,7 @@
+ void cpp_regex_traits_implementation<charT>::init()
+ {
+ #ifndef BOOST_NO_STD_MESSAGES
+-#ifndef __IBMCPP__
++#if !defined(__IBMCPP__) || defined(__ibmxl__)
+ typename std::messages<charT>::catalog cat = static_cast<std::messages<char>::catalog>(-1);
+ #else
+ typename std::messages<charT>::catalog cat = reinterpret_cast<std::messages<char>::catalog>(-1);
+diff -uNr boost_1_62_0/boost/serialization/force_include.hpp boost_1_62_0/boost/serialization/force_include.hpp
+--- boost_1_62_0/boost/serialization/force_include.hpp 2015-05-23 14:51:06.000000000 -0400
++++ boost_1_62_0/boost/serialization/force_include.hpp 2016-01-08 13:29:55.027329880 -0500
+@@ -37,7 +37,7 @@
+ # define BOOST_DLLEXPORT __declspec(dllexport)
+ # elif defined(__GNUC__) && (__GNUC__ >= 3)
+ # define BOOST_USED __attribute__ ((__used__))
+-# elif defined(__IBMCPP__) && (__IBMCPP__ >= 1110)
++# elif defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 1110)
+ # define BOOST_USED __attribute__ ((__used__))
+ # elif defined(__INTEL_COMPILER) && (BOOST_INTEL_CXX_VERSION >= 800)
+ # define BOOST_USED __attribute__ ((__used__))
+diff -uNr boost_1_62_0/boost/signal.hpp boost_1_62_0/boost/signal.hpp
+--- boost_1_62_0/boost/signal.hpp 2015-04-01 13:32:16.000000000 -0400
++++ boost_1_62_0/boost/signal.hpp 2016-01-08 13:29:55.079443080 -0500
+@@ -13,7 +13,7 @@
+ #ifndef BOOST_SIGNALS_NO_DEPRECATION_WARNING
+ # if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
+ # pragma message ("Warning: Boost.Signals is no longer being maintained and is now deprecated. Please switch to Boost.Signals2. To disable this warning message, define BOOST_SIGNALS_NO_DEPRECATION_WARNING.")
+-# elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
++# elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # warning "Boost.Signals is no longer being maintained and is now deprecated. Please switch to Boost.Signals2. To disable this warning message, define BOOST_SIGNALS_NO_DEPRECATION_WARNING."
+ # endif
+ #endif
+diff -uNr boost_1_62_0/boost/spirit.hpp boost_1_62_0/boost/spirit.hpp
+--- boost_1_62_0/boost/spirit.hpp 2015-07-14 18:38:56.000000000 -0400
++++ boost_1_62_0/boost/spirit.hpp 2016-01-08 13:29:55.145408036 -0500
+@@ -14,7 +14,7 @@
+ #if BOOST_VERSION >= 103800
+ #if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__DMC__)
+ # pragma message ("Warning: This header is deprecated. Please use: boost/spirit/include/classic.hpp")
+-#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__)
++#elif defined(__GNUC__) || defined(__HP_aCC) || defined(__SUNPRO_CC) || defined(__IBMCPP__) && !defined(__ibmxl__)
+ # warning "This header is deprecated. Please use: boost/spirit/include/classic.hpp"
+ #endif
+ #endif
+diff -uNr boost_1_62_0/boost/thread/detail/platform.hpp boost_1_62_0/boost/thread/detail/platform.hpp
+--- boost_1_62_0/boost/thread/detail/platform.hpp 2015-04-18 05:56:34.000000000 -0400
++++ boost_1_62_0/boost/thread/detail/platform.hpp 2016-01-08 13:29:55.225161873 -0500
+@@ -37,7 +37,7 @@
+ #elif defined(macintosh) || defined(__APPLE__) || defined(__APPLE_CC__)
+ # define BOOST_THREAD_MACOS
+ //# define BOOST_THREAD_WAIT_BUG boost::posix_time::microseconds(1000)
+-#elif defined(__IBMCPP__) || defined(_AIX)
++#elif defined(__IBMCPP__) && !defined(__ibmxl__) || defined(_AIX)
+ # define BOOST_THREAD_AIX
+ #elif defined(__amigaos__)
+ # define BOOST_THREAD_AMIGAOS
+diff -uNr boost_1_62_0/boost/tr1/detail/config.hpp boost_1_62_0/boost/tr1/detail/config.hpp
+--- boost_1_62_0/boost/tr1/detail/config.hpp 2014-02-20 08:26:34.000000000 -0500
++++ boost_1_62_0/boost/tr1/detail/config.hpp 2016-01-08 13:29:55.295115823 -0500
+@@ -10,7 +10,7 @@
+
+ #if (defined(__GNUC__) && !(defined(linux) || defined(__linux) || defined(__linux__))) \
+ || (!defined(__FreeBSD__) && defined(__GNUC__)) \
+- || (!defined(_AIX) && defined(__IBMCPP__) && (__IBMCPP__ >= 800))
++ || (!defined(_AIX) && defined(__IBMCPP__) && !defined(__ibmxl__) && (__IBMCPP__ >= 800))
+ // Disable use of #include_next on Linux as typically we are installed in a
+ // directory that is searched *after* the std lib include path.
+ #if !defined(BOOST_HAS_INCLUDE_NEXT)
+diff -uNr boost_1_62_0/boost/type_traits/extent.hpp boost_1_62_0/boost/type_traits/extent.hpp
+--- boost_1_62_0/boost/type_traits/extent.hpp 2015-05-21 13:51:23.000000000 -0400
++++ boost_1_62_0/boost/type_traits/extent.hpp 2016-01-08 13:29:55.455420729 -0500
+@@ -80,7 +80,7 @@
+ BOOST_STATIC_CONSTANT(std::size_t, value = R);
+ };
+
+-#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) && !defined(__MWERKS__)
++#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) && !defined(__MWERKS__)
+ template <class T, std::size_t N>
+ struct extent_imp<T[], N>
+ {
+diff -uNr boost_1_62_0/boost/type_traits/is_array.hpp boost_1_62_0/boost/type_traits/is_array.hpp
+--- boost_1_62_0/boost/type_traits/is_array.hpp 2016-07-11 13:30:44.296134002 -0400
++++ boost_1_62_0/boost/type_traits/is_array.hpp 2016-07-11 13:30:28.084752131 -0400
+@@ -28,7 +28,7 @@
+ template <class T, std::size_t N> struct is_array<T const[N]> : public true_type{};
+ template <class T, std::size_t N> struct is_array<T volatile[N]> : public true_type{};
+ template <class T, std::size_t N> struct is_array<T const volatile[N]> : public true_type{};
+-#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
++#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
+ template <class T> struct is_array<T[]> : public true_type{};
+ template <class T> struct is_array<T const[]> : public true_type{};
+ template <class T> struct is_array<T const volatile[]> : public true_type{};
+diff -uNr boost_1_62_0/boost/type_traits/is_convertible.hpp boost_1_62_0/boost/type_traits/is_convertible.hpp
+--- boost_1_62_0/boost/type_traits/is_convertible.hpp 2015-05-21 13:51:23.000000000 -0400
++++ boost_1_62_0/boost/type_traits/is_convertible.hpp 2016-01-08 13:29:55.605870032 -0500
+@@ -152,7 +152,7 @@
+ };
+
+ #elif (defined(__EDG_VERSION__) && (__EDG_VERSION__ >= 245) && !defined(__ICL)) \
+- || defined(__IBMCPP__) || defined(__HP_aCC)
++ || defined(__IBMCPP__) && !defined(__ibmxl__) || defined(__HP_aCC)
+ //
+ // This is *almost* an ideal world implementation as it doesn't rely
+ // on undefined behaviour by passing UDT's through (...).
+diff -uNr boost_1_62_0/boost/type_traits/rank.hpp boost_1_62_0/boost/type_traits/rank.hpp
+--- boost_1_62_0/boost/type_traits/rank.hpp 2015-05-21 13:51:23.000000000 -0400
++++ boost_1_62_0/boost/type_traits/rank.hpp 2016-01-08 13:29:55.675140771 -0500
+@@ -49,7 +49,7 @@
+ BOOST_STATIC_CONSTANT(std::size_t, value = (::boost::detail::rank_imp<T, N+1>::value));
+ };
+
+-#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
++#if !BOOST_WORKAROUND(__BORLANDC__, < 0x600) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
+ template <class T, std::size_t N>
+ struct rank_imp<T[], N>
+ {
+diff -uNr boost_1_62_0/boost/type_traits/remove_all_extents.hpp boost_1_62_0/boost/type_traits/remove_all_extents.hpp
+--- boost_1_62_0/boost/type_traits/remove_all_extents.hpp 2015-05-21 13:51:23.000000000 -0400
++++ boost_1_62_0/boost/type_traits/remove_all_extents.hpp 2016-01-08 13:29:55.746149995 -0500
+@@ -22,7 +22,7 @@
+ template <class T, std::size_t N> struct remove_all_extents<T const[N]> : public remove_all_extents<T const>{};
+ template <class T, std::size_t N> struct remove_all_extents<T volatile[N]> : public remove_all_extents<T volatile>{};
+ template <class T, std::size_t N> struct remove_all_extents<T const volatile[N]> : public remove_all_extents<T const volatile>{};
+-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
++#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
+ template <class T> struct remove_all_extents<T[]> : public remove_all_extents<T>{};
+ template <class T> struct remove_all_extents<T const[]> : public remove_all_extents<T const>{};
+ template <class T> struct remove_all_extents<T volatile[]> : public remove_all_extents<T volatile>{};
+diff -uNr boost_1_62_0/boost/type_traits/remove_extent.hpp boost_1_62_0/boost/type_traits/remove_extent.hpp
+--- boost_1_62_0/boost/type_traits/remove_extent.hpp 2015-05-21 13:51:23.000000000 -0400
++++ boost_1_62_0/boost/type_traits/remove_extent.hpp 2016-01-10 02:18:53.967902075 -0500
+@@ -22,7 +22,7 @@
+ template <typename T, std::size_t N> struct remove_extent<T const[N]> { typedef T const type; };
+ template <typename T, std::size_t N> struct remove_extent<T volatile [N]> { typedef T volatile type; };
+ template <typename T, std::size_t N> struct remove_extent<T const volatile [N]> { typedef T const volatile type; };
+-#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
++#if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) && !(defined(__IBMCPP__) && !defined(__ibmxl__)) && !BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
+ template <typename T> struct remove_extent<T[]> { typedef T type; };
+ template <typename T> struct remove_extent<T const[]> { typedef T const type; };
+ template <typename T> struct remove_extent<T volatile[]> { typedef T volatile type; };
+diff -uNr boost_1_62_0/bootstrap.sh boost_1_62_0/bootstrap.sh
+--- boost_1_62_0/bootstrap.sh 2015-08-11 10:00:14.000000000 -0400
++++ boost_1_62_0/bootstrap.sh 2016-01-08 12:17:34.671934715 -0500
+@@ -195,7 +195,7 @@
+ if test "x$TOOLSET" = x; then
+ guessed_toolset=`$my_dir/tools/build/src/engine/build.sh --guess-toolset`
+ case $guessed_toolset in
+- acc | darwin | gcc | como | mipspro | pathscale | pgi | qcc | vacpp )
++ acc | darwin | gcc | como | mipspro | pathscale | pgi | qcc | vacpp | xlcpp )
+ TOOLSET=$guessed_toolset
+ ;;
+
+diff -uNr boost_1_62_0/libs/atomic/test/Jamfile.v2 boost_1_62_0/libs/atomic/test/Jamfile.v2
+--- boost_1_62_0/libs/atomic/test/Jamfile.v2 2015-01-25 10:50:58.000000000 -0500
++++ boost_1_62_0/libs/atomic/test/Jamfile.v2 2016-01-08 12:23:33.758048088 -0500
+@@ -17,6 +17,7 @@
+ <target-os>windows:<define>BOOST_USE_WINDOWS_H
+ <target-os>windows:<define>_WIN32_WINNT=0x0500
+ <toolset>gcc,<target-os>windows:<linkflags>"-lkernel32"
++ <toolset>xlcpp:<linkflags>"-latomic"
+ ;
+
+ test-suite atomic
+diff -uNr boost_1_62_0/libs/context/build/Jamfile.v2 boost_1_62_0/libs/context/build/Jamfile.v2
+--- boost_1_62_0/libs/context/build/Jamfile.v2 2015-06-29 11:08:22.000000000 -0400
++++ boost_1_62_0/libs/context/build/Jamfile.v2 2016-01-08 12:24:40.614024908 -0500
+@@ -99,6 +99,11 @@
+ cpp -x assembler-with-cpp "$(>)" | as --64 -o "$(<)"
+ }
+
++actions gaspower64
++{
++ cpp -x assembler-with-cpp "$(>)" | as -a64 -o "$(<)"
++}
++
+ actions gasx32
+ {
+ cpp -x assembler-with-cpp "$(>)" | as --x32 -o "$(<)"
+@@ -442,9 +447,9 @@
+ # POWERPC_64
+ # POWERPC_64/SYSV/ELF
+ alias asm_context_sources
+- : [ make asm/make_ppc64_sysv_elf_gas.o : asm/make_ppc64_sysv_elf_gas.S : @gas64 ]
+- [ make asm/jump_ppc64_sysv_elf_gas.o : asm/jump_ppc64_sysv_elf_gas.S : @gas64 ]
+- [ make asm/ontop_ppc64_sysv_elf_gas.o : asm/ontop_ppc64_sysv_elf_gas.S : @gas64 ]
++ : [ make asm/make_ppc64_sysv_elf_gas.o : asm/make_ppc64_sysv_elf_gas.S : @gaspower64 ]
++ [ make asm/jump_ppc64_sysv_elf_gas.o : asm/jump_ppc64_sysv_elf_gas.S : @gaspower64 ]
++ [ make asm/ontop_ppc64_sysv_elf_gas.o : asm/ontop_ppc64_sysv_elf_gas.S : @gaspower64 ]
+ : <abi>sysv
+ <address-model>64
+ <architecture>power
+diff -uNr boost_1_62_0/libs/foreach/test/Jamfile.v2 boost_1_62_0/libs/foreach/test/Jamfile.v2
+--- boost_1_62_0/libs/foreach/test/Jamfile.v2 2015-03-04 15:36:38.000000000 -0500
++++ boost_1_62_0/libs/foreach/test/Jamfile.v2 2016-01-08 12:25:51.293898849 -0500
+@@ -8,9 +8,9 @@
+ project : requirements <toolset>msvc:<asynch-exceptions>on ;
+
+ test-suite "foreach"
+- : [ run stl_byval.cpp ]
++ : [ run stl_byval.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi ]
+ [ run stl_byref.cpp ]
+- [ run stl_byval_r.cpp ]
++ [ run stl_byval_r.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi ]
+ [ run stl_byref_r.cpp ]
+ [ run array_byval.cpp ]
+ [ run array_byref.cpp ]
+@@ -25,12 +25,12 @@
+ [ run pair_byval_r.cpp ]
+ [ run pair_byref_r.cpp ]
+ [ run user_defined.cpp ]
+- [ run call_once.cpp ]
++ [ run call_once.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi ]
+ [ run rvalue_const.cpp ]
+ [ run rvalue_nonconst.cpp ]
+ [ run rvalue_const_r.cpp ]
+ [ run rvalue_nonconst_r.cpp ]
+- [ run dependent_type.cpp ]
++ [ run dependent_type.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi ]
+ [ run misc.cpp ]
+ [ compile noncopyable.cpp ]
+ ;
+diff -uNr boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2
+--- boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 2015-08-03 08:51:49.000000000 -0400
++++ boost_1_62_0/libs/geometry/test/algorithms/set_operations/intersection/Jamfile.v2 2016-01-08 12:29:08.081503553 -0500
+@@ -16,7 +16,7 @@
+
+ test-suite boost-geometry-algorithms-intersection
+ :
+- [ run intersection.cpp : : : <define>BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE
++ [ run intersection.cpp : : : <define>BOOST_GEOMETRY_TEST_ONLY_ONE_TYPE <toolset>xlcpp:<cxxflags>-qfloat=nomaf
+ : algorithms_intersection ]
+ [ run intersection_areal_areal_linear.cpp : : : : algorithms_intersection_areal_areal_linear ]
+ [ run intersection_linear_linear.cpp : : : : algorithms_intersection_linear_linear ]
+diff -uNr boost_1_62_0/libs/lockfree/test/Jamfile.v2 boost_1_62_0/libs/lockfree/test/Jamfile.v2
+--- boost_1_62_0/libs/lockfree/test/Jamfile.v2 2015-06-11 12:00:57.000000000 -0400
++++ boost_1_62_0/libs/lockfree/test/Jamfile.v2 2016-01-08 12:38:25.909320596 -0500
+@@ -29,6 +29,7 @@
+ : # requirements
+ <toolset>acc:<linkflags>-lrt
+ <toolset>acc-pa_risc:<linkflags>-lrt
++ <toolset>xlcpp:<linkflags>-latomic
+ <target-os>windows,<toolset>gcc:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
+ <host-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
+ <library>../../thread/build//boost_thread/
+diff -uNr boost_1_62_0/libs/spirit/test/Jamfile boost_1_62_0/libs/spirit/test/Jamfile
+--- boost_1_62_0/libs/spirit/test/Jamfile 2015-07-14 18:38:56.000000000 -0400
++++ boost_1_62_0/libs/spirit/test/Jamfile 2016-01-08 12:52:18.540491314 -0500
+@@ -218,9 +218,9 @@
+ [ run karma/sequence1.cpp : : : : karma_sequence1 ]
+ [ run karma/sequence2.cpp : : : : karma_sequence2 ]
+ [ run karma/stream.cpp : : : : karma_stream ]
+- [ run karma/symbols1.cpp : : : : karma_symbols1 ]
+- [ run karma/symbols2.cpp : : : : karma_symbols2 ]
+- [ run karma/symbols3.cpp : : : : karma_symbols3 ]
++ [ run karma/symbols1.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi : karma_symbols1 ]
++ [ run karma/symbols2.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi : karma_symbols2 ]
++ [ run karma/symbols3.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi : karma_symbols3 ]
+ [ run karma/tricky_alignment.cpp : : : : karma_tricky_alignment ]
+ [ run karma/uint_radix.cpp : : : : karma_uint_radix ]
+ [ run karma/utree1.cpp : : : : karma_utree1 ]
+diff -uNr boost_1_62_0/libs/test/test/Jamfile.v2 boost_1_62_0/libs/test/test/Jamfile.v2
+--- boost_1_62_0/libs/test/test/Jamfile.v2 2015-07-21 17:41:49.000000000 -0400
++++ boost_1_62_0/libs/test/test/Jamfile.v2 2016-01-08 12:53:36.068217432 -0500
+@@ -47,6 +47,7 @@
+ <toolset>gcc:<cxxflags>-Wno-variadic-macros
+ <toolset>clang:<cxxflags>-Wno-c99-extensions
+ <toolset>clang:<cxxflags>-Wno-variadic-macros
++ <toolset>xlcpp:<cxxflags>-std=c++11
+ # <toolset>gcc:<cxxflags>--coverage
+ <warnings>all
+ $(extra-options)
+diff -uNr boost_1_62_0/libs/type_index/test/Jamfile.v2 boost_1_62_0/libs/type_index/test/Jamfile.v2
+--- boost_1_62_0/libs/type_index/test/Jamfile.v2 2015-07-30 16:00:41.000000000 -0400
++++ boost_1_62_0/libs/type_index/test/Jamfile.v2 2016-01-08 12:54:28.968296112 -0500
+@@ -13,9 +13,9 @@
+
+ # Making own `nortti` that is link compatible.
+ # We explicitly define BOOST_NO_RTTI because it sometimes can not be detected by build system.
+-nortti = <toolset>gcc:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>clang:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>intel:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>darwin:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>msvc:<cxxflags>/GR- ;
++nortti = <toolset>gcc:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>clang:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>intel:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>darwin:"<cxxflags>-fno-rtti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>msvc:<cxxflags>/GR- <toolset>xlcpp:"<cxxflags>-qnortti -DBOOST_NO_RTTI -DBOOST_NO_TYPEID" ;
+
+-norttidefines = <toolset>gcc:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>clang:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>intel:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>darwin:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>msvc:<cxxflags>-DBOOST_NO_RTTI ;
++norttidefines = <toolset>gcc:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>clang:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>intel:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>darwin:"<cxxflags>-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" <toolset>msvc:<cxxflags>-DBOOST_NO_RTTI <toolset>xlcpp:<cxxflags>"-DBOOST_NO_RTTI -DBOOST_NO_TYPEID" ;
+
+
+ # Making libraries that CANNOT work between rtti-on/rtti-off modules
+diff -uNr boost_1_62_0/libs/utility/test/Jamfile.v2 boost_1_62_0/libs/utility/test/Jamfile.v2
+--- boost_1_62_0/libs/utility/test/Jamfile.v2 2015-02-27 01:26:11.000000000 -0500
++++ boost_1_62_0/libs/utility/test/Jamfile.v2 2016-01-08 12:54:59.380260948 -0500
+@@ -33,7 +33,7 @@
+ [ run string_view_test1.cpp unit_test_framework ]
+ [ run string_view_test2.cpp unit_test_framework ]
+ [ run string_view_test_io.cpp unit_test_framework ]
+- [ run ../value_init_test.cpp ]
++ [ run ../value_init_test.cpp : : : <toolset>xlcpp:<cxxflags>-qalias=noansi ]
+ [ run ../value_init_workaround_test.cpp ]
+ [ run ../initialized_test.cpp ]
+ [ compile-fail ../value_init_test_fail1.cpp ]
+diff -uNr boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c
+--- boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c 2015-08-11 09:53:51.000000000 -0400
++++ boost_1_62_0/tools/build/src/engine/boehm_gc/os_dep.c 2016-01-10 01:57:04.489001841 -0500
+@@ -503,7 +503,7 @@
+
+ # include <stddef.h>
+
+-# if !defined(__IBMC__) && !defined(__WATCOMC__) /* e.g. EMX */
++# if !(defined(__IBMC__) && !defined(__ibmxl__)) && !defined(__WATCOMC__) /* e.g. EMX */
+
+ struct exe_hdr {
+ unsigned short magic_number;
+diff -uNr boost_1_62_0/tools/build/src/tools/xlcpp.jam boost_1_62_0/tools/build/src/tools/xlcpp.jam
+--- boost_1_62_0/tools/build/src/tools/xlcpp.jam 2015-08-11 09:53:51.000000000 -0400
++++ boost_1_62_0/tools/build/src/tools/xlcpp.jam 2016-01-20 15:09:00.897879191 -0500
+@@ -41,7 +41,7 @@
+
+ # Declare flags
+ flags xlcpp CFLAGS <optimization>off : -qNOOPTimize ;
+-flags xlcpp CFLAGS <optimization>speed : ;
++flags xlcpp CFLAGS <optimization>speed : ;
+ flags xlcpp CFLAGS <optimization>space : -O2 -qcompact ;
+
+ # Discretionary inlining (not recommended)
+@@ -51,8 +51,8 @@
+ flags xlcpp CFLAGS <inlining>full : ;
+
+ # Exception handling
+-flags xlcpp C++FLAGS <exception-handling>off : -qnoeh ;
+-flags xlcpp C++FLAGS <exception-handling>on : -qeh ;
++flags xlcpp C++FLAGS <exception-handling>off : -fno-exceptions ;
++flags xlcpp C++FLAGS <exception-handling>on : -fexceptions ;
+
+ # Run-time Type Identification
+ flags xlcpp C++FLAGS <rtti>off : -qnortti ;
+@@ -108,6 +108,8 @@
+ flags xlcpp HDRS <include> ;
+ flags xlcpp STDHDRS <sysinclude> ;
+ flags xlcpp.link OPTIONS <linkflags> ;
++flags xlcpp.link RPATH_LINK <xdll-path> ;
++flags xlcpp.link RPATH <xdll-path> ;
+ flags xlcpp ARFLAGS <arflags> ;
+
+ flags xlcpp LIBPATH <library-path> ;
+@@ -116,10 +118,10 @@
+ flags xlcpp FINDLIBS <find-static-library> ;
+
+ # Select the compiler name according to the threading model.
+-flags xlcpp VA_C_COMPILER <threading>single : xlc ;
+-flags xlcpp VA_C_COMPILER <threading>multi : xlc ;
+-flags xlcpp VA_CXX_COMPILER <threading>single : xlC ;
+-flags xlcpp VA_CXX_COMPILER <threading>multi : xlC ;
++flags xlcpp VA_C_COMPILER <threading>single : xlc ;
++flags xlcpp VA_C_COMPILER <threading>multi : xlc_r ;
++flags xlcpp VA_CXX_COMPILER <threading>single : xlC ;
++flags xlcpp VA_CXX_COMPILER <threading>multi : xlC_r ;
+
+ SPACE = " " ;
+
+@@ -127,12 +129,12 @@
+
+ actions xlcpp.link bind NEEDLIBS
+ {
+- $(VA_CXX_COMPILER) $(EXE-LINKFLAGS) $(LINKFLAGS) -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS)
++ $(VA_CXX_COMPILER) $(EXE-LINKFLAGS) $(LINKFLAGS) -Wl,-R$(SPACE)-Wl,"$(RPATH)" -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<[1])" -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS)
+ }
+
+ actions xlcpp.link.dll bind NEEDLIBS
+ {
+- xlC -G $(LINKFLAGS) -o "$(<[1])" $(HAVE_SONAME)-Wl,-soname$(SPACE)-Wl,$(<[-1]:D=) -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS)
++ $(VA_CXX_COMPILER) -G $(LINKFLAGS) -o "$(<[1])" $(HAVE_SONAME)-Wl,-soname$(SPACE)-Wl,$(<[-1]:D=) -L$(LIBPATH) -L$(STDLIBPATH) "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" -l$(FINDLIBS) $(OPTIONS) $(USER_OPTIONS)
+ }
+
+ actions xlcpp.compile.c
diff --git a/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py b/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py
new file mode 100644
index 0000000000..7ddc65b439
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boostmplcartesianproduct/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Boostmplcartesianproduct(Package):
+ """Cartesian_product is an extension to the Boost.MPL library and as such
+ requires a version of the Boost libraries on your system.
+ """
+
+ homepage = "http://www.organicvectory.com/index.php?option=com_content&view=article&id=75:boostmplcartesianproduct&catid=42:boost&Itemid=78"
+ url = "https://github.com/quinoacomputing/BoostMPLCartesianProduct/tarball/20161205"
+
+ version('20161205', 'b0c8534ee807484ffd161723cbc8fc04')
+
+ def install(self, spec, prefix):
+ install_tree('boost/mpl', join_path(prefix.include, 'boost', 'mpl'))
diff --git a/var/spack/repos/builtin/packages/bowtie/package.py b/var/spack/repos/builtin/packages/bowtie/package.py
new file mode 100644
index 0000000000..8958352bd1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bowtie/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bowtie(MakefilePackage):
+ """Bowtie is an ultrafast, memory-efficient short read aligner
+ for short DNA sequences (reads) from next-gen sequencers."""
+
+ homepage = "https://sourceforge.net/projects/bowtie-bio/"
+ url = "https://downloads.sourceforge.net/project/bowtie-bio/bowtie/1.2.0/bowtie-1.2-source.zip"
+
+ version('1.2', '6d97f0ea1a65af11d17cc270cfac4af9')
+
+ variant('tbb', default=False, description='Use Intel thread building block')
+
+ depends_on('tbb', when='+tbb')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ makefile.filter('CC = .*', 'CC = ' + env['CC'])
+ makefile.filter('CXX = .*', 'CPP = ' + env['CXX'])
+
+ def build(self, spec, prefix):
+ if '+tbb' in spec:
+ make()
+ else:
+ make('NO_TBB=1')
+
+ def install(self, spec, prefix):
+ make('prefix={0}'.format(self.prefix), 'install')
diff --git a/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.5.patch b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.2.5.patch
index 290be39c73..290be39c73 100644
--- a/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.5.patch
+++ b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.2.5.patch
diff --git a/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.0.patch b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.0.patch
new file mode 100644
index 0000000000..58bcee6572
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.0.patch
@@ -0,0 +1,16 @@
+--- Makefile.orig 2017-10-19 16:22:27.589185696 -0700
++++ Makefile 2017-10-19 16:23:26.094227199 -0700
+@@ -25,10 +25,10 @@
+ bindir = $(prefix)/bin
+
+ INC =
+-GCC_PREFIX = $(shell dirname `which gcc`)
++GCC_PREFIX =
+ GCC_SUFFIX =
+-CC ?= $(GCC_PREFIX)/gcc$(GCC_SUFFIX)
+-CPP ?= $(GCC_PREFIX)/g++$(GCC_SUFFIX)
++CC = cc
++CPP = c++
+ CXX ?= $(CPP)
+ HEADERS = $(wildcard *.h)
+ BOWTIE_MM = 1
diff --git a/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.1.patch b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.1.patch
new file mode 100644
index 0000000000..006ebccb9e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bowtie2/bowtie2-2.3.1.patch
@@ -0,0 +1,17 @@
+--- Makefile.orig 2017-03-24 20:43:00.304532976 -0700
++++ Makefile 2017-03-24 20:48:59.644532037 -0700
+@@ -26,10 +26,10 @@
+
+ INC =
+-LIBS = -lreadline -ltermcap -lz
++LIBS = -lreadline -lz
+-GCC_PREFIX = $(shell dirname `which gcc`)
++GCC_PREFIX =
+ GCC_SUFFIX =
+-CC ?= $(GCC_PREFIX)/gcc$(GCC_SUFFIX)
+-CPP ?= $(GCC_PREFIX)/g++$(GCC_SUFFIX)
++CC = cc
++CPP = c++
+ CXX ?= $(CPP)
+ HEADERS = $(wildcard *.h)
+ BOWTIE_MM = 1
diff --git a/var/spack/repos/builtin/packages/bowtie2/package.py b/var/spack/repos/builtin/packages/bowtie2/package.py
index a8a1a34ed4..677020f60f 100644
--- a/var/spack/repos/builtin/packages/bowtie2/package.py
+++ b/var/spack/repos/builtin/packages/bowtie2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,12 +27,49 @@ from glob import glob
class Bowtie2(Package):
- """Description"""
+ """Bowtie 2 is an ultrafast and memory-efficient tool for aligning
+ sequencing reads to long reference sequences"""
+
homepage = "bowtie-bio.sourceforge.net/bowtie2/index.shtml"
- version('2.2.5', '51fa97a862d248d7ee660efc1147c75f',
- url="http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/2.2.5/bowtie2-2.2.5-source.zip")
+ url = "http://downloads.sourceforge.net/project/bowtie-bio/bowtie2/2.3.1/bowtie2-2.3.1-source.zip"
+
+ version('2.3.1', 'b4efa22612e98e0c23de3d2c9f2f2478')
+ version('2.3.0', '3ab33f30f00f3c30fec1355b4e569ea2')
+ version('2.2.5', '51fa97a862d248d7ee660efc1147c75f')
+
+ depends_on('tbb', when='@2.3.0:')
+ depends_on('readline', when='@2.3.1:')
+ depends_on('perl', type='run')
+ depends_on('python', type='run')
+ depends_on('zlib', when='@2.3.1:')
+
+ patch('bowtie2-2.2.5.patch', when='@2.2.5', level=0)
+ patch('bowtie2-2.3.1.patch', when='@2.3.1', level=0)
+ patch('bowtie2-2.3.0.patch', when='@2.3.0', level=0)
+
+ # seems to have trouble with 6's -std=gnu++14
+ conflicts('%gcc@6:')
+
+ @run_before('install')
+ def filter_sbang(self):
+ """Run before install so that the standard Spack sbang install hook
+ can fix up the path to the perl|python binary.
+ """
+
+ with working_dir(self.stage.source_path):
+ kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
+
+ match = '^#!/usr/bin/env perl'
+ perl = self.spec['perl'].command
+ substitute = "#!{perl}".format(perl=perl)
+ files = ['bowtie2', ]
+ filter_file(match, substitute, *files, **kwargs)
- patch('bowtie2-2.5.patch', when='@2.2.5', level=0)
+ match = '^#!/usr/bin/env python'
+ python = self.spec['python'].command
+ substitute = "#!{python}".format(python=python)
+ files = ['bowtie2-build', 'bowtie2-inspect']
+ filter_file(match, substitute, *files, **kwargs)
def install(self, spec, prefix):
make()
diff --git a/var/spack/repos/builtin/packages/boxlib/package.py b/var/spack/repos/builtin/packages/boxlib/package.py
index 8d46014d3b..833a027c29 100644
--- a/var/spack/repos/builtin/packages/boxlib/package.py
+++ b/var/spack/repos/builtin/packages/boxlib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,12 +36,19 @@ class Boxlib(CMakePackage):
depends_on('mpi')
+ variant('dims',
+ default='3',
+ values=('1', '2', '3'),
+ multi=False,
+ description='Number of spatial dimensions'
+ )
+
def cmake_args(self):
spec = self.spec
options = []
options.extend([
- # '-DBL_SPACEDIM=3',
+ '-DBL_SPACEDIM=%d' % int(spec.variants['dims'].value),
'-DENABLE_POSITION_INDEPENDENT_CODE=ON',
'-DENABLE_FBASELIB=ON',
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
diff --git a/var/spack/repos/builtin/packages/bpp-core/package.py b/var/spack/repos/builtin/packages/bpp-core/package.py
index f716a2ee05..96a775cb60 100644
--- a/var/spack/repos/builtin/packages/bpp-core/package.py
+++ b/var/spack/repos/builtin/packages/bpp-core/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class BppCore(Package):
+class BppCore(CMakePackage):
"""Bio++ core library."""
homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Installation"
@@ -33,9 +33,7 @@ class BppCore(Package):
version('2.2.0', '5789ed2ae8687d13664140cd77203477')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.6:', type='build')
- def install(self, spec, prefix):
- cmake('-DBUILD_TESTING=FALSE', '.', *std_cmake_args)
- make()
- make('install')
+ def cmake_args(self):
+ return ['-DBUILD_TESTING=FALSE']
diff --git a/var/spack/repos/builtin/packages/bpp-phyl/package.py b/var/spack/repos/builtin/packages/bpp-phyl/package.py
index 4ff77f1540..3453f85a9d 100644
--- a/var/spack/repos/builtin/packages/bpp-phyl/package.py
+++ b/var/spack/repos/builtin/packages/bpp-phyl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class BppPhyl(Package):
+class BppPhyl(CMakePackage):
"""Bio++ phylogeny library."""
homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Installation"
@@ -33,11 +33,9 @@ class BppPhyl(Package):
version('2.2.0', '5c40667ec0bf37e0ecaba321be932770')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.6:', type='build')
depends_on('bpp-core')
depends_on('bpp-seq')
- def install(self, spec, prefix):
- cmake('-DBUILD_TESTING=FALSE', '.', *std_cmake_args)
- make()
- make('install')
+ def cmake_args(self):
+ return ['-DBUILD_TESTING=FALSE']
diff --git a/var/spack/repos/builtin/packages/bpp-seq/package.py b/var/spack/repos/builtin/packages/bpp-seq/package.py
index 15c99da2b1..bd3219523f 100644
--- a/var/spack/repos/builtin/packages/bpp-seq/package.py
+++ b/var/spack/repos/builtin/packages/bpp-seq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class BppSeq(Package):
+class BppSeq(CMakePackage):
"""Bio++ seq library."""
homepage = "http://biopp.univ-montp2.fr/wiki/index.php/Installation"
@@ -33,10 +33,8 @@ class BppSeq(Package):
version('2.2.0', '44adef0ff4d5ca4e69ccf258c9270633')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.6:', type='build')
depends_on('bpp-core')
- def install(self, spec, prefix):
- cmake('-DBUILD_TESTING=FALSE', '.', *std_cmake_args)
- make()
- make('install')
+ def cmake_args(self):
+ return ['-DBUILD_TESTING=FALSE']
diff --git a/var/spack/repos/builtin/packages/bpp-suite/package.py b/var/spack/repos/builtin/packages/bpp-suite/package.py
index d15030622e..13fc341cfa 100644
--- a/var/spack/repos/builtin/packages/bpp-suite/package.py
+++ b/var/spack/repos/builtin/packages/bpp-suite/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class BppSuite(Package):
+class BppSuite(CMakePackage):
"""BppSuite is a suite of ready-to-use programs for phylogenetic and
sequence analysis."""
@@ -34,13 +34,8 @@ class BppSuite(Package):
version('2.2.0', 'd8b29ad7ccf5bd3a7beb701350c9e2a4')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.6:', type='build')
depends_on('texinfo', type='build')
depends_on('bpp-core')
depends_on('bpp-seq')
depends_on('bpp-phyl')
-
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/braker/package.py b/var/spack/repos/builtin/packages/braker/package.py
new file mode 100644
index 0000000000..97fe9f710a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/braker/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Braker(Package):
+ """BRAKER is a pipeline for unsupervised RNA-Seq-based genome annotation
+ that combines the advantages of GeneMark-ET and AUGUSTUS"""
+
+ homepage = "http://exon.gatech.edu/braker1.html"
+ url = "http://bioinf.uni-greifswald.de/augustus/binaries/BRAKER1_v1.11.tar.gz"
+
+ version('1.11', '297efe4cabdd239b710ac2c45d81f6a5')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('augustus')
+ depends_on('genemark-et')
+ depends_on('bamtools')
+ depends_on('samtools')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.lib)
+ install('braker.pl', prefix.bin)
+ install('filterGenemark.pl', prefix.bin)
+ install('filterIntronsFindStrand.pl', prefix.bin)
+ install('helpMod.pm', prefix.lib)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PERL5LIB', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/branson/package.py b/var/spack/repos/builtin/packages/branson/package.py
new file mode 100644
index 0000000000..7eedf7135e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/branson/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Branson(CMakePackage):
+ """Branson's purpose is to study different algorithms for parallel Monte
+ Carlo transport. Currently it contains particle passing and mesh passing
+ methods for domain decomposition."""
+
+ homepage = "https://github.com/lanl/branson"
+ url = "https://github.com/lanl/branson/archive/1.01.zip"
+
+ tags = ['proxy-app']
+
+ version('develop', git='https://github.com/lanl/branson', branch='develop')
+ version('1.01', 'cf7095a887a8dd7d417267615bd0452a')
+
+ depends_on('mpi')
+ depends_on('boost')
+ depends_on('metis')
+ depends_on('parmetis')
+
+ root_cmakelists_dir = 'src'
+
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+ args.append('-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc)
+ args.append('-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx)
+ args.append('-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc)
+ return args
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ mkdir(prefix.doc)
+ install('spack-build/BRANSON', prefix.bin)
+ install('LICENSE.txt', prefix.doc)
+ install('README.md', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/brigand/package.py b/var/spack/repos/builtin/packages/brigand/package.py
new file mode 100644
index 0000000000..4c946d4f66
--- /dev/null
+++ b/var/spack/repos/builtin/packages/brigand/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Brigand(Package):
+ """
+ Brigand Meta-programming library
+ """
+
+ homepage = "https://github.com/edouarda/brigand"
+ url = "https://github.com/edouarda/brigand/archive/1.0.0.tar.gz"
+
+ version('master', git='https://github.com/edouarda/brigand.git',
+ branch='master')
+ version('1.3.0', '0bea9713b3b712229aed289e218d577b')
+ version('1.2.0', '32c0f73e7e666d33ff123334f5c9c92f')
+ version('1.1.0', '073b7c8e2cbda3a81bbeb1ea5b9ca0eb')
+ version('1.0.0', 'eeab3d437090f0bb7bc4eb69a5cd9c49')
+
+ def install(self, spec, prefix):
+ install_tree('include', prefix.include)
diff --git a/var/spack/repos/builtin/packages/bsseeker2/package.py b/var/spack/repos/builtin/packages/bsseeker2/package.py
new file mode 100644
index 0000000000..48b2fc1e6f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bsseeker2/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bsseeker2(Package):
+ """A versatile aligning pipeline for bisulfite sequencing data."""
+
+ homepage = "http://pellegrini.mcdb.ucla.edu/BS_Seeker2"
+ url = "https://github.com/BSSeeker/BSseeker2/archive/v2.1.2.tar.gz"
+
+ version('2.1.2', '5f7f0ef4071711e56b59c5c16b7f34a7')
+
+ depends_on('python@2.6:2.999', type=('build', 'run'))
+ depends_on('py-pysam', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('Antisense.py', prefix.bin)
+ install_tree('bs_index', prefix.bin.bs_index)
+ install('bs_seeker2-build.py', prefix.bin)
+ install_tree('bs_utils', prefix.bin.bs_utils)
+ install_tree('galaxy', prefix.bin.galaxy)
+ install_tree('bs_align', prefix.bin.bs_align)
+ install('bs_seeker2-align.py', prefix.bin)
+ install('bs_seeker2-call_methylation.py', prefix.bin)
+ install('FilterReads.py', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/bucky/package.py b/var/spack/repos/builtin/packages/bucky/package.py
new file mode 100644
index 0000000000..eeac2ab2b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/bucky/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Bucky(MakefilePackage):
+ """BUCKy is a free program to combine molecular data from multiple loci.
+ BUCKy estimates the dominant history of sampled individuals, and how
+ much of the genome supports each relationship, using Bayesian
+ concordance analysis."""
+
+ homepage = "http://www.stat.wisc.edu/~ane/bucky/index.html"
+ url = "http://dstats.net/download/http://www.stat.wisc.edu/~ane/bucky/v1.4/bucky-1.4.4.tgz"
+
+ version('1.4.4', 'f0c910dd1d411d112637826519943a6d')
+
+ # Compilation requires gcc
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ build_directory = 'src'
+
+ def install(self, spec, prefix):
+ with working_dir('src'):
+ mkdirp(prefix.bin)
+ install('bucky', prefix.bin)
+ install('mbsum', prefix.bin)
+ install_tree('data', prefix.data)
+ install_tree('doc', prefix.doc)
+ install_tree('scripts', prefix.scripts)
diff --git a/var/spack/repos/builtin/packages/busco/package.py b/var/spack/repos/builtin/packages/busco/package.py
new file mode 100644
index 0000000000..2b50abb40a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/busco/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Busco(PythonPackage):
+ """Assesses genome assembly and annotation completeness with Benchmarking
+ Universal Single-Copy Orthologs"""
+
+ homepage = "http://busco.ezlab.org/"
+ url = "https://gitlab.com/ezlab/busco"
+
+ version('3.0.1', git='https://gitlab.com/ezlab/busco.git', commit='078252e00399550d7b0e8941cd4d986c8e868a83')
+ version('2.0.1', git='https://gitlab.com/ezlab/busco.git', commit='89aa1ab2527f03a87a214ca90a504ad236582a11')
+
+ depends_on('python', type=('build', 'run'))
+ depends_on('blast-plus')
+ depends_on('hmmer')
+ depends_on('augustus')
+
+ def build(self, spec, prefix):
+ if self.spec.satisfies('@2.0.1'):
+ pass
+
+ def install(self, spec, prefix):
+ if self.spec.satisfies('@3.0.1'):
+ with working_dir('scripts'):
+ mkdirp(prefix.bin)
+ install('generate_plot.py', prefix.bin)
+ install('run_BUSCO.py', prefix.bin)
+ install_tree('config', prefix.config)
+ args = self.install_args(spec, prefix)
+ self.setup_py('install', *args)
+ if self.spec.satisfies('@2.0.1'):
+ mkdirp(prefix.bin)
+ install('BUSCO.py', prefix.bin)
+ install('BUSCO_plot.py', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/butter/package.py b/var/spack/repos/builtin/packages/butter/package.py
new file mode 100644
index 0000000000..602f68c5b5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/butter/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Butter(Package):
+ """butter: Bowtie UTilizing iTerative placEment of Repetitive small rnas.
+ A wrapper for bowtie to produce small RNA-seq alignments where
+ multimapped small RNAs tend to be placed near regions of confidently
+ high density."""
+
+ homepage = "https://github.com/MikeAxtell/butter"
+ url = "https://github.com/MikeAxtell/butter/archive/v0.3.3.tar.gz"
+
+ version('0.3.3', '806ff3cb7afc1d8b75126404056c629d')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('samtools')
+ depends_on('bowtie')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('butter', prefix.bin)
+ install('bam2wig', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/bwa/package.py b/var/spack/repos/builtin/packages/bwa/package.py
index bb6763629b..7f260fcdc9 100644
--- a/var/spack/repos/builtin/packages/bwa/package.py
+++ b/var/spack/repos/builtin/packages/bwa/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,14 @@ class Bwa(Package):
homepage = "http://github.com/lh3/bwa"
url = "https://github.com/lh3/bwa/releases/download/v0.7.15/bwa-0.7.15.tar.bz2"
- version('0.7.15', 'fcf470a46a1dbe2f96a1c5b87c530554')
+ version('0.7.17', '82cba7ef695538e6a38b9d4156837381',
+ url="https://github.com/lh3/bwa/releases/download/v0.7.17/bwa-0.7.17.tar.bz2")
+ version('0.7.15', 'fcf470a46a1dbe2f96a1c5b87c530554',
+ url="https://github.com/lh3/bwa/releases/download/v0.7.15/bwa-0.7.15.tar.bz2")
+ version('0.7.13', 'f094f609438511766c434178a3635ab4',
+ url="https://github.com/lh3/bwa/releases/download/v0.7.13/bwa-0.7.13.tar.bz2")
+ version('0.7.12', 'e24a587baaad411d5da89516ad7a261a',
+ url='https://github.com/lh3/bwa/archive/0.7.12.tar.gz')
depends_on('zlib')
@@ -48,5 +55,5 @@ class Bwa(Package):
mkdirp(prefix.doc)
install('README.md', prefix.doc)
install('NEWS.md', prefix.doc)
- mkdirp(prefix.man1)
- install('bwa.1', prefix.man1)
+ mkdirp(prefix.man.man1)
+ install('bwa.1', prefix.man.man1)
diff --git a/var/spack/repos/builtin/packages/byobu/package.py b/var/spack/repos/builtin/packages/byobu/package.py
new file mode 100644
index 0000000000..90f91db9e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/byobu/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Byobu(AutotoolsPackage):
+ """Byobu: Text-based window manager and terminal multiplexer."""
+
+ homepage = "http://www.byobu.co"
+ url = "https://launchpad.net/byobu/trunk/5.123/+download/byobu_5.123.orig.tar.gz"
+
+ version('5.123', '961e0072c01c78c9ce4c20d1aa1b0dc4')
+
+ depends_on('tmux', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/bzip2/package.py b/var/spack/repos/builtin/packages/bzip2/package.py
index 9e5894a6a8..d44e97207f 100644
--- a/var/spack/repos/builtin/packages/bzip2/package.py
+++ b/var/spack/repos/builtin/packages/bzip2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,15 +34,31 @@ class Bzip2(Package):
homepage = "http://www.bzip.org"
url = "http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz"
+ list_url = "http://www.bzip.org/downloads.html"
version('1.0.6', '00b516f4704d4a7cb50a1d97e6e8e15b')
+ variant('shared', default=True, description='Enables the build of shared libraries.')
+
+ # override default implementation
+ @property
+ def libs(self):
+ shared = '+shared' in self.spec
+ return find_libraries(
+ 'libbz2', root=self.prefix, shared=shared, recurse=True
+ )
+
def patch(self):
# bzip2 comes with two separate Makefiles for static and dynamic builds
# Tell both to use Spack's compiler wrapper instead of GCC
filter_file(r'^CC=gcc', 'CC=cc', 'Makefile')
filter_file(r'^CC=gcc', 'CC=cc', 'Makefile-libbz2_so')
+ # The Makefiles use GCC flags that are incompatible with PGI
+ if self.compiler.name == 'pgi':
+ filter_file('-Wall -Winline', '-Minform=inform', 'Makefile')
+ filter_file('-Wall -Winline', '-Minform=inform', 'Makefile-libbz2_so') # noqa
+
# Patch the link line to use RPATHs on macOS
if 'darwin' in self.spec.architecture:
v = self.spec.version
@@ -71,27 +87,30 @@ class Bzip2(Package):
def install(self, spec, prefix):
# Build the dynamic library first
- make('-f', 'Makefile-libbz2_so')
+ if '+shared' in spec:
+ make('-f', 'Makefile-libbz2_so')
+
# Build the static library and everything else
make()
make('install', 'PREFIX={0}'.format(prefix))
- install('bzip2-shared', join_path(prefix.bin, 'bzip2'))
+ if '+shared' in spec:
+ install('bzip2-shared', join_path(prefix.bin, 'bzip2'))
- v1, v2, v3 = (self.spec.version.up_to(i) for i in (1, 2, 3))
- if 'darwin' in self.spec.architecture:
- lib = 'libbz2.dylib'
- lib1, lib2, lib3 = ('libbz2.{0}.dylib'.format(v)
- for v in (v1, v2, v3))
- else:
- lib = 'libbz2.so'
- lib1, lib2, lib3 = ('libbz2.so.{0}'.format(v)
- for v in (v1, v2, v3))
-
- install(lib3, join_path(prefix.lib, lib3))
- with working_dir(prefix.lib):
- for l in (lib, lib1, lib2):
- symlink(lib3, l)
+ v1, v2, v3 = (self.spec.version.up_to(i) for i in (1, 2, 3))
+ if 'darwin' in self.spec.architecture:
+ lib = 'libbz2.dylib'
+ lib1, lib2, lib3 = ('libbz2.{0}.dylib'.format(v)
+ for v in (v1, v2, v3))
+ else:
+ lib = 'libbz2.so'
+ lib1, lib2, lib3 = ('libbz2.so.{0}'.format(v)
+ for v in (v1, v2, v3))
+
+ install(lib3, join_path(prefix.lib, lib3))
+ with working_dir(prefix.lib):
+ for l in (lib, lib1, lib2):
+ symlink(lib3, l)
with working_dir(prefix.bin):
force_remove('bunzip2', 'bzcat')
diff --git a/var/spack/repos/builtin/packages/c-blosc/package.py b/var/spack/repos/builtin/packages/c-blosc/package.py
index 4ebf3811a5..8bc5a76ef7 100644
--- a/var/spack/repos/builtin/packages/c-blosc/package.py
+++ b/var/spack/repos/builtin/packages/c-blosc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,25 +28,35 @@ import sys
from spack import *
-class CBlosc(Package):
+class CBlosc(CMakePackage):
"""Blosc, an extremely fast, multi-threaded, meta-compressor library"""
homepage = "http://www.blosc.org"
- url = "https://github.com/Blosc/c-blosc/archive/v1.9.2.tar.gz"
+ url = "https://github.com/Blosc/c-blosc/archive/v1.11.1.tar.gz"
- version('1.9.2', 'dd2d83069d74b36b8093f1c6b49defc5')
- version('1.9.1', '7d708d3daadfacf984a87b71b1734ce2')
- version('1.9.0', 'e4c1dc8e2c468e5cfa2bf05eeee5357a')
- version('1.8.1', 'd73d5be01359cf271e9386c90dcf5b05')
- version('1.8.0', '5b92ecb287695ba20cc33d30bf221c4f')
+ version('1.11.1', 'e236550640afa50155f3881f2d300206')
+ version('1.9.2', 'dd2d83069d74b36b8093f1c6b49defc5')
+ version('1.9.1', '7d708d3daadfacf984a87b71b1734ce2')
+ version('1.9.0', 'e4c1dc8e2c468e5cfa2bf05eeee5357a')
+ version('1.8.1', 'd73d5be01359cf271e9386c90dcf5b05')
+ version('1.8.0', '5b92ecb287695ba20cc33d30bf221c4f')
- depends_on("cmake", type='build')
- depends_on("snappy")
- depends_on("zlib")
+ variant('avx2', default=True, description='Enable AVX2 support')
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
+ depends_on('cmake@2.8.10:', type='build')
+ depends_on('snappy')
+ depends_on('zlib')
- make()
- make("install")
+ def cmake_args(self):
+ args = []
+
+ if '+avx2' in self.spec:
+ args.append('-DDEACTIVATE_AVX2=OFF')
+ else:
+ args.append('-DDEACTIVATE_AVX2=ON')
+
+ return args
+
+ @run_after('install')
+ def darwin_fix(self):
if sys.platform == 'darwin':
- fix_darwin_install_name(prefix.lib)
+ fix_darwin_install_name(self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/caffe/package.py b/var/spack/repos/builtin/packages/caffe/package.py
new file mode 100644
index 0000000000..730b293adb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/caffe/package.py
@@ -0,0 +1,103 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Caffe(CMakePackage):
+ """Caffe is a deep learning framework made with expression, speed, and
+ modularity in mind. It is developed by the Berkeley Vision and Learning
+ Center (BVLC) and by community contributors."""
+
+ homepage = "http://caffe.berkeleyvision.org"
+ url = "https://github.com/BVLC/caffe/archive/1.0.tar.gz"
+
+ version('1.0', '5fbb0e32e7cd8de3de46e6fe6e4cd2b5')
+ version('rc5', '692bd3580b7576485cde6b1e03eb5a6d')
+ version('rc4', 'd86eeb38b1400097d32ffcabdec75b55')
+ version('rc3', '84e39223115753b48312a8bf48c31f59')
+ version('rc2', 'c331932e34b5e2f5022fcc34c419080f')
+
+ variant('cuda', default=False,
+ description='Builds with support for GPUs via CUDA and cuDNN')
+ variant('opencv', default=True,
+ description='Build with OpenCV support')
+ variant('leveldb', default=True,
+ description="Build with levelDB")
+ variant('lmdb', default=True,
+ description="Build with lmdb")
+ variant('python', default=False,
+ description='Build python wrapper and caffe python layer')
+ variant('matlab', default=False,
+ description='Build Matlab wrapper')
+
+ depends_on('boost')
+ depends_on('boost +python', when='+python')
+ depends_on('cuda', when='+cuda')
+ depends_on('blas')
+ depends_on('protobuf')
+ depends_on('glog')
+ depends_on('gflags')
+ depends_on('hdf5')
+
+ # Optional dependencies
+ depends_on('opencv@3.2.0+core+highgui+imgproc', when='+opencv')
+ depends_on('leveldb', when='+leveldb')
+ depends_on('lmdb', when='+lmdb')
+ depends_on('python@2.7:', when='+python')
+ depends_on('py-numpy@1.7:', when='+python', type=('build', 'run'))
+ depends_on('matlab', when='+matlab')
+
+ extends('python', when='+python')
+
+ def cmake_args(self):
+ spec = self.spec
+ args = ['-DBLAS={0}'.format('open' if spec['blas'].name == 'openblas'
+ else spec['blas'].name),
+ '-DCPU_ONLY=%s' % ('~cuda' in spec),
+ '-DUSE_CUDNN=%s' % ('+cuda' in spec),
+ '-DBUILD_python=%s' % ('+python' in spec),
+ '-DBUILD_python_layer=%s' % ('+python' in spec),
+ '-DBUILD_matlab=%s' % ('+matlab' in spec),
+ '-DUSE_OPENCV=%s' % ('+opencv' in spec),
+ '-DUSE_LEVELDB=%s' % ('+leveldb' in spec),
+ '-DUSE_LMDB=%s' % ('+lmdb' in spec),
+ '-DGFLAGS_ROOT_DIR=%s' % spec['gflags'].prefix,
+ '-DGLOG_ROOT_DIR=%s' % spec['glog'].prefix,
+ ]
+
+ if spec.satisfies('^openblas'):
+ env['OpenBLAS_HOME'] = spec['openblas'].prefix
+
+ if spec.satisfies('+lmdb'):
+ env['LMDB_DIR'] = spec['lmdb'].prefix
+
+ if spec.satisfies('+leveldb'):
+ env['LEVELDB_ROOT'] = spec['leveldb'].prefix
+
+ if spec.satisfies('+python'):
+ version = spec['python'].version.up_to(1)
+ args.append('-Dpython_version=%s' % version)
+
+ return args
diff --git a/var/spack/repos/builtin/packages/cairo/package.py b/var/spack/repos/builtin/packages/cairo/package.py
index 9df93ccddb..ec04e5ed38 100644
--- a/var/spack/repos/builtin/packages/cairo/package.py
+++ b/var/spack/repos/builtin/packages/cairo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -40,6 +40,7 @@ class Cairo(AutotoolsPackage):
depends_on('libxext', when='+X')
depends_on('libxrender', when='+X')
depends_on('libxcb', when='+X')
+ depends_on('python', when='+X', type='build')
depends_on("libpng")
depends_on("glib")
depends_on("pixman")
@@ -50,4 +51,8 @@ class Cairo(AutotoolsPackage):
def configure_args(self):
args = ["--disable-trace", # can cause problems with libiberty
"--enable-tee"]
+ if '+X' in self.spec:
+ args.extend(["--enable-xlib", "--enable-xcb"])
+ else:
+ args.extend(["--disable-xlib", "--disable-xcb"])
return args
diff --git a/var/spack/repos/builtin/packages/caliper/package.py b/var/spack/repos/builtin/packages/caliper/package.py
index c9d4a41bc2..e3fff54e6f 100644
--- a/var/spack/repos/builtin/packages/caliper/package.py
+++ b/var/spack/repos/builtin/packages/caliper/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,11 +24,15 @@
##############################################################################
from spack import *
+import sys
-class Caliper(Package):
- """Caliper is a generic context annotation system. It gives programmers the
- ability to provide arbitrary program context information to (performance)
- tools at runtime.
+
+class Caliper(CMakePackage):
+ """Caliper is a program instrumentation and performance measurement
+ framework. It provides data collection mechanisms and a source-code
+ annotation API for a variety of performance engineering use cases,
+ e.g., performance profiling, tracing, monitoring, and
+ auto-tuning.
"""
homepage = "https://github.com/LLNL/Caliper"
@@ -36,15 +40,47 @@ class Caliper(Package):
version('master', git='https://github.com/LLNL/Caliper.git')
- variant('mpi', default=True, description='Enable MPI function wrappers.')
+ variant('mpi', default=True,
+ description='Enable MPI wrappers')
+ variant('dyninst', default=False,
+ description='Enable symbol translation support with dyninst')
+ # libunwind has some issues on Mac
+ variant('callpath', default=sys.platform != 'darwin',
+ description='Enable callpath service (requires libunwind)')
+ # pthread_self() signature is incompatible with PAPI_thread_init() on Mac
+ variant('papi', default=sys.platform != 'darwin',
+ description='Enable PAPI service')
+ # gotcha doesn't work on Mac
+ variant('gotcha', default=sys.platform != 'darwin',
+ description='Enable GOTCHA support')
- depends_on('libunwind')
- depends_on('papi')
+ depends_on('dyninst', when='+dyninst')
+ depends_on('papi', when='+papi')
depends_on('mpi', when='+mpi')
+ depends_on('libunwind', when='+callpath')
+
depends_on('cmake', type='build')
+ depends_on('python', type='build')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DBUILD_TESTING=Off',
+ '-DWITH_DOCS=Off',
+ '-DWITH_TEST_APPS=Off',
+ '-DWITH_DYNINST=%s' % ('On' if '+dyninst' in spec else 'Off'),
+ '-DWITH_CALLPATH=%s' % ('On' if '+callpath' in spec else 'Off'),
+ '-DWITH_GOTCHA=%s' % ('On' if '+gotcha' in spec else 'Off'),
+ '-DWITH_PAPI=%s' % ('On' if '+papi' in spec else 'Off'),
+ '-DWITH_MPI=%s' % ('On' if '+mpi' in spec else 'Off')
+ ]
+
+ if '+papi' in spec:
+ args.append('-DPAPI_PREFIX=%s' % spec['papi'].prefix)
+
+ if '+mpi' in spec:
+ args.append('-DMPI_C_COMPILER=%s' % spec['mpi'].mpicc)
+ args.append('-DMPI_CXX_COMPILER=%s' % spec['mpi'].mpicxx)
- def install(self, spec, prefix):
- with working_dir('build', create=True):
- cmake('..', *std_cmake_args)
- make()
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/callpath/package.py b/var/spack/repos/builtin/packages/callpath/package.py
index f8227fa49e..a9cb2bf420 100644
--- a/var/spack/repos/builtin/packages/callpath/package.py
+++ b/var/spack/repos/builtin/packages/callpath/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,25 +25,31 @@
from spack import *
-class Callpath(Package):
+class Callpath(CMakePackage):
"""Library for representing callpaths consistently in
distributed-memory performance tools."""
homepage = "https://github.com/llnl/callpath"
url = "https://github.com/llnl/callpath/archive/v1.0.1.tar.gz"
+ version('1.0.4', '39d2e06bfa316dec1085b874092e4b08')
version('1.0.2', 'b1994d5ee7c7db9d27586fc2dcf8f373')
version('1.0.1', '0047983d2a52c5c335f8ba7f5bab2325')
- depends_on("libelf")
- depends_on("libdwarf")
- depends_on("dyninst")
- depends_on("adept-utils")
- depends_on("mpi")
- depends_on('cmake', type='build')
+ depends_on('elf', type='link')
+ depends_on('libdwarf')
+ depends_on('dyninst')
+ depends_on('adept-utils')
+ depends_on('mpi')
+ depends_on('cmake@2.8:', type='build')
- def install(self, spec, prefix):
+ def cmake_args(self):
# TODO: offer options for the walker used.
- cmake('.', "-DCALLPATH_WALKER=dyninst", *std_cmake_args)
- make()
- make("install")
+ args = ["-DCALLPATH_WALKER=dyninst"]
+
+ if self.spec.satisfies("^dyninst@9.3.0:"):
+ std_flag = self.compiler.cxx11_flag
+ args.append("-DCMAKE_CXX_FLAGS='{0} -fpermissive'".format(
+ std_flag))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/candle-benchmarks/package.py b/var/spack/repos/builtin/packages/candle-benchmarks/package.py
new file mode 100644
index 0000000000..7e5650c6f3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/candle-benchmarks/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class CandleBenchmarks(Package):
+ """ECP-CANDLE Benchmarks"""
+
+ homepage = "https://github.com/ECP-CANDLE/Benchmarks"
+ url = "https://github.com/ECP-CANDLE/Benchmarks/archive/v1.0.tar.gz"
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('1.0', '6eced30dc15374bc9f90a86d0396e470')
+
+ depends_on('python@2.7:')
+ depends_on('py-theano +gpu', type=('build', 'run'))
+ depends_on('py-keras', type=('build', 'run'))
+ depends_on('py-matplotlib +image', type=('build', 'run'))
+ depends_on('py-tqdm', type=('build', 'run'))
+ depends_on('py-scikit-learn', type=('build', 'run'))
+ depends_on('opencv@3.2.0: +core +highgui +imgproc +jpeg +png +tiff +zlib +python -dnn')
+ depends_on('py-mdanalysis', type=('build', 'run'))
+ depends_on('py-mpi4py', type=('build', 'run'))
+
+ # see #3244, but use external for now
+ # depends_on('tensorflow')
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cantera/package.py b/var/spack/repos/builtin/packages/cantera/package.py
index 5cd9fcdd17..03dece3af8 100644
--- a/var/spack/repos/builtin/packages/cantera/package.py
+++ b/var/spack/repos/builtin/packages/cantera/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,134 +26,147 @@ from spack import *
import os
-class Cantera(Package):
+class Cantera(SConsPackage):
"""Cantera is a suite of object-oriented software tools for problems
involving chemical kinetics, thermodynamics, and/or transport processes."""
homepage = "http://www.cantera.org/docs/sphinx/html/index.html"
- url = "https://github.com/Cantera/cantera/archive/v2.2.1.tar.gz"
+ url = "https://github.com/Cantera/cantera/archive/v2.3.0.tar.gz"
+ version('2.3.0', 'aebbd8d891cb1623604245398502b72e')
version('2.2.1', '9d1919bdef39ddec54485fc8a741a3aa')
- variant('lapack', default=True,
- description='Build with external BLAS/LAPACK libraries')
- variant('threadsafe', default=True,
- description='Build threadsafe, requires Boost')
- variant('sundials', default=True,
- description='Build with external Sundials')
variant('python', default=False,
description='Build the Cantera Python module')
variant('matlab', default=False,
description='Build the Cantera Matlab toolbox')
# Required dependencies
- depends_on('scons', type='build')
-
- # Recommended dependencies
- depends_on('blas', when='+lapack')
- depends_on('lapack', when='+lapack')
- depends_on('boost', when='+threadsafe')
- depends_on('sundials', when='+sundials') # must be compiled with -fPIC
+ depends_on('fmt@3.0.0:3.0.2', when='@2.3.0:')
+ depends_on('googletest', when='@2.3.0:')
+ depends_on('eigen', when='@2.3.0:')
+ depends_on('boost')
+ depends_on('sundials') # must be compiled with -fPIC
+ depends_on('blas')
+ depends_on('lapack')
# Python module dependencies
extends('python', when='+python')
+ depends_on('py-cython', when='+python', type='build')
depends_on('py-numpy', when='+python', type=('build', 'run'))
depends_on('py-scipy', when='+python', type=('build', 'run'))
- depends_on('py-cython', when='+python', type=('build', 'run'))
depends_on('py-3to2', when='+python', type=('build', 'run'))
# TODO: these "when" specs don't actually work
- # depends_on('py-unittest2', when='+python^python@2.6')
- # depends_on('py-unittest2py3k', when='+python^python@3.1')
+ # depends_on('py-unittest2', when='+python^python@2.6', type=('build', 'run')) # noqa
+ # depends_on('py-unittest2py3k', when='+python^python@3.1', type=('build', 'run')) # noqa
# Matlab toolbox dependencies
- # TODO: add Matlab package
- # TODO: allow packages to extend multiple other packages
- # extends('matlab', when='+matlab')
+ extends('matlab', when='+matlab')
+
+ def build_args(self, spec, prefix):
+ # Valid args can be found by running `scons help`
- def install(self, spec, prefix):
- # Required options
- options = [
+ # Required args
+ args = [
+ 'build',
'prefix={0}'.format(prefix),
- 'CC={0}'.format(os.environ['CC']),
- 'CXX={0}'.format(os.environ['CXX']),
- 'F77={0}'.format(os.environ['F77']),
- 'FORTRAN={0}'.format(os.environ['FC']),
- 'cc_flags=-fPIC',
+ 'VERBOSE=yes',
+ 'CC={0}'.format(spack_cc),
+ 'CXX={0}'.format(spack_cxx),
+ 'FORTRAN={0}'.format(spack_fc),
+ 'cc_flags={0}'.format(self.compiler.pic_flag),
# Allow Spack environment variables to propagate through to SCons
'env_vars=all'
]
- # BLAS/LAPACK support
- if '+lapack' in spec:
- lapack_blas = spec['lapack'].lapack_libs + spec['blas'].blas_libs
- options.extend([
- 'blas_lapack_libs={0}'.format(','.join(lapack_blas.names)),
- 'blas_lapack_dir={0}'.format(spec['lapack'].prefix.lib)
+ if spec.satisfies('@:2.2.1'):
+ args.append('F77={0}'.format(spack_f77))
+
+ # fmt support
+ if spec.satisfies('@2.3.0:'):
+ args.append('system_fmt=y')
+
+ # Googletest support
+ if spec.satisfies('@2.3.0:'):
+ args.append('system_googletest=y')
+
+ # Eigen support
+ if spec.satisfies('@2.3.0:'):
+ args.extend([
+ 'system_eigen=y',
+ 'extra_inc_dirs={0}'.format(
+ join_path(spec['eigen'].prefix.include, 'eigen{0}'.format(
+ spec['eigen'].version.up_to(1)))),
])
- # Threadsafe build, requires Boost
- if '+threadsafe' in spec:
- options.extend([
+ # BLAS/LAPACK support
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
+ args.extend([
+ 'blas_lapack_libs={0}'.format(','.join(lapack_blas.names)),
+ 'blas_lapack_dir={0}'.format(spec['lapack'].prefix.lib)
+ ])
+
+ # Boost support
+ if spec.satisfies('@2.3.0:'):
+ args.append('boost_inc_dir={0}'.format(
+ spec['boost'].prefix.include))
+ else:
+ args.extend([
'build_thread_safe=yes',
'boost_inc_dir={0}'.format(spec['boost'].prefix.include),
- 'boost_lib_dir={0}'.format(spec['boost'].prefix.lib)
+ 'boost_lib_dir={0}'.format(spec['boost'].prefix.lib),
])
- else:
- options.append('build_thread_safe=no')
# Sundials support
- if '+sundials' in spec:
- options.extend([
+ if spec.satisfies('@2.3.0:'):
+ args.append('system_sundials=y')
+ else:
+ args.extend([
'use_sundials=y',
- 'sundials_include={0}'.format(spec['sundials'].prefix.include),
- 'sundials_libdir={0}'.format(spec['sundials'].prefix.lib),
'sundials_license={0}'.format(
- join_path(spec['sundials'].prefix, 'LICENSE'))
+ spec['sundials'].prefix.LICENSE)
])
- else:
- options.append('use_sundials=n')
+
+ args.extend([
+ 'sundials_include={0}'.format(spec['sundials'].prefix.include),
+ 'sundials_libdir={0}'.format(spec['sundials'].prefix.lib),
+ ])
# Python module
if '+python' in spec:
- options.extend([
+ args.extend([
'python_package=full',
- 'python_cmd={0}'.format(
- join_path(spec['python'].prefix.bin, 'python')),
- 'python_array_home={0}'.format(spec['py-numpy'].prefix)
+ 'python_cmd={0}'.format(spec['python'].command.path),
])
- if spec['python'].satisfies('@3'):
- options.extend([
+ if spec['python'].satisfies('@3:'):
+ args.extend([
'python3_package=y',
- 'python3_cmd={0}'.format(
- join_path(spec['python'].prefix.bin, 'python')),
- 'python3_array_home={0}'.format(spec['py-numpy'].prefix)
+ 'python3_cmd={0}'.format(spec['python'].command.path),
])
else:
- options.append('python3_package=n')
+ args.append('python3_package=n')
else:
- options.append('python_package=none')
- options.append('python3_package=n')
+ args.append('python_package=none')
+ args.append('python3_package=n')
# Matlab toolbox
if '+matlab' in spec:
- options.extend([
+ args.extend([
'matlab_toolbox=y',
'matlab_path={0}'.format(spec['matlab'].prefix)
])
else:
- options.append('matlab_toolbox=n')
+ args.append('matlab_toolbox=n')
- scons('build', *options)
+ return args
- if '+python' in spec:
+ def test(self):
+ if '+python' in self.spec:
# Tests will always fail if Python dependencies aren't built
# In addition, 3 of the tests fail when run in parallel
scons('test', parallel=False)
- scons('install')
-
- self.filter_compilers()
-
+ @run_after('install')
def filter_compilers(self):
"""Run after install to tell the Makefile and SConstruct files to use
the compilers that Spack built the package with.
diff --git a/var/spack/repos/builtin/packages/canu/package.py b/var/spack/repos/builtin/packages/canu/package.py
new file mode 100644
index 0000000000..0198246e72
--- /dev/null
+++ b/var/spack/repos/builtin/packages/canu/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Canu(MakefilePackage):
+ """A single molecule sequence assembler for genomes large and
+ small."""
+
+ homepage = "http://canu.readthedocs.io/"
+ url = "https://github.com/marbl/canu/archive/v1.5.tar.gz"
+
+ version('1.5', '65df275baa28ecf11b15dfd7343361e3')
+
+ depends_on('gnuplot', type='run')
+ depends_on('jdk', type='run')
+ depends_on('perl', type='run')
+
+ build_directory = 'src'
+
+ def patch(self):
+ # Use our perl, not whatever is in the environment
+ perl = self.spec['perl'].prefix.bin.perl
+ filter_file(r'^#!/usr/bin/env perl',
+ '#!{0}'.format(perl),
+ 'src/pipelines/canu.pl')
+
+ def install(self, spec, prefix):
+ # replicate the Makefile logic here:
+ # https://github.com/marbl/canu/blob/master/src/Makefile#L344
+ uname = which('uname')
+ ostype = uname(output=str).strip()
+ machinetype = uname('-m', output=str).strip()
+ if machinetype == 'x86_64':
+ machinetype = 'amd64'
+ target_dir = '{0}-{1}'.format(ostype, machinetype)
+ bin = join_path(target_dir, 'bin')
+
+ install_tree(bin, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cap3/package.py b/var/spack/repos/builtin/packages/cap3/package.py
new file mode 100644
index 0000000000..13568b40cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cap3/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cap3(Package):
+ """CAP3 is DNA Sequence Assembly Program"""
+
+ homepage = "http://seq.cs.iastate.edu/"
+ url = "http://seq.cs.iastate.edu/CAP3/cap3.linux.x86_64.tar"
+
+ version('2015-02-11', '5393d937978ecc5f18fcb741140e1f02',
+ url='http://seq.cs.iastate.edu/CAP3/cap3.linux.x86_64.tar')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('cap3', prefix.bin)
+ install('formcon', prefix.bin)
+ mkdirp(prefix.doc)
+ install('doc', prefix.doc)
+ install('aceform', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/cares/package.py b/var/spack/repos/builtin/packages/cares/package.py
new file mode 100644
index 0000000000..ab3691be16
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cares/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cares(CMakePackage):
+ """c-ares: A C library for asynchronous DNS requests"""
+
+ homepage = "https://c-ares.haxx.se"
+ url = "https://github.com/c-ares/c-ares/archive/cares-1_13_0.tar.gz"
+
+ version('develop', branch='master',
+ git='https://github.com/c-ares/c-ares.git')
+
+ version('1.13.0', 'cdb21052a7eb85261da22f83c0654cfd')
+
+ def url_for_version(self, version):
+ url = "https://github.com/c-ares/c-ares/archive/cares-{0}.tar.gz"
+ return url.format(version.underscored)
diff --git a/var/spack/repos/builtin/packages/cask/package.py b/var/spack/repos/builtin/packages/cask/package.py
index b48365b61d..e1ffe284e7 100644
--- a/var/spack/repos/builtin/packages/cask/package.py
+++ b/var/spack/repos/builtin/packages/cask/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/catch/package.py b/var/spack/repos/builtin/packages/catch/package.py
index 8d2b0a1b24..37e8d69aaf 100644
--- a/var/spack/repos/builtin/packages/catch/package.py
+++ b/var/spack/repos/builtin/packages/catch/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,23 @@ class Catch(Package):
homepage = "https://github.com/philsquared/Catch"
url = "https://github.com/philsquared/Catch/archive/v1.3.0.tar.gz"
+ version('1.9.4', '110b9173d7f766487fed5b710836c7216a781568')
+ version('1.9.3', 'dc0cd0b344d8ccb1190ac3447efcb49c9b43d497')
+ version('1.9.2', '0580f57edd2b33ec671488dc7b6151f9e360c8c9')
+ version('1.9.1', '10784fc4c3786dfc3bd222fb3f9b048b6d68f186')
+ version('1.9.0', '62f07506d4a381d1730d494b71cff0396b9eb3d6')
+ version('1.8.2', '45a7598a8e5c47bc09fb73eec205ffe0885983dc')
+ version('1.8.1', 'd4e302f712fb7e75ce6f05b436dbaf21dca40030')
+ version('1.8.0', '26064092b5682c9c997b04015ed1565f0e198827')
+ version('1.7.2', '13018db2f0f0395456f695b0d0fbc490662e3467')
+ version('1.7.1', 'f82e11a5cdfef2d36b5687ff5970d383f9e76490')
+ version('1.7.0', 'fe39f5b3eb07a5dd0e3f84a1335ceca7de8982e6')
+ version('1.6.1', '7d46961a3131655b986123f8a1f439a04a0af623')
+ version('1.6.0', '890a3b21085d796e13c3bfaf4b6c6f1d06e4a52e')
+ version('1.5.9', '8bc32146a5a2789cd3d3ce2893772e32f412f1b1')
+ version('1.5.0', 'c87397846ea5126febd39f513b413e32f9ed552b')
+ version('1.4.0', 'c165406968fbfb46949885da571cd528c62c4d9a')
+ version('1.3.5', '31553ba6e4bd0cc61e0507d6754847e354699284')
version('1.3.0', 'e13694aaff72817d02af8ed27d077cd261b6e857')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/cbench/package.py b/var/spack/repos/builtin/packages/cbench/package.py
new file mode 100644
index 0000000000..c090907af7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbench/package.py
@@ -0,0 +1,92 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cbench(MakefilePackage):
+ """Cbench is intended as a relatively straightforward toolbox of tests,
+ benchmarks, applications, utilities, and framework to hold them together
+ with the goal to facilitate scalable testing, benchmarking, and analysis
+ of a Linux parallel compute cluster."""
+
+ homepage = "https://sourceforge.net/projects/cbench/"
+ url = "https://sourceforge.net/projects/cbench/files/cbench/1.3.0/cbench_release_1.3.0.tar.gz/download"
+ list_url = "https://sourceforge.net/projects/cbench/files/cbench/"
+ list_depth = 1
+
+ version('1.3.0', '2fb112876fdc96165d14e019b4a26f2e')
+
+ depends_on('mpi')
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('fftw')
+
+ # The following compilers are not supported by Cbench:
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%nag')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def edit(self, spec, prefix):
+ # The location of the Cbench source tree
+ env['CBENCHOME'] = self.stage.source_path
+
+ # The location that will contain all of your tests and their results
+ env['CBENCHTEST'] = prefix
+
+ # The location of the system MPI tree
+ env['MPIHOME'] = spec['mpi'].prefix
+
+ # Pick the compiler collection/chain you want to compile with.
+ # Examples include: intel, gcc, pgi.
+ env['COMPILERCOLLECTION'] = self.compiler.name
+
+ # Linking flags for BLAS/LAPACK and FFTW
+ env['BLASLIB'] = spec['blas'].libs.ld_flags
+ env['LAPACKLIB'] = spec['lapack'].libs.ld_flags
+ env['FFTWLIB'] = spec['fftw'].libs.ld_flags
+
+ # The number of make jobs (commands) to run simultaneously
+ env['JOBS'] = str(make_jobs)
+
+ @run_before('build')
+ @on_package_attributes(run_tests=True)
+ def test_blas_linkage(self):
+ """Quick test to ensure that BLAS linkage is working correctly."""
+
+ make('-C', 'opensource/maketests', 'clean')
+ make('-C', 'opensource/maketests', 'dummy_blas')
+ make('-C', 'opensource/maketests', 'linkstatus')
+
+ def install(self, spec, prefix):
+ # Install binaries in $CBENCHOME/bin
+ make('install')
+
+ # This creates a testing tree (if one doesn't already exist) and
+ # copies the binaries from `$CBENCHOME/bin` to `$CBENCHTEST/bin`.
+ # This allows you to use the testing tree independently of the
+ # source tree in the future.
+ make('installtests')
diff --git a/var/spack/repos/builtin/packages/cblas/package.py b/var/spack/repos/builtin/packages/cblas/package.py
index 0828141307..05a3ddb43e 100644
--- a/var/spack/repos/builtin/packages/cblas/package.py
+++ b/var/spack/repos/builtin/packages/cblas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
new file mode 100644
index 0000000000..42f40c63ea
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis-gui/package.py
@@ -0,0 +1,97 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+##########################################################################
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+# details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+# Place, Suite 330, Boston, MA 02111-1307 USA
+##########################################################################
+
+from spack import *
+
+
+class CbtfArgonavisGui(QMakePackage):
+ """CBTF Argo Navis GUI project contains the GUI that views OpenSpeedShop
+ performance information by loading in the Sqlite database files.
+ """
+ homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
+
+ version('0.8.1', branch='master',
+ git='https://github.com/OpenSpeedShop/cbtf-argonavis-gui.git')
+
+ depends_on("cmake@3.0.2", type='build')
+ depends_on("openspeedshop+cuda gui='qt4'")
+ depends_on('qt@4.8.6:')
+ depends_on("boost@1.50.0:1.59.0")
+ depends_on("cbtf")
+ depends_on("cbtf-krell")
+ depends_on("cbtf-argonavis")
+ depends_on("cuda")
+ depends_on("mrnet@5.0.1:+lwthreads")
+ depends_on("xerces-c@3.1.1:")
+ depends_on("graphviz")
+ depends_on("qtgraph")
+
+ parallel = False
+
+ def setup_environment(self, spack_env, run_env):
+ """Set up the compile and runtime environments for a package."""
+ spack_env.set('BOOSTROOT', self.spec['boost'].prefix)
+ spack_env.set('CBTF_ROOT', self.spec['cbtf'].prefix)
+ spack_env.set('CBTF_KRELL_ROOT', self.spec['cbtf-krell'].prefix)
+ spack_env.set('CBTF_ARGONAVIS_ROOT',
+ self.spec['cbtf-argonavis'].prefix)
+ spack_env.set('OSS_CBTF_ROOT', self.spec['openspeedshop'].prefix)
+ spack_env.set('GRAPHVIZ_ROOT', self.spec['graphviz'].prefix)
+ spack_env.set('QTGRAPHLIB_ROOT', self.spec['qtgraph'].prefix)
+ spack_env.set('KRELL_ROOT_MRNET', self.spec['mrnet'].prefix)
+ spack_env.set('KRELL_ROOT_XERCES', self.spec['xerces-c'].prefix)
+ spack_env.set('INSTALL_ROOT', self.spec.prefix)
+
+ # The implementor of qtgraph has set up the library and include
+ # paths in a non-conventional way. We reflect that here.
+ run_env.prepend_path(
+ 'LD_LIBRARY_PATH', join_path(
+ self.spec['qtgraph'].prefix.lib64,
+ '{0}'.format(self.spec['qt'].version.up_to(3))))
+ # The openspeedshop libraries are needed to actually load the
+ # performance information into the GUI.
+ run_env.prepend_path(
+ 'LD_LIBRARY_PATH', self.spec['openspeedshop'].prefix.lib64)
+
+ def qmake_args(self):
+ options = ['-o', 'Makefile', 'openss-gui.pro']
+ return options
diff --git a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
index 3d8572232c..a335754537 100644
--- a/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-argonavis/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
##########################################################################
-# Copyright (c) 2015-2016 Krell Institute. All Rights Reserved.
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
@@ -43,20 +43,19 @@
from spack import *
-class CbtfArgonavis(Package):
+class CbtfArgonavis(CMakePackage):
"""CBTF Argo Navis project contains the CUDA collector and supporting
libraries that was done as a result of a DOE SBIR grant.
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
- # Mirror access template example
- # url = "file:/home/jeg/OpenSpeedShop_ROOT/SOURCES/cbtf-argonavis-1.6.tar.gz"
- # version('1.6', '0fafa0008478405c2c2319450f174ed4')
-
version('1.8', branch='master',
git='https://github.com/OpenSpeedShop/cbtf-argonavis.git')
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
+
depends_on("cmake@3.0.2:", type='build')
depends_on("boost@1.50.0:1.59.0")
depends_on("papi")
@@ -67,73 +66,27 @@ class CbtfArgonavis(Package):
parallel = False
- def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
- # Sets build type parameters into cmakeOptions the options that will
- # enable the cbtf-krell built type settings
+ build_directory = 'build_cbtf_argonavis'
+ def cmake_args(self):
+ spec = self.spec
compile_flags = "-O2 -g"
- BuildTypeOptions = []
- # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it to be, not the
- # stdcmakeargs
- for word in cmakeOptions[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_CXX_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_C_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_VERBOSE_MAKEFILE'):
- cmakeOptions.remove(word)
- BuildTypeOptions.extend([
- '-DCMAKE_VERBOSE_MAKEFILE=ON',
- '-DCMAKE_BUILD_TYPE=None',
+ cmake_args = [
'-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags
- ])
-
- cmakeOptions.extend(BuildTypeOptions)
-
- def install(self, spec, prefix):
-
- # Look for package installation information in the cbtf and cbtf-krell
- # prefixes
- cmake_prefix_path = join_path(
- spec['cbtf'].prefix) + ':' + join_path(spec['cbtf-krell'].prefix)
-
- with working_dir('CUDA'):
- with working_dir('build', create=True):
-
- cmakeOptions = []
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
- '-DCUDA_DIR=%s' % spec['cuda'].prefix,
- '-DCUDA_INSTALL_PATH=%s' % spec['cuda'].prefix,
- '-DCUDA_TOOLKIT_ROOT_DIR=%s' % spec['cuda'].prefix,
- '-DCUPTI_DIR=%s' % join_path(
- spec['cuda'].prefix + '/extras/CUPTI'),
- '-DCUPTI_ROOT=%s' % join_path(
- spec['cuda'].prefix + '/extras/CUPTI'),
- '-DPAPI_ROOT=%s' % spec['papi'].prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DBOOST_ROOT=%s' % spec['boost'].prefix,
- '-DBoost_DIR=%s' % spec['boost'].prefix,
- '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DBoost_NO_SYSTEM_PATHS=ON'])
-
- # Add in the standard cmake arguments
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the standard cmake arguments to what we want the build
- # type, etc to be
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- # Invoke cmake
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DCUDA_DIR=%s' % spec['cuda'].prefix,
+ '-DCUDA_INSTALL_PATH=%s' % spec['cuda'].prefix,
+ '-DCUDA_TOOLKIT_ROOT_DIR=%s' % spec['cuda'].prefix,
+ '-DCUPTI_DIR=%s' % spec['cuda'].prefix.extras.CUPTI,
+ '-DCUPTI_ROOT=%s' % spec['cuda'].prefix.extras.CUPTI,
+ '-DPAPI_ROOT=%s' % spec['papi'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DBoost_DIR=%s' % spec['boost'].prefix,
+ '-DBOOST_LIBRARYDIR=%s' % spec['boost'].prefix.lib,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DBoost_NO_SYSTEM_PATHS=ON']
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/cbtf-krell/package.py b/var/spack/repos/builtin/packages/cbtf-krell/package.py
index 3f36942e9a..1716d83188 100644
--- a/var/spack/repos/builtin/packages/cbtf-krell/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-krell/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
##########################################################################
-# Copyright (c) 2015-2016 Krell Institute. All Rights Reserved.
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
@@ -43,7 +43,7 @@
from spack import *
-class CbtfKrell(Package):
+class CbtfKrell(CMakePackage):
"""CBTF Krell project contains the Krell Institute contributions to the
CBTF project. These contributions include many performance data
collectors and support libraries as well as some example tools
@@ -52,10 +52,6 @@ class CbtfKrell(Package):
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
- # optional mirror access template
- # url = "file:/home/jeg/cbtf-krell-1.6.tar.gz"
- # version('1.6', 'edeb61cd488f16e7b124f77db9ce762d')
-
version('1.8', branch='master',
git='https://github.com/OpenSpeedShop/cbtf-krell.git')
@@ -72,16 +68,18 @@ class CbtfKrell(Package):
description="Build mpi experiment collector for mpich2 MPI.")
variant('mpich', default=False,
description="Build mpi experiment collector for mpich MPI.")
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
# Dependencies for cbtf-krell
depends_on("cmake@3.0.2:", type='build')
# For binutils service
- depends_on("binutils@2.24+krellpatch")
+ depends_on("binutils")
# collectionTool
depends_on("boost@1.50.0:1.59.0")
- depends_on("dyninst@9.2.0")
+ depends_on("dyninst@9.3.2")
depends_on("mrnet@5.0.1:+lwthreads")
depends_on("xerces-c@3.1.1:")
@@ -91,6 +89,7 @@ class CbtfKrell(Package):
depends_on("libmonitor+krellpatch")
depends_on("libunwind")
depends_on("papi")
+ depends_on("llvm-openmp-ompt@towards_tr4+standalone")
# MPI Installations
# These have not worked either for build or execution, commenting out for
@@ -104,31 +103,7 @@ class CbtfKrell(Package):
parallel = False
- def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
- # Sets build type parameters into cmakeOptions the options that will
- # enable the cbtf-krell built type settings
-
- compile_flags = "-O2 -g"
- BuildTypeOptions = []
- # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it to be, not the
- # stdcmakeargs
- for word in cmakeOptions[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_CXX_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_C_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_VERBOSE_MAKEFILE'):
- cmakeOptions.remove(word)
- BuildTypeOptions.extend([
- '-DCMAKE_VERBOSE_MAKEFILE=ON',
- '-DCMAKE_BUILD_TYPE=None',
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags
- ])
-
- cmakeOptions.extend(BuildTypeOptions)
+ build_directory = 'build_cbtf_krell'
def set_mpi_cmakeOptions(self, spec, cmakeOptions):
# Appends to cmakeOptions the options that will enable the appropriate
@@ -157,135 +132,28 @@ class CbtfKrell(Package):
cmakeOptions.extend(MPIOptions)
- def install(self, spec, prefix):
+ def cmake_args(self):
+ spec = self.spec
+
+ compile_flags = "-O2 -g"
# Add in paths for finding package config files that tell us
# where to find these packages
- # cmake_prefix_path = \
- # join_path(spec['cbtf'].prefix) + ':' + \
- # join_path(spec['dyninst'].prefix)
- # '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path
-
- # Build cbtf-krell with cmake
- with working_dir('build_cbtf_krell', create=True):
- cmakeOptions = []
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DBINUTILS_DIR=%s' % spec['binutils'].prefix,
- '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
- '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
- '-DPAPI_DIR=%s' % spec['papi'].prefix,
- '-DBOOST_DIR=%s' % spec['boost'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
- '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix])
-
- # Add any MPI implementations coming from variant settings
- self.set_mpi_cmakeOptions(spec, cmakeOptions)
-
- # Add in the standard cmake arguments
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the standard cmake arguments to what we want the build
- # type, etc to be
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- # Invoke cmake
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
-
- # if '+cray' in spec:
- # if 'cray' in self.spec.architecture:
- # if '+runtime' in spec:
- # with working_dir('build_cbtf_cray_runtime', create=True):
- # python_vers='%d.%d' % spec['python'].version[:2]
- # cmake .. \
- # -DCMAKE_BUILD_TYPE=Debug \
- # -DTARGET_OS="cray" \
- # -DRUNTIME_ONLY="true" \
- # -DCMAKE_INSTALL_PREFIX=${CBTF_KRELL_PREFIX} \
- # -DCMAKE_PREFIX_PATH=${CBTF_ROOT} \
- # -DCBTF_DIR=${CBTF_ROOT} \
- # -DBOOST_ROOT=${BOOST_INSTALL_PREFIX} \
- # -DXERCESC_DIR=${XERCESC_INSTALL_PREFIX} \
- # -DBINUTILS_DIR=${KRELL_ROOT} \
- # -DLIBMONITOR_DIR=${KRELL_ROOT_COMPUTE} \
- # -DLIBUNWIND_DIR=${KRELL_ROOT_COMPUTE} \
- # -DPAPI_DIR=${PAPI_ROOT} \
- # -DDYNINST_DIR=${DYNINST_CN_ROOT} \
- # -DMRNET_DIR=${MRNET_INSTALL_PREFIX} \
- # -DMPICH2_DIR=/opt/cray/mpt/7.0.1/gni/mpich2-gnu/48
- # else:
- # with working_dir('build_cbtf_cray_frontend', create=True):
- # python_vers='%d.%d' % spec['python'].version[:2]
- # cmake .. \
- # -DCMAKE_BUILD_TYPE=Debug \
- # -DCMAKE_INSTALL_PREFIX=${CBTF_KRELL_PREFIX} \
- # -DCMAKE_PREFIX_PATH=${CBTF_ROOT} \
- # -DCBTF_DIR=${CBTF_ROOT} \
- # -DRUNTIME_TARGET_OS="cray" \
- # -DCBTF_KRELL_CN_RUNTIME_DIR=${CBTF_KRELL_CN_RUNTIME_ROOT} \
- # -DCBTF_CN_RUNTIME_DIR=${CBTF_CN_RUNTIME_ROOT} \
- # -DLIBMONITOR_CN_RUNTIME_DIR=${LIBMONITOR_CN_ROOT} \
- # -DLIBUNWIND_CN_RUNTIME_DIR=${LIBUNWIND_CN_ROOT} \
- # -DPAPI_CN_RUNTIME_DIR=${PAPI_CN_ROOT} \
- # -DXERCESC_CN_RUNTIME_DIR=/${XERCESC_CN_ROOT} \
- # -DMRNET_CN_RUNTIME_DIR=${MRNET_CN_ROOT} \
- # -DBOOST_CN_RUNTIME_DIR=${BOOST_CN_ROOT} \
- # -DDYNINST_CN_RUNTIME_DIR=${DYNINST_CN_ROOT} \
- # -DBOOST_ROOT=/${KRELL_ROOT} \
- # -DXERCESC_DIR=/${KRELL_ROOT} \
- # -DBINUTILS_DIR=/${KRELL_ROOT} \
- # -DLIBMONITOR_DIR=${KRELL_ROOT} \
- # -DLIBUNWIND_DIR=${KRELL_ROOT} \
- # -DPAPI_DIR=${PAPI_ROOT} \
- # -DDYNINST_DIR=${KRELL_ROOT} \
- # -DMRNET_DIR=${KRELL_ROOT} \
- # -DMPICH2_DIR=/opt/cray/mpt/7.0.1/gni/mpich2-gnu/48
- # fi
-#
-# make("clean")
-# make()
-# make("install")
-#
-# elif '+mic' in spec:
-# if '+runtime' in spec:
-# with working_dir('build_cbtf_mic_runtime', create=True):
-# python_vers='%d.%d' % spec['python'].version[:2]
-# cmake .. \
-#
-# else:
-# with working_dir('build_cbtf_cray_frontend', create=True):
-# python_vers='%d.%d' % spec['python'].version[:2]
-# cmake .. \
-# fi
-#
-# else:
-# # Build cbtf-krell with cmake
-# with working_dir('build_cbtf_krell', create=True):
-# cmake('..',
-# '-DCMAKE_BUILD_TYPE=Debug',
-# '-DCMAKE_INSTALL_PREFIX=%s' % prefix,
-# '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
-# '-DBINUTILS_DIR=%s' % spec['binutils'].prefix,
-# '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
-# '-DLIBUNWIND_DIR=%s'% spec['libunwind'].prefix,
-# '-DPAPI_DIR=%s' % spec['papi'].prefix,
-# '-DBOOST_DIR=%s' % spec['boost'].prefix,
-# '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
-# '-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
-# '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
-# '-DOPENMPI_DIR=%s' % openmpi_prefix_path,
-# '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
-# *std_cmake_args)
-#
-# make("clean")
-# make()
-# make("install")
-#
-# fi
-#
+ cmake_args = [
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DBINUTILS_DIR=%s' % spec['binutils'].prefix,
+ '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
+ '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
+ '-DPAPI_DIR=%s' % spec['papi'].prefix,
+ '-DBOOST_DIR=%s' % spec['boost'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DDYNINST_DIR=%s' % spec['dyninst'].prefix,
+ '-DLIBIOMP_DIR=%s' % spec['llvm-openmp-ompt'].prefix,
+ '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix]
+
+ # Add any MPI implementations coming from variant settings
+ self.set_mpi_cmakeOptions(spec, cmake_args)
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/cbtf-lanl/package.py b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
index 1545c7bf8b..19b00e00df 100644
--- a/var/spack/repos/builtin/packages/cbtf-lanl/package.py
+++ b/var/spack/repos/builtin/packages/cbtf-lanl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
##########################################################################
-# Copyright (c) 2015-2016 Krell Institute. All Rights Reserved.
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
@@ -43,18 +43,17 @@
from spack import *
-class CbtfLanl(Package):
+class CbtfLanl(CMakePackage):
"""CBTF LANL project contains a memory tool and data center type system
command monitoring tool."""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home/"
- # Mirror access template example
- # url = "file:/g/g24/jeg/cbtf-lanl-1.6.tar.gz"
- # version('1.6', 'c3f78f967b0a42c6734ce4be0e602426')
-
version('1.8', branch='master',
git='http://git.code.sf.net/p/cbtf-lanl/cbtf-lanl')
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
+
depends_on("cmake@3.0.2:", type='build')
# Dependencies for cbtf-krell
depends_on("mrnet@5.0.1:+lwthreads")
@@ -64,61 +63,21 @@ class CbtfLanl(Package):
parallel = False
- def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
- # Sets build type parameters into cmakeOptions the options that will
- # enable the cbtf-krell built type settings
-
- compile_flags = "-O2 -g"
- BuildTypeOptions = []
- # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it to be, not the
- # stdcmakeargs
- for word in cmakeOptions[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_CXX_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_C_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_VERBOSE_MAKEFILE'):
- cmakeOptions.remove(word)
- BuildTypeOptions.extend([
- '-DCMAKE_VERBOSE_MAKEFILE=ON',
- '-DCMAKE_BUILD_TYPE=None',
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags
- ])
-
- cmakeOptions.extend(BuildTypeOptions)
+ build_directory = 'build_cbtf_lanl'
- def install(self, spec, prefix):
+ def cmake_args(self):
- # Add in paths for finding package config files that tell us where to
- # find these packages
- cmake_prefix_path = join_path(
- spec['cbtf'].prefix) + ':' + join_path(spec['cbtf-krell'].prefix)
-
- with working_dir('build', create=True):
- cmakeOptions = []
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
- '-DCMAKE_PREFIX_PATH=%s' % cmake_prefix_path,
- '-DCMAKE_MODULE_PATH=%s' % join_path(
- prefix.share, 'KrellInstitute', 'cmake')])
-
- # Add in the standard cmake arguments
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the standard cmake arguments to what we want the build
- # type, etc to be
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- # Invoke cmake
- cmake('..', *cmakeOptions)
+ spec = self.spec
+ compile_flags = "-O2 -g"
- make("clean")
- make()
- make("install")
+ cmake_args = [
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
+ '-DCMAKE_MODULE_PATH=%s' % join_path(
+ prefix.share, 'KrellInstitute', 'cmake')]
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/cbtf/package.py b/var/spack/repos/builtin/packages/cbtf/package.py
index 7c9626c90e..2f0b3b275d 100644
--- a/var/spack/repos/builtin/packages/cbtf/package.py
+++ b/var/spack/repos/builtin/packages/cbtf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
##########################################################################
-# Copyright (c) 2015-2016 Krell Institute. All Rights Reserved.
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
@@ -43,7 +43,7 @@
from spack import *
-class Cbtf(Package):
+class Cbtf(CMakePackage):
"""CBTF project contains the base code for CBTF that supports creating
components, component networks and the support to connect these
components and component networks into sequential and distributed
@@ -52,16 +52,14 @@ class Cbtf(Package):
"""
homepage = "http://sourceforge.net/p/cbtf/wiki/Home"
- # Mirror access template example
- # url = "file:/home/jeg/cbtf-1.6.tar.gz"
- # version('1.6', 'c1ef4e5aa4e470dffb042abdba0b9987')
-
# Use when the git repository is available
version('1.8', branch='master',
git='https://github.com/OpenSpeedShop/cbtf.git')
variant('runtime', default=False,
description="build only the runtime libraries and collectors.")
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
depends_on("cmake@3.0.2:", type='build')
depends_on("boost@1.50.0:1.59.0")
@@ -72,82 +70,42 @@ class Cbtf(Package):
parallel = False
- def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
- # Sets build type parameters into cmakeOptions the options that will
- # enable the cbtf-krell built type settings
-
- compile_flags = "-O2 -g"
- BuildTypeOptions = []
- # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it to be, not the
- # stdcmakeargs
- for word in cmakeOptions[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_CXX_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_C_FLAGS'):
- cmakeOptions.remove(word)
- BuildTypeOptions.extend([
- '-DCMAKE_BUILD_TYPE=None',
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags
- ])
-
- cmakeOptions.extend(BuildTypeOptions)
-
- def install(self, spec, prefix):
- with working_dir('build', create=True):
-
- # Boost_NO_SYSTEM_PATHS Set to TRUE to suppress searching
- # in system paths (or other locations outside of BOOST_ROOT
- # or BOOST_INCLUDEDIR). Useful when specifying BOOST_ROOT.
- # Defaults to OFF.
+ build_directory = 'build_cbtf'
- if '+runtime' in spec:
- # Install message tag include file for use in Intel MIC
- # cbtf-krell build
- # FIXME
- cmakeOptions = []
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DBoost_NO_SYSTEM_PATHS=TRUE',
- '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
- '-DBOOST_ROOT=%s' % spec['boost'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DCMAKE_MODULE_PATH=%s' % join_path(
- prefix.share, 'KrellInstitute', 'cmake')])
+ def cmake_args(self):
- # Add in the standard cmake arguments
- cmakeOptions.extend(std_cmake_args)
+ spec = self.spec
- # Adjust the standard cmake arguments to what we want the build
- # type, etc to be
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
+ # Boost_NO_SYSTEM_PATHS Set to TRUE to suppress searching
+ # in system paths (or other locations outside of BOOST_ROOT
+ # or BOOST_INCLUDEDIR). Useful when specifying BOOST_ROOT.
+ # Defaults to OFF.
- # Invoke cmake
- cmake('..', *cmakeOptions)
-
- else:
- cmakeOptions = []
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DBoost_NO_SYSTEM_PATHS=TRUE',
- '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
- '-DBOOST_ROOT=%s' % spec['boost'].prefix,
- '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
- '-DCMAKE_MODULE_PATH=%s' % join_path(
- prefix.share, 'KrellInstitute', 'cmake')])
-
- # Add in the standard cmake arguments
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the standard cmake arguments to what we want the build
- # type, etc to be
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- # Invoke cmake
- cmake('..', *cmakeOptions)
+ compile_flags = "-O2 -g"
- make("clean")
- make()
- make("install")
+ if '+runtime' in spec:
+ # Install message tag include file for use in Intel MIC
+ # cbtf-krell build
+ # FIXME
+ cmake_args = [
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DRUNTIME_ONLY=TRUE',
+ '-DBoost_NO_SYSTEM_PATHS=TRUE',
+ '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DCMAKE_MODULE_PATH=%s' % join_path(
+ prefix.share, 'KrellInstitute', 'cmake')]
+ else:
+ cmake_args = [
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DBoost_NO_SYSTEM_PATHS=TRUE',
+ '-DXERCESC_DIR=%s' % spec['xerces-c'].prefix,
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix,
+ '-DCMAKE_MODULE_PATH=%s' % join_path(
+ prefix.share, 'KrellInstitute', 'cmake')]
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/ccache/package.py b/var/spack/repos/builtin/packages/ccache/package.py
index 69b590629e..44b45fbea9 100644
--- a/var/spack/repos/builtin/packages/ccache/package.py
+++ b/var/spack/repos/builtin/packages/ccache/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,12 +31,13 @@ class Ccache(AutotoolsPackage):
again."""
homepage = "https://ccache.samba.org/"
- url = "https://www.samba.org/ftp/ccache/ccache-3.3.3.tar.gz"
+ url = "https://www.samba.org/ftp/ccache/ccache-3.3.4.tar.gz"
+ version('3.3.4', '61326f1edac7cd211a7018458dfe2d86')
version('3.3.3', 'ea1f95303749b9ac136c617d1b333eef')
version('3.3.2', 'b966d56603e1fad2bac22930e5f01830')
version('3.3.1', '7102ef024cff09d353b3f4c48379b40b')
- version('3.3' , 'b7ac8fdd556f93831618483325fbb1ef')
+ version('3.3', 'b7ac8fdd556f93831618483325fbb1ef')
version('3.2.9', '8f3f6e15e75a0e6020166927d41bd0b3')
depends_on('gperf')
diff --git a/var/spack/repos/builtin/packages/cctools/package.py b/var/spack/repos/builtin/packages/cctools/package.py
new file mode 100644
index 0000000000..997a6ba6df
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cctools/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cctools(AutotoolsPackage):
+ """The Cooperative Computing Tools (cctools) enable large scale
+ distributed computations to harness hundreds to thousands of
+ machines from clusters, clouds, and grids.
+ """
+
+ homepage = "https://github.com/cooperative-computing-lab/cctools"
+ url = "https://github.com/cooperative-computing-lab/cctools/archive/release/6.1.1.tar.gz"
+
+ version('6.1.1', '9b43cdb3aceebddc1608c77184590619')
+
+ depends_on('openssl')
+ depends_on('perl+shared', type=('build', 'run'))
+ depends_on('python@:3', type=('build', 'run'))
+ depends_on('readline')
+ depends_on('swig')
+ # depends_on('xrootd')
+ depends_on('zlib')
+
+ # Generally SYS_foo is defined to __NR_foo (sys/syscall.h) which
+ # is then defined to a syscall number (asm/unistd_64.h). Certain
+ # CentOS systems have SYS_memfd_create defined to
+ # __NR_memfd_create but are missing the second definition.
+ # This is a belt and suspenders solution to the problem.
+ def patch(self):
+ before = '#if defined(__linux__) && defined(SYS_memfd_create)'
+ after = '#if defined(__linux__) && defined(SYS_memfd_create) && defined(__NR_memfd_create)' # noqa: E501
+ f = 'dttools/src/memfdexe.c'
+ kwargs = {'ignore_absent': False, 'backup': True, 'string': True}
+ filter_file(before, after, f, **kwargs)
+
+ def configure_args(self):
+ args = []
+ # disable these bits
+ for p in ['mysql', 'python3', 'xrootd']:
+ args.append('--with-{0}-path=no'.format(p))
+ # point these bits at the Spack installations
+ for p in ['openssl', 'perl', 'python', 'readline', 'swig', 'zlib']:
+ args.append('--with-{0}-path={1}'.format(p, self.spec[p].prefix))
+ return args
diff --git a/var/spack/repos/builtin/packages/cdbfasta/package.py b/var/spack/repos/builtin/packages/cdbfasta/package.py
new file mode 100644
index 0000000000..f3aafbe20a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cdbfasta/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cdbfasta(MakefilePackage):
+ """Fast indexing and retrieval of fasta records from flat file databases"""
+
+ homepage = "https://github.com/gpertea/cdbfasta"
+ url = "https://github.com/gpertea/cdbfasta"
+
+ version('2017-03-16', git='https://github.com/gpertea/cdbfasta.git', commit='b3e481fe02dfbc767a3842bcb1b687c60376a5e8')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('cdbfasta', prefix.bin)
+ install('cdbyank', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cdd/package.py b/var/spack/repos/builtin/packages/cdd/package.py
index 4a0a0aefef..cf720577ea 100644
--- a/var/spack/repos/builtin/packages/cdd/package.py
+++ b/var/spack/repos/builtin/packages/cdd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,7 @@ class Cdd(Package):
a general convex polyhedron given by a system of linear
inequalities"""
homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/cdd.html"
- url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-061a.tar.gz"
+ url = "http://www.cs.mcgill.ca/~fukuda/download/cdd/cdd-061a.tar.gz"
version('0.61a', '22c24a7a9349dd7ec0e24531925a02d9')
@@ -42,7 +42,7 @@ class Cdd(Package):
patch("Makefile.spack.patch")
def url_for_version(self, version):
- url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-{0}.tar.gz"
+ url = "http://www.cs.mcgill.ca/~fukuda/download/cdd/cdd-{0}.tar.gz"
return url.format(version.joined)
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py
index ced5f46d1f..360089272e 100644
--- a/var/spack/repos/builtin/packages/cddlib/package.py
+++ b/var/spack/repos/builtin/packages/cddlib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,24 +26,14 @@
from spack import *
-class Cddlib(Package):
+class Cddlib(AutotoolsPackage):
"""The C-library cddlib is a C implementation of the Double Description
Method of Motzkin et al. for generating all vertices (i.e. extreme points)
and extreme rays of a general convex polyhedron in R^d given by a system
of linear inequalities"""
- homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/"
- # This is the original download url. It is currently down [2016-08-23],
- # but should be reinstated or updated once the issue is resolved.
- # url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz"
- url = "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
- def url_for_version(self, version):
- # Since the commit id is part of the version, we can't
- # auto-generate the string, and we need to explicitly list all
- # known versions here. Currently, there is only one version.
- if str(version) == '0.94h':
- return "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
- raise InstallError("Unsupported version %s" % str(version))
+ homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/"
+ url = "ftp://ftp.math.ethz.ch/users/fukudak/cdd/cddlib-094h.tar.gz"
version('0.94h', '1467d270860bbcb26d3ebae424690e7c')
@@ -52,7 +42,6 @@ class Cddlib(Package):
depends_on("gmp")
depends_on("libtool", type="build")
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def url_for_version(self, version):
+ url = "ftp://ftp.math.ethz.ch/users/fukudak/cdd/cddlib-{0}.tar.gz"
+ return url.format(version.joined)
diff --git a/var/spack/repos/builtin/packages/cdhit/package.py b/var/spack/repos/builtin/packages/cdhit/package.py
new file mode 100644
index 0000000000..64f4940606
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cdhit/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cdhit(MakefilePackage):
+ """CD-HIT is a very widely used program for clustering and comparing
+ protein or nucleotide sequences."""
+
+ homepage = "http://cd-hit.org/"
+ url = "https://github.com/weizhongli/cdhit/archive/V4.6.8.tar.gz"
+
+ version('4.6.8', 'bdd73ec0cceab6653aab7b31b57c5a8b')
+
+ variant('openmp', default=True, description='Compile with multi-threading support')
+
+ depends_on('perl', type=('build', 'run'))
+
+ def build(self, spec, prefix):
+ mkdirp(prefix.bin)
+ if '~openmp' in spec:
+ make('openmp=no')
+ else:
+ make()
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('PREFIX', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cdo/package.py b/var/spack/repos/builtin/packages/cdo/package.py
index 775dc31cf3..ccf0769ff1 100644
--- a/var/spack/repos/builtin/packages/cdo/package.py
+++ b/var/spack/repos/builtin/packages/cdo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,93 +25,116 @@
from spack import *
-class Cdo(Package):
+class Cdo(AutotoolsPackage):
"""CDO is a collection of command line Operators to manipulate and analyse
- Climate and NWP model Data. """
+ Climate and NWP model Data.
+ """
- homepage = "https://code.zmaw.de/projects/cdo"
+ homepage = 'https://code.mpimet.mpg.de/projects/cdo'
+ url = 'https://code.mpimet.mpg.de/attachments/download/12760/cdo-1.7.2.tar.gz'
+ list_url = 'https://code.mpimet.mpg.de/projects/cdo/files'
- version('1.7.2', 'f08e4ce8739a4f2b63fc81a24db3ee31', url='https://code.zmaw.de/attachments/download/12760/cdo-1.7.2.tar.gz')
- version('1.6.9', 'bf0997bf20e812f35e10188a930e24e2', url='https://code.zmaw.de/attachments/download/10198/cdo-1.6.9.tar.gz')
+ version('1.9.1', 'e60a89f268ba24cee5c461f2c217829e')
+ version('1.9.0', '2d88561b3b4a880df0422a62e5027e40')
+ version('1.8.2', '6a2e2f99b7c67ee9a512c40a8d4a7121')
+ version('1.7.2', 'f08e4ce8739a4f2b63fc81a24db3ee31')
- variant('szip', default=True, description='Enable szip compression for GRIB1')
- variant('hdf5', default=False, description='Enable HDF5 support')
variant('netcdf', default=True, description='Enable NetCDF support')
+ variant('grib2', default='eccodes', values=('eccodes', 'grib-api', 'none'),
+ description='Specify GRIB2 backend')
+ variant('external-grib1', default=False,
+ description='Ignore the built-in support and use the external '
+ 'GRIB2 backend for GRIB1 files')
+ variant('szip', default=True,
+ description='Enable szip compression for GRIB1')
+ variant('hdf5', default=True, description='Enable HDF5 support')
+
variant('udunits2', default=True, description='Enable UDUNITS2 support')
- variant('grib', default=True, description='Enable GRIB_API support')
variant('libxml2', default=True, description='Enable libxml2 support')
- variant('proj', default=True, description='Enable PROJ library for cartographic projections')
- variant('curl', default=True, description='Enable curl support')
- variant('fftw', default=True, description='Enable support for fftw3')
- variant('magics', default=True, description='Enable Magics library support')
+ variant('proj', default=True,
+ description='Enable PROJ library for cartographic projections')
+ variant('curl', default=False, description='Enable curl support')
+ variant('fftw3', default=True, description='Enable support for fftw3')
+ variant('magics', default=False,
+ description='Enable Magics library support')
+ variant('openmp', default=True, description='Enable OpenMP support')
- depends_on('szip', when='+szip')
depends_on('netcdf', when='+netcdf')
+ # In this case CDO does not depend on hdf5 directly but we need the backend
+ # of netcdf to be thread safe.
+ depends_on('hdf5+threadsafe', when='+netcdf')
+
+ depends_on('grib-api', when='grib2=grib-api')
+ depends_on('eccodes', when='grib2=eccodes')
+
+ depends_on('szip', when='+szip')
+
depends_on('hdf5+threadsafe', when='+hdf5')
+
depends_on('udunits2', when='+udunits2')
- depends_on('grib-api', when='+grib')
depends_on('libxml2', when='+libxml2')
depends_on('proj', when='+proj')
depends_on('curl', when='+curl')
- depends_on('fftw', when='+fftw')
- depends_on('magics', when='+magics')
+ depends_on('fftw@3:', when='+fftw3')
+ depends_on('magics', when='+magics')
+ depends_on('libuuid')
- def install(self, spec, prefix):
- config_args = ["--prefix=" + prefix,
- "--enable-shared",
- "--enable-static"]
+ conflicts('grib2=eccodes', when='@:1.8',
+ msg='Eccodes is supported starting version 1.9.0')
+ conflicts('+szip', when='+external-grib1 grib2=none',
+ msg='The configuration does not support GRIB1')
- if '+szip' in spec:
- config_args.append('--with-szlib=' + spec['szip'].prefix)
- else:
- config_args.append('--without-szlib')
+ def configure_args(self):
+ config_args = self.with_or_without('netcdf', activation_value='prefix')
- if '+hdf5' in spec:
- config_args.append('--with-hdf5=' + spec['hdf5'].prefix)
+ if self.spec.variants['grib2'].value == 'eccodes':
+ config_args.append('--with-eccodes=' +
+ self.spec['eccodes'].prefix)
+ config_args.append('--without-grib_api')
+ elif self.spec.variants['grib2'].value == 'grib-api':
+ config_args.append('--with-grib_api=' +
+ self.spec['grib-api'].prefix)
+ if self.spec.satisfies('@1.9:'):
+ config_args.append('--without-eccodes')
else:
- config_args.append('--without-hdf5')
+ config_args.append('--without-grib_api')
+ if self.spec.satisfies('@1.9:'):
+ config_args.append('--without-eccodes')
- if '+netcdf' in spec:
- config_args.append('--with-netcdf=' + spec['netcdf'].prefix)
+ if '+external-grib1' in self.spec:
+ config_args.append('--disable-cgribex')
else:
- config_args.append('--without-netcdf')
+ config_args.append('--enable-cgribex')
- if '+udunits2' in spec:
- config_args.append('--with-udunits2=' + spec['udunits2'].prefix)
+ if '+szip' in self.spec:
+ config_args.append('--with-szlib=' + self.spec['szip'].prefix)
else:
- config_args.append('--without-udunits2')
+ config_args.append('--without-szlib')
- if '+grib' in spec:
- config_args.append('--with-grib_api=' + spec['grib-api'].prefix)
- else:
- config_args.append('--without-grib_api')
+ config_args += self.with_or_without('hdf5',
+ activation_value='prefix')
- if '+libxml2' in spec:
- config_args.append('--with-libxml2=' + spec['libxml2'].prefix)
- else:
- config_args.append('--without-libxml2')
+ config_args += self.with_or_without('udunits2',
+ activation_value='prefix')
- if '+proj' in spec:
- config_args.append('--with-proj=' + spec['proj'].prefix)
- else:
- config_args.append('--without-proj')
+ config_args += self.with_or_without('libxml2',
+ activation_value='prefix')
- if '+curl' in spec:
- config_args.append('--with-curl=' + spec['curl'].prefix)
- else:
- config_args.append('--without-curl')
+ config_args += self.with_or_without('proj',
+ activation_value='prefix')
- if '+fftw' in spec:
- config_args.append('--with-fftw3')
- else:
- config_args.append('--without-fftw3')
+ config_args += self.with_or_without('curl',
+ activation_value='prefix')
- if '+magics' in spec:
- config_args.append('--with-magics=' + spec['magics'].prefix)
- else:
- config_args.append('--without-magics')
+ config_args += self.with_or_without('magics',
+ activation_value='prefix')
+
+ config_args += self.with_or_without('fftw3')
+
+ config_args += self.enable_or_disable('openmp')
- configure(*config_args)
+ # Workaround for a problem in CDO
+ if self.spec.satisfies('@1.9:+hdf5^hdf5+mpi'):
+ config_args.append('CXX=' + self.spec['mpi'].mpicxx)
- make()
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/cereal/Boost.patch b/var/spack/repos/builtin/packages/cereal/Boost.patch
new file mode 100644
index 0000000000..fdc2a72208
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cereal/Boost.patch
@@ -0,0 +1,14 @@
+--- old/sandbox/CMakeLists.txt
++++ new/sandbox/CMakeLists.txt
+@@ -4,9 +4,11 @@
+ add_executable(sandbox_json sandbox_json.cpp)
+ add_executable(sandbox_rtti sandbox_rtti.cpp)
+
++if(Boost_FOUND)
+ add_executable(sandbox_vs sandbox_vs.cpp)
+ target_link_libraries(sandbox_vs sandbox_vs_dll)
+ include_directories(sandbox_shared_lib)
++endif(Boost_FOUND)
+
+ if(Boost_FOUND)
+ add_executable(performance performance.cpp)
diff --git a/var/spack/repos/builtin/packages/cereal/Boost2.patch b/var/spack/repos/builtin/packages/cereal/Boost2.patch
new file mode 100644
index 0000000000..f8edb2c479
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cereal/Boost2.patch
@@ -0,0 +1,10 @@
+--- old/unittests/CMakeLists.txt
++++ new/unittests/CMakeLists.txt
+@@ -1,4 +1,7 @@
+ file(GLOB TESTS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp)
++if(NOT Boost_FOUND)
++ list(REMOVE_ITEM TESTS boost_variant.cpp)
++endif(Boost_FOUND)
+
+ # A semi-colon separated list of test sources that should not be automatically built with doctest
+ set(SPECIAL_TESTS "portability_test.cpp")
diff --git a/var/spack/repos/builtin/packages/cereal/package.py b/var/spack/repos/builtin/packages/cereal/package.py
index 0ce6ec593c..637257053e 100644
--- a/var/spack/repos/builtin/packages/cereal/package.py
+++ b/var/spack/repos/builtin/packages/cereal/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,11 +23,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-import shutil
-class Cereal(Package):
+class Cereal(CMakePackage):
"""cereal is a header-only C++11 serialization library. cereal takes
arbitrary data types and reversibly turns them into different
representations, such as compact binary encodings, XML, or
@@ -39,6 +37,7 @@ class Cereal(Package):
homepage = "http://uscilab.github.io/cereal/"
url = "https://github.com/USCiLab/cereal/archive/v1.1.2.tar.gz"
+ version('1.2.2', '4c56c7b9499dba79404250ef9a040481')
version('1.2.1', '64476ed74c19068ee543b53ad3992261')
version('1.2.0', 'e372c9814696481dbdb7d500e1410d2b')
version('1.1.2', '34d4ad174acbff005c36d4d10e48cbb9')
@@ -47,26 +46,17 @@ class Cereal(Package):
version('1.0.0', 'd1bacca70a95cec0ddbff68b0871296b')
version('0.9.1', '8872d4444ff274ce6cd1ed364d0fc0ad')
- patch("Werror.patch")
+ patch("Boost.patch")
+ patch("Boost2.patch", when="@1.2.2:")
+ patch("pointers.patch")
depends_on('cmake@2.6.2:', type='build')
- def install(self, spec, prefix):
- # Don't use -Werror
- filter_file(r'-Werror', '', 'CMakeLists.txt')
-
- # configure
+ def cmake_args(self):
# Boost is only used for self-tests, which we are not running (yet?)
- cmake('.', '-DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE', *std_cmake_args)
-
- # Build
- make()
-
- # Install
- shutil.rmtree(join_path(prefix, 'doc'), ignore_errors=True)
- shutil.rmtree(join_path(prefix, 'include'), ignore_errors=True)
- shutil.rmtree(join_path(prefix, 'lib'), ignore_errors=True)
- shutil.copytree('doc', join_path(prefix, 'doc'), symlinks=True)
- shutil.copytree('include', join_path(prefix, 'include'), symlinks=True)
- # Create empty directory to avoid linker warnings later
- os.mkdir(join_path(prefix, 'lib'))
+ return [
+ '-DCMAKE_DISABLE_FIND_PACKAGE_Boost=TRUE',
+ '-DSKIP_PORTABILITY_TEST=TRUE',
+ '-DJUST_INSTALL_CEREAL=On',
+ '-DWITH_WERROR=Off',
+ ]
diff --git a/var/spack/repos/builtin/packages/cereal/Werror.patch b/var/spack/repos/builtin/packages/cereal/pointers.patch
index d39eaaffdb..39d17a2d54 100644
--- a/var/spack/repos/builtin/packages/cereal/Werror.patch
+++ b/var/spack/repos/builtin/packages/cereal/pointers.patch
@@ -1,17 +1,3 @@
---- old/sandbox/CMakeLists.txt
-+++ new/sandbox/CMakeLists.txt
-@@ -4,9 +4,11 @@
- add_executable(sandbox_json sandbox_json.cpp)
- add_executable(sandbox_rtti sandbox_rtti.cpp)
-
-+if(Boost_FOUND)
- add_executable(sandbox_vs sandbox_vs.cpp)
- target_link_libraries(sandbox_vs sandbox_vs_dll)
- include_directories(sandbox_shared_lib)
-+endif(Boost_FOUND)
-
- if(Boost_FOUND)
- add_executable(performance performance.cpp)
--- old/include/cereal/types/common.hpp
+++ new/include/cereal/types/common.hpp
@@ -106,14 +106,16 @@
diff --git a/var/spack/repos/builtin/packages/cfitsio/package.py b/var/spack/repos/builtin/packages/cfitsio/package.py
index 79af31ae21..49d71cdcab 100644
--- a/var/spack/repos/builtin/packages/cfitsio/package.py
+++ b/var/spack/repos/builtin/packages/cfitsio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,39 @@
from spack import *
-class Cfitsio(Package):
+class Cfitsio(AutotoolsPackage):
"""CFITSIO is a library of C and Fortran subroutines for reading and writing
data files in FITS (Flexible Image Transport System) data format.
"""
homepage = 'http://heasarc.gsfc.nasa.gov/fitsio/'
+ url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio3410.tar.gz'
+ version('3.410', '8a4a66fcdd816aae41768baa0b025552')
version('3.370', 'abebd2d02ba5b0503c633581e3bfa116')
+ variant('bzip2', default=True, description='Enable bzip2 support')
+ variant('shared', default=True, description='Build shared libraries')
+
+ depends_on('bzip2', when='+bzip2')
+
def url_for_version(self, version):
- url = 'ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio{0}.tar.gz'
+ url = 'http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/cfitsio{0}.tar.gz'
return url.format(version.joined)
- def install(self, spec, prefix):
- configure('--prefix=' + prefix)
- make()
- make('install')
+ def configure_args(self):
+ spec = self.spec
+ extra_args = []
+ if '+bzip2' in spec:
+ extra_args.append('--with-bzip2=%s' % spec['bzip2'].prefix),
+ return extra_args
+
+ @property
+ def build_targets(self):
+ targets = ['all']
+
+ # Build shared if variant is set.
+ if '+shared' in self.spec:
+ targets += ['shared']
+
+ return targets
diff --git a/var/spack/repos/builtin/packages/cgal/package.py b/var/spack/repos/builtin/packages/cgal/package.py
index a16572246b..8961ee48bc 100644
--- a/var/spack/repos/builtin/packages/cgal/package.py
+++ b/var/spack/repos/builtin/packages/cgal/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Cgal(Package):
+class Cgal(CMakePackage):
"""The Computational Geometry Algorithms Library (CGAL) is a C++ library
that aims to provide easy access to efficient and reliable algorithms in
computational geometry. CGAL is used in various areas needing geometric
@@ -35,14 +35,16 @@ class Cgal(Package):
homepage = 'http://www.cgal.org/'
url = 'https://github.com/CGAL/cgal/archive/releases/CGAL-4.7.tar.gz'
+ version('4.9.1', 'df6517df3320bf6c9de2e1b0361738b9')
version('4.9', '7b628db3e5614347f776c046b7666089')
version('4.7', '4826714810f3b4c65cac96b90fb03b67')
version('4.6.3', 'e8ee2ecc8d2b09b94a121c09257b576d')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
# ---- See "7 CGAL Libraries" at:
# http://doc.cgal.org/latest/Manual/installation.html
@@ -57,6 +59,8 @@ class Cgal(Package):
variant('demos', default=False,
description='Build CGAL demos')
+ depends_on('cmake@2.8.11:', type='build')
+
# Essential Third Party Libraries
depends_on('boost+thread+system')
depends_on('gmp')
@@ -81,18 +85,12 @@ class Cgal(Package):
# depends_on('esbtl')
# depends_on('intel-tbb')
- # Build dependencies
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
+ def cmake_args(self):
# Installation instructions:
# http://doc.cgal.org/latest/Manual/installation.html
+ spec = self.spec
- options = std_cmake_args + [
- # CGAL supports only Release and Debug build type. Any
- # other build type will raise an error at configure time
- '-DCMAKE_BUILD_TYPE:STRING=%s' %
- ('Debug' if '+debug' in spec else 'Release'),
+ return [
'-DBUILD_SHARED_LIBS:BOOL=%s' %
('ON' if '+shared' in spec else 'OFF'),
'-DWITH_CGAL_Core:BOOL=%s' %
@@ -100,9 +98,5 @@ class Cgal(Package):
'-DWITH_CGAL_ImageIO:BOOL=%s' %
('YES' if '+imageio' in spec else 'NO'),
'-DWITH_CGAL_Qt5:BOOL=%s' %
- ('YES' if '+demos' in spec else 'NO')]
-
- with working_dir('spack-build', create=True):
- cmake('..', *options)
- make()
- make('install')
+ ('YES' if '+demos' in spec else 'NO'),
+ ]
diff --git a/var/spack/repos/builtin/packages/cgm/package.py b/var/spack/repos/builtin/packages/cgm/package.py
index 5a998d471c..8f2fa13f9a 100644
--- a/var/spack/repos/builtin/packages/cgm/package.py
+++ b/var/spack/repos/builtin/packages/cgm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,30 +25,48 @@
from spack import *
-class Cgm(Package):
+class Cgm(AutotoolsPackage):
"""The Common Geometry Module, Argonne (CGMA) is a code library
which provides geometry functionality used for mesh generation and
other applications."""
- homepage = "http://trac.mcs.anl.gov/projects/ITAPS/wiki/CGM"
- url = "http://ftp.mcs.anl.gov/pub/fathom/cgm13.1.1.tar.gz"
+ homepage = "http://sigma.mcs.anl.gov/cgm-library"
+ url = "http://ftp.mcs.anl.gov/pub/fathom/cgm-16.0.tar.gz"
+ version('16.0', 'a68aa5954d82502ff75d5eb91a29a01c')
version('13.1.1', '4e8dbc4ba8f65767b29f985f7a23b01f')
version('13.1.0', 'a6c7b22660f164ce893fb974f9cb2028')
version('13.1', '95f724bda04919fc76818a5b7bc0b4ed')
- depends_on("mpi")
+ variant("mpi", default=True, description='enable mpi support')
+ variant("oce", default=False, description='enable oce geometry kernel')
+ variant("debug", default=False, description='enable debug symbols')
+ variant("shared", default=False, description='enable shared builds')
- def patch(self):
- filter_file('^(#include "CGMParallelConventions.h")',
- '//\1',
- 'geom/parallel/CGMReadParallel.cpp')
+ depends_on('mpi', when='+mpi')
+ depends_on('oce+X11', when='+oce')
- def install(self, spec, prefix):
- configure("--with-mpi",
- "--prefix=%s" % prefix,
- "CFLAGS=-static",
- "CXXFLAGS=-static",
- "FCFLAGS=-static")
+ def configure_args(self):
+ spec = self.spec
+ args = []
- make()
- make("install")
+ if '+mpi' in spec:
+ args.extend([
+ "--with-mpi",
+ "CC={0}".format(spec['mpi'].mpicc),
+ "CXX={0}".format(spec['mpi'].mpicxx)
+ ])
+ else:
+ args.append("--without-mpi")
+
+ if '+oce' in spec:
+ args.append("--with-occ={0}".format(spec['oce'].prefix))
+ else:
+ args.append("--without-occ")
+
+ if '+debug' in spec:
+ args.append("--enable-debug")
+
+ if '+shared' in spec:
+ args.append("--enable-shared")
+
+ return args
diff --git a/var/spack/repos/builtin/packages/cgns/package.py b/var/spack/repos/builtin/packages/cgns/package.py
index ba3fd7f821..c9d46dc8e9 100644
--- a/var/spack/repos/builtin/packages/cgns/package.py
+++ b/var/spack/repos/builtin/packages/cgns/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Cgns(Package):
+class Cgns(CMakePackage):
"""The CFD General Notation System (CGNS) provides a general, portable,
and extensible standard for the storage and retrieval of computational
fluid dynamics (CFD) analysis data."""
@@ -37,11 +37,14 @@ class Cgns(Package):
variant('hdf5', default=True, description='Enable HDF5 interface')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8:', type='build')
depends_on('hdf5', when='+hdf5')
- def install(self, spec, prefix):
- cmake_args = std_cmake_args[:]
+ parallel = False
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
if self.compiler.f77 and self.compiler.fc:
cmake_args.append('-DCGNS_ENABLE_FORTRAN=ON')
@@ -51,23 +54,10 @@ class Cgns(Package):
if '+hdf5' in spec:
cmake_args.extend([
'-DCGNS_ENABLE_HDF5=ON',
- '-DHDF5_NEEDS_ZLIB=ON'
+ '-DHDF5_DIR=%s' % spec['hdf5'].prefix
])
- if spec.satisfies('^hdf5+mpi'):
- cmake_args.append('-DHDF5_NEEDS_MPI=ON')
- else:
- cmake_args.append('-DHDF5_NEEDS_MPI=OFF')
-
- if spec.satisfies('^hdf5+szip'):
- cmake_args.append('-DHDF5_NEEDS_SZIP=ON')
- else:
- cmake_args.append('-DHDF5_NEEDS_SZIP=OFF')
else:
cmake_args.append('-DCGNS_ENABLE_HDF5=OFF')
- with working_dir('spack-build', create=True):
- cmake('..', *cmake_args)
-
- make()
- make('install')
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/charm/package.py b/var/spack/repos/builtin/packages/charm/package.py
index 7072e37cd3..b5568920d9 100644
--- a/var/spack/repos/builtin/packages/charm/package.py
+++ b/var/spack/repos/builtin/packages/charm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -53,16 +53,12 @@ class Charm(Package):
# Communication mechanisms (choose exactly one)
# TODO: Support Blue Gene/Q PAMI, Cray GNI, Cray shmem, CUDA
- variant("mpi", default=True,
- description="Use MPI as communication mechanism")
- variant("multicore", default=False,
- description="Disable inter-node communication")
- variant("net", default=False,
- description="Use net communication mechanism")
- variant("netlrts", default=True,
- description="Use netlrts communication mechanism")
- variant("verbs", default=False,
- description="Use Infiniband as communication mechanism")
+ variant(
+ 'backend',
+ default='mpi',
+ values=('mpi', 'multicore', 'net', 'netlrts', 'verbs'),
+ description='Set the backend to use'
+ )
# Other options
# Something is off with PAPI -- there are build errors. Maybe
@@ -73,37 +69,17 @@ class Charm(Package):
"Enable SMP parallelism (does not work with +multicore)"))
variant("tcp", default=False,
description="Use TCP as transport mechanism (requires +net)")
+ variant("shared", default=True, description="Enable shared link support")
# Note: We could add variants for AMPI, LIBS, bigemulator, msa, Tau
- # Note: We could support shared libraries
- depends_on("mpi", when="+mpi")
+ depends_on('mpi', when='backend=mpi')
depends_on("papi", when="+papi")
def install(self, spec, prefix):
target = "charm++"
- # Note: Turn this into a multi-valued variant, once these
- # exist in Spack
- if sum(["+mpi" in spec,
- "+multicore" in spec,
- "+net" in spec,
- "+netlrts" in spec,
- "+verbs" in spec]) != 1:
- raise InstallError(
- "Exactly one communication mechanism "
- "(+mpi, +multicore, +net, +netlrts, or +verbs) "
- "must be enabled")
- if "+mpi" in spec:
- comm = "mpi"
- if "+multicore" in spec:
- comm = "multicore"
- if "+net" in spec:
- comm = "net"
- if "+netlrts" in spec:
- comm = "netlrts"
- if "+verbs" in spec:
- comm = "verbs"
+ comm = spec.variants['backend'].value
plat = sys.platform
if plat.startswith("linux"):
@@ -139,30 +115,46 @@ class Charm(Package):
# We assume that Spack's compiler wrappers make this work. If
# not, then we need to query the compiler vendor from Spack
# here.
- compiler = "gcc"
-
- options = [compiler,
- "--with-production", # Note: turn this into a variant
- "-j%d" % make_jobs,
- "--destination=%s" % prefix]
- if "+mpi" in spec:
- options.append("--basedir=%s" % spec["mpi"].prefix)
+ compiler = os.path.basename(self.compiler.cc)
+
+ options = [compiler]
+ if compiler == 'icc':
+ options.append('ifort')
+
+ options.extend([
+ "--with-production", # Note: turn this into a variant
+ "-j%d" % make_jobs,
+ "--destination=%s" % prefix])
+
+ if 'backend=mpi' in spec:
+ # in intelmpi <prefix>/include and <prefix>/lib fails so --basedir
+ # cannot be used
+ options.extend([
+ '--incdir={0}'.format(incdir)
+ for incdir in spec["mpi"].headers.directories
+ ])
+ options.extend([
+ '--libdir={0}'.format(libdir)
+ for libdir in spec["mpi"].libs.directories
+ ])
if "+papi" in spec:
options.extend(["papi", "--basedir=%s" % spec["papi"].prefix])
if "+smp" in spec:
- if "+multicore" in spec:
+ if 'backend=multicore' in spec:
# This is a Charm++ limitation; it would lead to a
# build error
raise InstallError("Cannot combine +smp with +multicore")
options.append("smp")
if "+tcp" in spec:
- if "+net" not in spec:
+ if 'backend=net' not in spec:
# This is a Charm++ limitation; it would lead to a
# build error
raise InstallError(
"The +tcp variant requires "
- "the +net communication mechanism")
+ "the backend=net communication mechanism")
options.append("tcp")
+ if "+shared" in spec:
+ options.append("--build-shared")
# Call "make" via the build script
# Note: This builds Charm++ in the "tmp" subdirectory of the
@@ -185,6 +177,6 @@ class Charm(Package):
shutil.copy2(filepath, tmppath)
os.remove(filepath)
os.rename(tmppath, filepath)
- except:
+ except (IOError, OSError):
pass
shutil.rmtree(join_path(prefix, "tmp"))
diff --git a/var/spack/repos/builtin/packages/check/package.py b/var/spack/repos/builtin/packages/check/package.py
new file mode 100644
index 0000000000..c87a982fa5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/check/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Check(AutotoolsPackage):
+ """Check is a unit testing framework for C. It features a simple interface
+ for defining unit tests, putting little in the way of the developer. Tests
+ are run in a separate address space, so both assertion failures and code
+ errors that cause segmentation faults or other signals can be caught. Test
+ results are reportable in the following: Subunit, TAP, XML, and a generic
+ logging format."""
+
+ homepage = "https://libcheck.github.io/check/index.html"
+ url = "https://downloads.sourceforge.net/project/check/check/0.10.0/check-0.10.0.tar.gz"
+
+ version('0.10.0', '53c5e5c77d090e103a17f3ed7fd7d8b8')
diff --git a/var/spack/repos/builtin/packages/chlorop/chlorop.patch b/var/spack/repos/builtin/packages/chlorop/chlorop.patch
new file mode 100644
index 0000000000..6d49dc53d0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/chlorop/chlorop.patch
@@ -0,0 +1,36 @@
+--- a/chlorop 2006-03-20 06:24:22.000000000 -0600
++++ b/chlorop 2017-07-24 10:51:27.000366706 -0500
+@@ -9,8 +9,6 @@
+ STARTDIR=`pwd`
+
+ ### GENERAL SETTINGS, CUSTOMIZE +++++++++++++++++++++++++++++++++++++++++++++++
+-# Substitute your chosen location for ChloroP software:
+-CHLOROP=/usr/cbs/packages/chlorop/currdist/chlorop-1.1
+
+ # Substitute paste:
+ PASTE=paste
+@@ -43,7 +41,7 @@
+ # other settings:
+ #CHLOROTMPNAME=res`date '+%y%m%d%H%M%S'`.$$
+ CHLOROTMPNAME=res.$$
+-CHLOROTMP=tmp/$CHLOROTMPNAME
++CHLOROTMP=$CHLOROTMP/$CHLOROTMPNAME
+ SCRIPTS=bin
+ SYN=syn
+ ETC=etc
+@@ -80,12 +78,12 @@
+ ### get the infile ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ INFILE=$*
+
+-mkdir $CHLOROP/$CHLOROTMP || { echo Cannot create temporary directory; exit 1; }
++mkdir -p $CHLOROTMP || { echo Cannot create temporary directory; exit 1; }
+
+ ### prepare input file in HOW and fasta format ++++++++++++++++++++++++++++++++
+ $AWK -f $CHLOROP/$SCRIPTS/in2how+fasta.awk -v informat=$INFORMAT \
+- -v howout=$CHLOROP/$CHLOROTMP/infile.how \
+- -v fastaout=$CHLOROP/$CHLOROTMP/infile.fasta $INFILE
++ -v howout=$CHLOROTMP/infile.how \
++ -v fastaout=$CHLOROTMP/infile.fasta $INFILE
+ INFILE=$CHLOROTMP/infile.how
+
+ ### change to working directory +++++++++++++++++++++++++++++++++++++++++++++++
diff --git a/var/spack/repos/builtin/packages/chlorop/package.py b/var/spack/repos/builtin/packages/chlorop/package.py
new file mode 100644
index 0000000000..2bccd6d951
--- /dev/null
+++ b/var/spack/repos/builtin/packages/chlorop/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import distutils.dir_util
+import os
+
+
+class Chlorop(Package):
+ """Chlorop predicts the presence of chloroplast transit peptides
+ in protein sequences and the location of potential cTP cleavage
+ sites. You will need to obtain the tarball by visiting the
+ URL and completing the form. You can then either run spack
+ install with the tarball in the directory, or add it to a
+ mirror. You will need to set the CHLOROTMP environment variable
+ to the full path of the directory you want chlorop to use as
+ a temporary directory."""
+
+ homepage = "http://www.cbs.dtu.dk/services/ChloroP/"
+ url = "file://{0}/chlorop-1.1.Linux.tar.gz".format(os.getcwd())
+
+ version('1.1', 'eb0ba6b28dfa735163ad5fc70e30139e46e33f6ae27f87666a7167a4ac5f71d9')
+
+ depends_on('awk', type='run')
+ patch('chlorop.patch')
+
+ def install(self, spec, prefix):
+ os.rename('chlorop', 'bin/chlorop')
+ distutils.dir_util.copy_tree(".", prefix)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('CHLOROP', self.prefix)
diff --git a/var/spack/repos/builtin/packages/chombo/Make.defs.local.template.patch b/var/spack/repos/builtin/packages/chombo/Make.defs.local.template.patch
new file mode 100644
index 0000000000..cc72659445
--- /dev/null
+++ b/var/spack/repos/builtin/packages/chombo/Make.defs.local.template.patch
@@ -0,0 +1,23 @@
+*** lib/mk/Make.defs.local.template 2017-05-02 16:00:16.000000000 -0700
+--- lib/mk/Make.defs.local.template.patched 2017-05-02 18:50:36.000000000 -0700
+***************
+*** 129,135 ****
+--- 129,137 ----
+ #HDFMPILIBFLAGS= -L<hdf_parallel_dir>/lib -lhdf5 -lz
+ #USE_MF =
+ #USE_MT =
++ #USE_LAPACK =
+ #USE_SETVAL =
++ #USE_TIMER =
+ #CH_AR =
+ #CH_CPP =
+ #DOXYGEN =
+***************
+*** 151,155 ****
+--- 153,158 ----
+ #ldoptflags =
+ #ldprofflags =
+ #syslibflags =
++ #lapackincflags =
+
+ #end -- dont change this line
diff --git a/var/spack/repos/builtin/packages/chombo/hdf5-16api.patch b/var/spack/repos/builtin/packages/chombo/hdf5-16api.patch
new file mode 100644
index 0000000000..6525061886
--- /dev/null
+++ b/var/spack/repos/builtin/packages/chombo/hdf5-16api.patch
@@ -0,0 +1,12 @@
+*** lib/src/BoxTools/HDF5Portable.H 2017-05-02 13:57:57.000000000 -0700
+--- lib/src/BoxTools/HDF5Portable.H.patched 2017-05-02 13:55:30.000000000 -0700
+***************
+*** 15,20 ****
+--- 15,21 ----
+ extern "C"
+ {
+ #ifdef CH_USE_HDF5
++ #define H5_USE_16_API
+ #include <hdf5.h>
+ #else
+ typedef long hid_t;
diff --git a/var/spack/repos/builtin/packages/chombo/package.py b/var/spack/repos/builtin/packages/chombo/package.py
new file mode 100644
index 0000000000..8dd5155199
--- /dev/null
+++ b/var/spack/repos/builtin/packages/chombo/package.py
@@ -0,0 +1,140 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from shutil import copyfile
+import glob
+
+
+class Chombo(MakefilePackage):
+ """The Chombo package provides a set of tools for implementing finite
+ difference and finite-volume methods for the solution of partial
+ differential equations on block-structured adaptively refined
+ logically rectangular (i.e. Cartesian) grids."""
+
+ homepage = "https://commons.lbl.gov/display/chombo"
+ url = "http://bitbucket.org/drhansj/chombo-xsdk.git"
+
+ # Use whatever path Brian V. and Terry L. agreed upon, but preserve version
+ version('3.2', git='http://bitbucket.org/drhansj/chombo-xsdk.git', commit='71d856c')
+ version('develop', git='http://bitbucket.org/drhansj/chombo-xsdk.git', tag='master')
+# version('3.2', svn='https://anag-repo.lbl.gov/svn/Chombo/release/3.2')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+ variant('hdf5', default=True, description='Enable HDF5 support')
+ variant('dims',
+ default='3',
+ values=('1', '2', '3', '4', '5', '6'),
+ multi=False,
+ description='Number of PDE dimensions [1-6]'
+ )
+
+ patch('hdf5-16api.patch', when='@3.2', level=0)
+ patch('Make.defs.local.template.patch', when='@3.2', level=0)
+
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('gmake', type='build')
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hdf5+mpi', when='+mpi+hdf5')
+
+ def edit(self, spec, prefix):
+
+ # Set fortran name mangling in Make.defs
+ defs_file = FileFilter('./lib/mk/Make.defs')
+ defs_file.filter('^\s*#\s*cppcallsfort\s*=\s*',
+ 'cppcallsfort = -DCH_FORT_UNDERSCORE')
+
+ # Set remaining variables in Make.defs.local
+ # Make.defs.local.template.patch ensures lines for USE_TIMER,
+ # USE_LAPACK and lapackincflags are present
+ copyfile('./lib/mk/Make.defs.local.template',
+ './lib/mk/Make.defs.local')
+
+ defs_file = FileFilter('./lib/mk/Make.defs.local')
+
+ # Unconditional settings
+ defs_file.filter('^\s*#\s*DEBUG\s*=\s*', 'DEBUG = FALSE')
+ defs_file.filter('^\s*#\s*OPT\s*=\s*', 'OPT = TRUE')
+ defs_file.filter('^\s*#\s*PIC\s*=\s*', 'PIC = TRUE')
+ # timer code frequently fails compiles. So disable it.
+ defs_file.filter('^\s*#\s*USE_TIMER\s*=\s*', 'USE_TIMER = FALSE')
+
+ # LAPACK setup
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
+ defs_file.filter('^\s*#\s*USE_LAPACK\s*=\s*', 'USE_LAPACK = TRUE')
+ defs_file.filter(
+ '^\s*#\s*lapackincflags\s*=\s*',
+ 'lapackincflags = -I%s' % spec['lapack'].prefix.include)
+ defs_file.filter(
+ '^\s*#\s*syslibflags\s*=\s*',
+ 'syslibflags = %s' % lapack_blas.ld_flags)
+
+ # Compilers and Compiler flags
+ defs_file.filter('^\s*#\s*CXX\s*=\s*', 'CXX = %s' % spack_cxx)
+ defs_file.filter('^\s*#\s*FC\s*=\s*', 'FC = %s' % spack_fc)
+ if '+mpi' in spec:
+ defs_file.filter(
+ '^\s*#\s*MPICXX\s*=\s*',
+ 'MPICXX = %s' % self.spec['mpi'].mpicxx)
+
+ # Conditionally determined settings
+ defs_file.filter(
+ '^\s*#\s*MPI\s*=\s*',
+ 'MPI = %s' % ('TRUE' if '+mpi' in spec else 'FALSE'))
+ defs_file.filter(
+ '^\s*#\s*DIM\s*=\s*',
+ 'DIM = %s' % spec.variants['dims'].value)
+
+ # HDF5 settings
+ if '+hdf5' in spec:
+ defs_file.filter('^\s*#\s*USE_HDF5\s*=\s*', 'USE_HDF5 = TRUE')
+ defs_file.filter(
+ '^\s*#\s*HDFINCFLAGS\s*=.*',
+ 'HDFINCFLAGS = -I%s' % spec['hdf5'].prefix.include)
+ defs_file.filter(
+ '^\s*#\s*HDFLIBFLAGS\s*=.*',
+ 'HDFLIBFLAGS = %s' % spec['hdf5'].libs.ld_flags)
+ if '+mpi' in spec:
+ defs_file.filter(
+ '^\s*#\s*HDFMPIINCFLAGS\s*=.*',
+ 'HDFMPIINCFLAGS = -I%s' % spec['hdf5'].prefix.include)
+ defs_file.filter(
+ '^\s*#\s*HDFMPILIBFLAGS\s*=.*',
+ 'HDFMPILIBFLAGS = %s' % spec['hdf5'].libs.ld_flags)
+
+ def build(self, spec, prefix):
+ with working_dir('lib'):
+ gmake('all')
+
+ def install(self, spec, prefix):
+ with working_dir('lib'):
+ install_tree('include', prefix.include)
+ libfiles = glob.glob('lib*.a')
+ libfiles += glob.glob('lib*.so')
+ libfiles += glob.glob('lib*.dylib')
+ mkdirp(prefix.lib)
+ for lib in libfiles:
+ install(lib, prefix.lib)
diff --git a/var/spack/repos/builtin/packages/cityhash/package.py b/var/spack/repos/builtin/packages/cityhash/package.py
index 85d948cc57..67ee8561a3 100644
--- a/var/spack/repos/builtin/packages/cityhash/package.py
+++ b/var/spack/repos/builtin/packages/cityhash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,10 +23,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-from spack.util.environment import *
-class Cityhash(Package):
+class Cityhash(AutotoolsPackage):
"""CityHash, a family of hash functions for strings."""
homepage = "https://github.com/google/cityhash"
@@ -37,8 +36,5 @@ class Cityhash(Package):
version('master', branch='master',
git='https://github.com/google/cityhash.git')
- def install(self, spec, prefix):
- configure('--enable-sse4.2', '--prefix=%s' % prefix)
-
- make()
- make("install")
+ def configure_args(self):
+ return ['--enable-sse4.2']
diff --git a/var/spack/repos/builtin/packages/clamr/package.py b/var/spack/repos/builtin/packages/clamr/package.py
new file mode 100644
index 0000000000..3608c64ca2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/clamr/package.py
@@ -0,0 +1,78 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Clamr(CMakePackage):
+ """The CLAMR code is a cell-based adaptive mesh refinement (AMR)
+ mini-app developed as a testbed for hybrid algorithm development
+ using MPI and OpenCL GPU code.
+ """
+
+ homepage = "https://github.com/lanl/CLAMR"
+ url = "https://github.com/lanl/CLAMR.git"
+ tags = ['proxy-app']
+
+ version('master', git='https://github.com/lanl/CLAMR.git')
+
+ variant(
+ 'graphics', default='opengl',
+ values=('opengl', 'mpe', 'none'),
+ description='Build with specified graphics support')
+ variant(
+ 'precision', default='mixed',
+ values=('single', 'mixed', 'full'),
+ description='single, mixed, or full double precision values')
+
+ depends_on('mpi')
+ depends_on('mpe', when='graphics=mpe')
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
+ if 'graphics=none' in spec:
+ cmake_args.append('-DGRAPHICS_TYPE=None')
+ elif 'graphics=mpe' in spec:
+ cmake_args.append('-DGRAPHICS_TYPE=MPE')
+ else:
+ cmake_args.append('-DGRAPHICS_TYPE=OpenGL')
+
+ if 'precision=full' in spec:
+ cmake_args.append('-DPRECISION_TYPE=full_precision')
+ elif 'precision=single' in spec:
+ cmake_args.append('-DPRECISION_TYPE=minimum_precision')
+ else:
+ cmake_args.append('-DPRECISION_TYPE=mixed_precision')
+
+ # if MIC, then -DMIC_NATIVE=yes
+ return cmake_args
+
+ def install(self, spec, prefix):
+ install('README', prefix)
+ install('LICENSE', prefix)
+ install_tree('docs', join_path(prefix, 'docs'))
+ install_tree('tests', join_path(prefix, 'tests'))
+ with working_dir(self.build_directory):
+ make('install')
diff --git a/var/spack/repos/builtin/packages/cleaveland4/package.py b/var/spack/repos/builtin/packages/cleaveland4/package.py
new file mode 100644
index 0000000000..910ef7cb12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cleaveland4/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cleaveland4(Package):
+ """CleaveLand4: Analysis of degradome data to find sliced miRNA and siRNA
+ targets"""
+
+ homepage = "https://github.com/MikeAxtell/CleaveLand4"
+ url = "https://github.com/MikeAxtell/CleaveLand4/archive/v4.4.tar.gz"
+
+ version('4.4', 'cf62a1de715a612fc8bd5a62364e69db')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('perl-math-cdf', type=('build', 'run'))
+ depends_on('bowtie')
+ depends_on('viennarna')
+ depends_on('r', type=('build', 'run'))
+ depends_on('samtools')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('CleaveLand4.pl', prefix.bin)
+ with working_dir('GSTAr_v1-0'):
+ install('GSTAr.pl', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cleverleaf/package.py b/var/spack/repos/builtin/packages/cleverleaf/package.py
index 3bd1f0b5d0..0e40d3ff4c 100644
--- a/var/spack/repos/builtin/packages/cleverleaf/package.py
+++ b/var/spack/repos/builtin/packages/cleverleaf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Cleverleaf(Package):
+class Cleverleaf(CMakePackage):
"""CleverLeaf is a hydrodynamics mini-app that extends CloverLeaf with
Adaptive Mesh Refinement using the SAMRAI toolkit from Lawrence
Livermore National Laboratory. The primary goal of CleverLeaf is
@@ -40,12 +40,7 @@ class Cleverleaf(Package):
version('develop', git='https://github.com/UK-MAC/CleverLeaf_ref.git',
branch='develop')
- depends_on("samrai@3.8.0:")
- depends_on("hdf5+mpi")
- depends_on("boost")
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake(*std_cmake_args)
- make()
- make("install")
+ depends_on('samrai@3.8.0:')
+ depends_on('hdf5+mpi')
+ depends_on('boost')
+ depends_on('cmake@3.1:', type='build')
diff --git a/var/spack/repos/builtin/packages/clfft/package.py b/var/spack/repos/builtin/packages/clfft/package.py
new file mode 100644
index 0000000000..d626e8964a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/clfft/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Clfft(CMakePackage):
+ """a software library containing FFT functions written in OpenCL"""
+
+ homepage = "https://github.com/clMathLibraries/clFFT"
+ url = "https://github.com/clMathLibraries/clFFT/archive/v2.12.2.tar.gz"
+
+ version('2.12.2', '9104d85f9f2f3c58dd8efc0e4b06496f')
+
+ variant('client', default=True,
+ description='build client and callback client')
+
+ depends_on('opencl@1.2:')
+ depends_on('boost@1.33.0:', when='+client')
+
+ root_cmakelists_dir = 'src'
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DBUILD_CLIENT:BOOL={0}'.format((
+ 'ON' if '+client' in spec else 'OFF')),
+ '-DBUILD_CALLBACK_CLIENT:BOOL={0}'.format((
+ 'ON' if '+client' in spec else 'OFF'))
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/clhep/package.py b/var/spack/repos/builtin/packages/clhep/package.py
index 02a9da9e27..f1f1d2db96 100644
--- a/var/spack/repos/builtin/packages/clhep/package.py
+++ b/var/spack/repos/builtin/packages/clhep/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,13 +26,23 @@
from spack import *
-class Clhep(Package):
+class Clhep(CMakePackage):
"""CLHEP is a C++ Class Library for High Energy Physics. """
homepage = "http://proj-clhep.web.cern.ch/proj-clhep/"
url = "http://proj-clhep.web.cern.ch/proj-clhep/DISTRIBUTION/tarFiles/clhep-2.2.0.5.tgz"
- list_url = "https://proj-clhep.web.cern.ch/proj-clhep/DISTRIBUTION/"
+ list_url = "https://proj-clhep.web.cern.ch/proj-clhep/"
+ list_depth = 1
+ version('2.3.4.4', '8b8a33d0d19213b60d6c22ce5fc93761')
+ version('2.3.4.3', '6941279f70d69492fff1aa955f3f2562')
+ version('2.3.4.2', '1e7a9046c9ad0b347d6812f8031191da')
+ version('2.3.4.1', '5ae85571ff3d8b2c481c3f95ea89b751')
+ version('2.3.4.0', 'dd899d0791a823221927f97edf190348')
+ version('2.3.3.2', '8b9f8d7f4dccec6d058b3a078f66b6a3')
+ version('2.3.3.1', '456ef9d262ef4e776af984bfbe2f48c7')
+ version('2.3.3.0', '3637eaa6750606e589e52c9e155a382e')
version('2.3.2.2', '567b304b0fa017e1e9fbf199f456ebe9')
+ version('2.3.2.1', '064903cb5c23b54f520d04ca6230b901')
version('2.3.1.1', '16efca7641bc118c9d217cc96fe90bf5')
version('2.3.1.0', 'b084934fc26a4182a08c09c292e19161')
version('2.3.0.0', 'a00399a2ca867f2be902c22fc71d7e2e')
@@ -40,7 +50,6 @@ class Clhep(Package):
version('2.2.0.5', '1584e8ce6ebf395821aed377df315c7c')
version('2.2.0.4', '71d2c7c2e39d86a0262e555148de01c1')
- variant('debug', default=False, description="Switch to the debug version of CLHEP.")
variant('cxx11', default=True, description="Compile using c++11 dialect.")
variant('cxx14', default=False, description="Compile using c++14 dialect.")
@@ -53,29 +62,26 @@ class Clhep(Package):
'%s/%s/CLHEP/CMakeLists.txt'
% (self.stage.path, self.spec.version))
- def install(self, spec, prefix):
- # Handle debug
- # Pull out the BUILD_TYPE so we can change it (Release is default)
- cmake_args = [arg for arg in std_cmake_args if 'BUILD_TYPE' not in arg]
- build_type = 'Debug' if '+debug' in spec else 'MinSizeRel'
- cmake_args.extend(['-DCMAKE_BUILD_TYPE=' + build_type])
+ root_cmakelists_dir = 'CLHEP'
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
if '+cxx11' in spec:
- env['CXXFLAGS'] = self.compiler.cxx11_flag
+ if 'CXXFLAGS' in env and env['CXXFLAGS']:
+ env['CXXFLAGS'] += ' ' + self.compiler.cxx11_flag
+ else:
+ env['CXXFLAGS'] = self.compiler.cxx11_flag
cmake_args.append('-DCLHEP_BUILD_CXXSTD=' +
self.compiler.cxx11_flag)
if '+cxx14' in spec:
- env['CXXFLAGS'] = self.compiler.cxx14_flag
+ if 'CXXFLAGS' in env and env['CXXFLAGS']:
+ env['CXXFLAGS'] += ' ' + self.compiler.cxx14_flag
+ else:
+ env['CXXFLAGS'] = self.compiler.cxx14_flag
cmake_args.append('-DCLHEP_BUILD_CXXSTD=' +
self.compiler.cxx14_flag)
- # Note that the tar file is unusual in that there's a
- # CLHEP directory (addtional layer)
- cmake_args.append("../CLHEP")
-
- # Run cmake in a build directory
- with working_dir('build', create=True):
- cmake(*cmake_args)
- make()
- make("install")
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/cloc/package.py b/var/spack/repos/builtin/packages/cloc/package.py
new file mode 100644
index 0000000000..a5f7f1ecf5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cloc/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cloc(Package):
+ """Count, or compute differences of, physical lines of source code in the
+ given files (may be archives such as compressed tarballs or zip files)
+ and/or recursively below the given directories."""
+ homepage = "https://github.com/AlDanial/cloc/"
+ url = "https://github.com/AlDanial/cloc/releases/download/1.74/cloc-1.74.tar.gz"
+
+ version('1.74', '1372da13a83862c186aa0b6b0c9b86f5')
+
+ depends_on('perl')
+
+ def install(self, spec, prefix):
+ # rewrite the script's #! line to call the perl dependency
+ shbang = '#!' + spec['perl'].command.path
+ filter_file(r'^#!/usr/bin/env perl', shbang, 'cloc')
+ filter_file(r'^#!/usr/bin/env perl', shbang, 'sqlite_formatter')
+
+ # cloc doesn't have a build system. We have to do our own install here.
+ mkdirp(prefix.bin)
+ install('cloc', join_path(prefix.bin, "cloc"))
+ install('sqlite_formatter', join_path(prefix.bin, "sqlite_formatter"))
+ install('./LICENSE', "%s" % prefix)
+ install('./README.md', "%s" % prefix)
diff --git a/var/spack/repos/builtin/packages/cloog/package.py b/var/spack/repos/builtin/packages/cloog/package.py
index a979ae83fc..b8fad45331 100644
--- a/var/spack/repos/builtin/packages/cloog/package.py
+++ b/var/spack/repos/builtin/packages/cloog/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/cloverleaf/package.py b/var/spack/repos/builtin/packages/cloverleaf/package.py
new file mode 100644
index 0000000000..1f23d5398c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cloverleaf/package.py
@@ -0,0 +1,110 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import glob
+
+from spack import *
+
+
+class Cloverleaf(MakefilePackage):
+ """Proxy Application. CloverLeaf is a miniapp that solves the
+ compressible Euler equations on a Cartesian grid,
+ using an explicit, second-order accurate method.
+ """
+
+ homepage = "http://uk-mac.github.io/CloverLeaf"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/CloverLeaf/CloverLeaf-1.1.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.1', '65652b30a64eb237ec844a6fdd4cd518')
+
+ variant('build', default='ref', description='Type of Parallelism Build',
+ values=('cuda', 'mpi_only', 'openacc_cray',
+ 'openmp_only', 'ref', 'serial'))
+
+ depends_on('mpi', when='build=cuda')
+ depends_on('mpi', when='build=mpi_only')
+ depends_on('mpi', when='build=openacc_cray')
+ depends_on('mpi', when='build=ref')
+ depends_on('cuda', when='build=cuda')
+
+ @property
+ def type_of_build(self):
+ build = 'ref'
+
+ if 'build=cuda' in self.spec:
+ build = 'CUDA'
+ elif 'build=mpi_only' in self.spec:
+ build = 'MPI'
+ elif 'build=openacc_cray' in self.spec:
+ build = 'OpenACC_CRAY'
+ elif 'build=openmp_only' in self.spec:
+ build = 'OpenMP'
+ elif 'build=serial' in self.spec:
+ build = 'Serial'
+
+ return build
+
+ @property
+ def build_targets(self):
+ targets = ['--directory=CloverLeaf_{0}'.format(self.type_of_build)]
+
+ if 'mpi' in self.spec:
+ targets.append('MPI_COMPILER={0}'.format(self.spec['mpi'].mpifc))
+ targets.append('C_MPI_COMPILER={0}'.format(self.spec['mpi'].mpicc))
+ else:
+ targets.append('MPI_COMPILER=f90')
+ targets.append('C_MPI_COMPILER=cc')
+
+ if '%gcc' in self.spec:
+ targets.append('COMPILER=GNU')
+ elif '%cce' in self.spec:
+ targets.append('COMPILER=CRAY')
+ elif '%intel' in self.spec:
+ targets.append('COMPILER=INTEL')
+ elif '%pgi' in self.spec:
+ targets.append('COMPILER=PGI')
+ elif '%xl' in self.spec:
+ targets.append('COMPILER=XLF')
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc.tests)
+
+ install('README.md', prefix.doc)
+ install('documentation.txt', prefix.doc)
+
+ install('CloverLeaf_{0}/clover_leaf'.format(self.type_of_build),
+ prefix.bin)
+ install('CloverLeaf_{0}/clover.in'.format(self.type_of_build),
+ prefix.bin)
+
+ for f in glob.glob(
+ 'CloverLeaf_{0}/*.in'.format(self.type_of_build)):
+ install(f, prefix.doc.tests)
diff --git a/var/spack/repos/builtin/packages/cloverleaf3d/package.py b/var/spack/repos/builtin/packages/cloverleaf3d/package.py
new file mode 100644
index 0000000000..0d00922325
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cloverleaf3d/package.py
@@ -0,0 +1,93 @@
+#############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import glob
+
+from spack import *
+
+
+class Cloverleaf3d(MakefilePackage):
+ """Proxy Application. CloverLeaf3D is 3D version of the
+ CloverLeaf mini-app. CloverLeaf is a mini-app that solves
+ the compressible Euler equations on a Cartesian grid,
+ using an explicit, second-order accurate method.
+ """
+
+ homepage = "http://uk-mac.github.io/CloverLeaf3D/"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/CloverLeaf3D/CloverLeaf3D-1.0.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.0', '2e86cadd7612487f9da4ddeb1a6de939')
+
+ variant('openacc', default=False, description='Enable OpenACC Support')
+
+ depends_on('mpi')
+
+ @property
+ def type_of_build(self):
+ build = 'ref'
+
+ if '+openacc' in self.spec:
+ build = 'OpenACC'
+
+ return build
+
+ @property
+ def build_targets(self):
+ targets = [
+ 'MPI_COMPILER={0}'.format(self.spec['mpi'].mpifc),
+ 'C_MPI_COMPILER={0}'.format(self.spec['mpi'].mpicc),
+ '--directory=CloverLeaf3D_{0}'.format(self.type_of_build)
+ ]
+
+ if '%gcc' in self.spec:
+ targets.append('COMPILER=GNU')
+ elif '%cce' in self.spec:
+ targets.append('COMPILER=CRAY')
+ elif '%intel' in self.spec:
+ targets.append('COMPILER=INTEL')
+ elif '%pgi' in self.spec:
+ targets.append('COMPILER=PGI')
+ elif '%xl' in self.spec:
+ targets.append('COMPILER=XLF')
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc.samples)
+
+ install('README.md', prefix.doc)
+
+ install('CloverLeaf3D_{0}/clover_leaf'.format(self.type_of_build),
+ prefix.bin)
+ install('CloverLeaf3D_{0}/clover.in'.format(self.type_of_build),
+ prefix.bin)
+
+ for f in glob.glob(
+ 'CloverLeaf3D_{0}/*.in'.format(self.type_of_build)):
+ install(f, prefix.doc.samples)
diff --git a/var/spack/repos/builtin/packages/clustalo/package.py b/var/spack/repos/builtin/packages/clustalo/package.py
new file mode 100644
index 0000000000..5f3911ac29
--- /dev/null
+++ b/var/spack/repos/builtin/packages/clustalo/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Clustalo(AutotoolsPackage):
+ """Clustal Omega: the last alignment program you'll ever need."""
+
+ homepage = "http://www.clustal.org/omega/"
+ url = "http://www.clustal.org/omega/clustal-omega-1.2.4.tar.gz"
+
+ version('1.2.4', '6c0459f4c463a30e942ce7e0efc91422')
+
+ depends_on('argtable')
diff --git a/var/spack/repos/builtin/packages/clustalw/package.py b/var/spack/repos/builtin/packages/clustalw/package.py
new file mode 100644
index 0000000000..478fb702ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/clustalw/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Clustalw(AutotoolsPackage):
+ """Multiple alignment of nucleic acid and protein sequences."""
+
+ homepage = "http://www.clustal.org/clustal2/"
+ url = "http://www.clustal.org/download/2.1/clustalw-2.1.tar.gz"
+
+ version('2.1', '144df8440a0ae083d5167616c8ceeb41')
diff --git a/var/spack/repos/builtin/packages/cmake/package.py b/var/spack/repos/builtin/packages/cmake/package.py
index 60c95b9184..150936d1cb 100644
--- a/var/spack/repos/builtin/packages/cmake/package.py
+++ b/var/spack/repos/builtin/packages/cmake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,8 +31,14 @@ class Cmake(Package):
homepage = 'https://www.cmake.org'
url = 'https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz'
list_url = 'https://cmake.org/files/'
- list_depth = 2
-
+ list_depth = 1
+
+ version('3.9.4', '33769e001bdcd788f565bf378692e5ae')
+ version('3.9.0', '180e23b4c9b55915d271b315297f6951')
+ version('3.8.2', 'b5dff61f6a7f1305271ab3f6ae261419')
+ version('3.8.1', 'e8ef820ddf7a650845252bca846696e7')
+ version('3.8.0', 'f28cba717ba38ad82a488daed8f45b5b')
+ version('3.7.2', '79bd7e65cd81ea3aa2619484ad6ff25a')
version('3.7.1', 'd031d5a06e9f1c5367cdfc56fbd2a1c8')
version('3.6.1', 'd6dd661380adacdb12f41b926ec99545')
version('3.6.0', 'aa40fbecf49d99c083415c2411d12db9')
@@ -59,71 +65,74 @@ class Cmake(Package):
depends_on('bzip2', when='~ownlibs')
depends_on('xz', when='~ownlibs')
depends_on('libarchive', when='~ownlibs')
+ depends_on('libuv@1.0.0:', when='~ownlibs')
+ depends_on('rhash', when='@3.8.0:~ownlibs')
depends_on('qt', when='+qt')
depends_on('python@2.7.11:', when='+doc', type='build')
depends_on('py-sphinx', when='+doc', type='build')
- depends_on('openssl', when='+openssl')
+ depends_on('openssl', when='+openssl')
+ depends_on('openssl@:1.0.99', when='@:3.6.9+openssl')
depends_on('ncurses', when='+ncurses')
# Cannot build with Intel, should be fixed in 3.6.2
# https://gitlab.kitware.com/cmake/cmake/issues/16226
patch('intel-c-gnu11.patch', when='@3.6.0:3.6.1')
- def url_for_version(self, version):
- """Handle CMake's version-based custom URLs."""
- return 'https://cmake.org/files/v%s/cmake-%s.tar.gz' % (
- version.up_to(2), version)
-
- def validate(self, spec):
- """
- Checks if incompatible versions of qt were specified
+ conflicts('+qt', when='^qt@5.4.0') # qt-5.4.0 has broken CMake modules
- :param spec: spec of the package
- :raises RuntimeError: in case of inconsistencies
- """
+ phases = ['bootstrap', 'build', 'install']
- if '+qt' in spec and spec.satisfies('^qt@5.4.0'):
- msg = 'qt-5.4.0 has broken CMake modules.'
- raise RuntimeError(msg)
+ def url_for_version(self, version):
+ """Handle CMake's version-based custom URLs."""
+ url = 'https://cmake.org/files/v{0}/cmake-{1}.tar.gz'
+ return url.format(version.up_to(2), version)
- def install(self, spec, prefix):
- # Consistency check
- self.validate(spec)
-
- options = [
- '--prefix={0}'.format(prefix),
- '--parallel={0}'.format(make_jobs)]
- if spec.satisfies("@3.2:"):
- options.append(
- # jsoncpp requires CMake to build
- # use CMake-provided library to avoid circular dependency
- '--no-system-jsoncpp'
- )
+ def bootstrap_args(self):
+ spec = self.spec
+ args = [
+ '--prefix={0}'.format(self.prefix),
+ '--parallel={0}'.format(make_jobs)
+ ]
if '+ownlibs' in spec:
# Build and link to the CMake-provided third-party libraries
- options.append('--no-system-libs')
+ args.append('--no-system-libs')
else:
# Build and link to the Spack-installed third-party libraries
- options.append('--system-libs')
+ args.append('--system-libs')
+
+ if spec.satisfies('@3.2:'):
+ # jsoncpp requires CMake to build
+ # use CMake-provided library to avoid circular dependency
+ args.append('--no-system-jsoncpp')
if '+qt' in spec:
- options.append('--qt-gui')
+ args.append('--qt-gui')
else:
- options.append('--no-qt-gui')
+ args.append('--no-qt-gui')
if '+doc' in spec:
- options.append('--sphinx-html')
- options.append('--sphinx-man')
+ args.append('--sphinx-html')
+ args.append('--sphinx-man')
if '+openssl' in spec:
- options.append('--')
- options.append('-DCMAKE_USE_OPENSSL=ON')
+ args.append('--')
+ args.append('-DCMAKE_USE_OPENSSL=ON')
+ return args
+
+ def bootstrap(self, spec, prefix):
bootstrap = Executable('./bootstrap')
- bootstrap(*options)
+ bootstrap(*self.bootstrap_args())
+ def build(self, spec, prefix):
make()
- if self.run_tests:
- make('test') # some tests fail, takes forever
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def test(self):
+ # Some tests fail, takes forever
+ make('test')
+
+ def install(self, spec, prefix):
make('install')
diff --git a/var/spack/repos/builtin/packages/cmocka/package.py b/var/spack/repos/builtin/packages/cmocka/package.py
index 274b78379a..7598532476 100644
--- a/var/spack/repos/builtin/packages/cmocka/package.py
+++ b/var/spack/repos/builtin/packages/cmocka/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,15 @@
from spack import *
-class Cmocka(Package):
+class Cmocka(CMakePackage):
"""Unit-testing framework in pure C"""
homepage = "https://cmocka.org/"
- url = "https://cmocka.org/files/1.0/cmocka-1.0.1.tar.xz"
+ url = "https://cmocka.org/files/1.1/cmocka-1.1.1.tar.xz"
+ version('1.1.1', '6fbff4e42589566eda558db98b97623e')
+ version('1.1.0', '59c9aa5735d9387fb591925ec53523ec')
version('1.0.1', 'ed861e501a21a92b2af63e466df2015e')
- parallel = False
-
- depends_on('cmake', type='build')
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
+ depends_on('cmake@2.6.0:', type='build')
- make()
- make("install")
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/cmor/package.py b/var/spack/repos/builtin/packages/cmor/package.py
index b5debf9537..59a0330324 100644
--- a/var/spack/repos/builtin/packages/cmor/package.py
+++ b/var/spack/repos/builtin/packages/cmor/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -46,10 +46,10 @@ class Cmor(AutotoolsPackage):
depends_on('hdf5@:1.8')
extends('python', when='+python')
- depends_on('python@:2.7', when='+python')
+ depends_on('python@:2.8', when='+python')
depends_on('py-numpy', type=('build', 'run'), when='+python')
- @AutotoolsPackage.precondition('configure')
+ @run_before('configure')
def validate(self):
if '+fortran' in self.spec and not self.compiler.fc:
msg = 'cannot build a fortran variant without a fortran compiler'
diff --git a/var/spack/repos/builtin/packages/cnmem/package.py b/var/spack/repos/builtin/packages/cnmem/package.py
index 0c62023952..7b068e1ede 100644
--- a/var/spack/repos/builtin/packages/cnmem/package.py
+++ b/var/spack/repos/builtin/packages/cnmem/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,10 @@
from spack import *
-class Cnmem(Package):
+class Cnmem(CMakePackage):
"""CNMem mempool for CUDA devices"""
homepage = "https://github.com/NVIDIA/cnmem"
version('git', git='https://github.com/NVIDIA/cnmem.git', branch="master")
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
- make()
- make('install')
+ depends_on('cmake@2.8.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/cnpy/package.py b/var/spack/repos/builtin/packages/cnpy/package.py
new file mode 100644
index 0000000000..7c868b62b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cnpy/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cnpy(CMakePackage):
+ """cnpy: library to read/write .npy and .npz files in C/C++."""
+
+ homepage = "https://github.com/rogersce/cnpy"
+ url = "https://github.com/rogersce/cnpy"
+
+ version('master', git='https://github.com/rogersce/cnpy.git', branch="master")
diff --git a/var/spack/repos/builtin/packages/cns-nospec/package.py b/var/spack/repos/builtin/packages/cns-nospec/package.py
new file mode 100644
index 0000000000..f4b56d7596
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cns-nospec/package.py
@@ -0,0 +1,109 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class CnsNospec(MakefilePackage):
+ """A simple, explicit, stencil-based test code for integrating
+ the compressible Navier-Stokes equations. The code uses
+ 8th order finite differences in space and a 3rd order,
+ low-storage TVD RK algorithm in time."""
+
+ homepage = "https://ccse.lbl.gov/ExaCT/index.html"
+ url = "https://ccse.lbl.gov/ExaCT/CNS_Nospec.tgz"
+ tags = ['proxy-app']
+
+ version('master', '14ff5be62539d829b30b17281688ee3f')
+
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('debug', default=False, description='Build with debugging')
+ variant('omp', default=False, description='Build with OpenMP support')
+ variant('prof', default=False, description='Build with profiling')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('gmake', type='build')
+
+ build_directory = 'MiniApps/CNS_NoSpec'
+
+ def edit(self, spec, prefix):
+ def_file = FileFilter('Tools/F_mk/GMakedefs.mak')
+ def_file.filter('tdir = t/.*', 'tdir := t/$(suf)')
+ def_file.filter('hdir = t/.*', 'hdir := t/html')
+ def_file.filter('include $(BOXLIB_HOME)/Tools/F_mk/GMakeMPI.mak', '#')
+
+ if '+mpi' in spec:
+ def_file.filter('FC.*:=.*', 'FC = {0}'.format(spec['mpi'].mpifc))
+ def_file.filter('F90.*:=.*', 'F90 = {0}'.format(spec['mpi'].mpifc))
+ def_file.filter(
+ 'mpi_include_dir =.*',
+ 'mpi_include_dir = {0}'.format(spec['mpi'].prefix.include))
+ def_file.filter(
+ 'mpi_lib_dir =.*',
+ 'mpi_lib_dir = {0}'.format(spec['mpi'].prefix.lib))
+
+ with working_dir(self.build_directory):
+ makefile = FileFilter('GNUmakefile')
+ if '+mpi' in spec:
+ makefile.filter('MPI .*', 'MPI := t')
+ if '+debug' in spec:
+ makefile.filter('NDEBUG.*', '#')
+ if '+omp' in spec:
+ makefile.filter('OMP.*', 'OMP := t')
+ if '+prof' in spec:
+ makefile.filter('PROF.*', 'PROF := t')
+
+ if self.compiler.name == 'gcc':
+ makefile.filter('COMP .*', 'COMP = gfortran')
+ if self.compiler.name == 'intel':
+ makefile.filter('COMP .*', 'COMP = Intel')
+ if self.compiler.name == 'pgi':
+ makefile.filter('COMP .*', 'COMP = PGI')
+ if self.compiler.name == 'xl':
+ makefile.filter('COMP .*', 'COMP = IBM')
+ if self.compiler.name == 'cce':
+ makefile.filter('COMP .*', 'COMP = Cray')
+
+ @property
+ def build_targets(self):
+ spec = self.spec
+ if '+mpi' in spec:
+ return ['CC = {0}'.format(spec['mpi'].mpicc),
+ 'CXX = {0}'.format(spec['mpi'].mpicxx)]
+ else:
+ return []
+
+ def build(self, spec, prefix):
+ with working_dir(self.build_directory):
+ gmake()
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ files = glob.glob(join_path(self.build_directory, '*.exe'))
+ for f in files:
+ install(f, prefix.bin)
+ install('README.txt', prefix)
+ install('license.txt', prefix)
+ install(join_path(self.build_directory, 'README'), prefix)
diff --git a/var/spack/repos/builtin/packages/cntk/build.patch b/var/spack/repos/builtin/packages/cntk/build.patch
new file mode 100644
index 0000000000..7ae6101db3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cntk/build.patch
@@ -0,0 +1,386 @@
+From 6ee89684a8e7b509f977bab00573c73563df4bc6 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Wed, 5 Apr 2017 16:52:54 +0800
+Subject: [PATCH 1/1] Refine the build process to allow reuse pre-installed
+ packages: multiverso 1bit-sgd kaldi openfst.
+
+---
+ Makefile | 69 +++++++++++++++---------------
+ configure | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
+ 2 files changed, 178 insertions(+), 35 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 0586fd94b..bbd75e08c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -25,14 +25,18 @@
+ # If not specified, GPU will not be enabled
+ # CUB_PATH= path to NVIDIA CUB installation, so $(CUB_PATH)/cub/cub.cuh exists
+ # defaults to /usr/local/cub-1.4.1
+-# CUDNN_PATH= path to NVIDIA cuDNN installation so $(CUDNN_PATH)/cuda/include/cudnn.h exists
++# CUDNN_PATH= path to NVIDIA cuDNN installation so $(CUDNN_PATH)/include/cudnn.h exists
+ # CuDNN version needs to be 5.0 or higher.
+ # KALDI_PATH= Path to Kaldi
+ # If not specified, Kaldi plugins will not be built
++# OPENFST_PATH= Path to OpenFST
++# OpenFST is required by Kaldi Reader.
+ # OPENCV_PATH= path to OpenCV 3.1.0 installation, so $(OPENCV_PATH) exists
+ # defaults to /usr/local/opencv-3.1.0
+ # PROTOBUF_PATH= path to Protocol Buffers 3.1.0 installation, so $(PROTOBUF_PATH) exists
+ # defaults to /usr/local/protobuf-3.1.0
++# MULTIVERSO_PATH= path to Multiverso installation or source code, so $(MULTIVERSO_PATH) exists
++# defaults to Source/Multiverso
+ # LIBZIP_PATH= path to libzip installation, so $(LIBZIP_PATH) exists
+ # defaults to /usr/local/
+ # BOOST_PATH= path to Boost installation, so $(BOOST_PATH)/include/boost/test/unit_test.hpp
+@@ -149,8 +153,8 @@ ifdef CUDA_PATH
+
+ # Set up cuDNN if needed
+ ifdef CUDNN_PATH
+- INCLUDEPATH += $(CUDNN_PATH)/cuda/include
+- LIBPATH += $(CUDNN_PATH)/cuda/lib64
++ INCLUDEPATH += $(CUDNN_PATH)/include
++ LIBPATH += $(CUDNN_PATH)/lib64
+ LIBS_LIST += cudnn
+ COMMON_FLAGS +=-DUSE_CUDNN
+ endif
+@@ -188,16 +192,11 @@ ifeq ("$(MATHLIB)","openblas")
+ CPPFLAGS += -DUSE_OPENBLAS
+ endif
+
+-
++# Set up kaldi and openfst for Kaldi2Reader if needed
+ ifdef KALDI_PATH
+- ########## Copy includes and defines from $(KALDI_PATH)/src/kaldi.mk ##########
+- FSTROOT = $(KALDI_PATH)/tools/openfst
+- ATLASINC = $(KALDI_PATH)/tools/ATLAS/include
+-
+- INCLUDEPATH += $(KALDI_PATH)/src $(ATLASINC) $(FSTROOT)/include
++ INCLUDEPATH += $(KALDI_PATH)/include $(OPENFST_PATH)/incldue
+ CPPFLAGS += -DKALDI_DOUBLEPRECISION=0 -DHAVE_POSIX_MEMALIGN -DHAVE_EXECINFO_H=1 -DHAVE_CXXABI_H -DHAVE_ATLAS -DHAVE_OPENFST_GE_10400
+-
+- KALDI_LIBPATH += $(KALDI_PATH)/src/lib
++ KALDI_LIBPATH += $(KALDI_PATH)/lib $(OPENFST_PATH)/lib
+ KALDI_LIBS_LIST := kaldi-util kaldi-matrix kaldi-base kaldi-hmm kaldi-cudamatrix kaldi-nnet kaldi-lat
+ KALDI_LIBS := $(addprefix -l,$(KALDI_LIBS_LIST))
+ endif
+@@ -316,7 +315,7 @@ SRC += $(PP_SRC)
+ $(PERF_PROFILER_LIB): $(PP_OBJ)
+ @echo $(SEPARATOR)
+ @echo creating $@ for $(ARCH) with build type $(BUILDTYPE)
+- @mkdir -p $(dir $@)
++ -@mkdir -p $(dir $@)
+ $(CXX) $(LDFLAGS) -shared $(patsubst %,$(RPATH)%, $(ORIGINDIR)) -o $@ $^
+
+
+@@ -920,17 +919,13 @@ endif
+
+ ifeq ("$(CNTK_ENABLE_1BitSGD)","true")
+
+-ifeq (,$(wildcard Source/1BitSGD/*.h))
+- $(error Build with 1bit-SGD was requested but cannot find the code. Please check https://github.com/Microsoft/CNTK/wiki/Enabling-1bit-SGD for instructions)
+-endif
+-
+- INCLUDEPATH += $(SOURCEDIR)/1BitSGD
++ INCLUDEPATH += $(ONEBITSGD_PATH)
+
+ COMMON_FLAGS += -DCNTK_PARALLEL_TRAINING_SUPPORT
+ # temporarily adding to 1bit, need to work with others to fix it
+ endif
+
+-
++
+ ########################################
+ # ASGD(multiverso) setup
+ ########################################
+@@ -938,13 +933,9 @@ endif
+
+ ifeq ("$(CNTK_ENABLE_ASGD)","true")
+
+-ifeq (,$(wildcard Source/Multiverso/include/multiverso/*.h))
+- $(error Build with Multiverso was requested but cannot find the code. Please check https://github.com/Microsoft/CNTK/wiki/Multiple-GPUs-and-machines#24-data-parallel-asgd to learn more.)
+-endif
+-
+ lMULTIVERSO:=-lmultiverso
+
+-INCLUDEPATH += $(SOURCEDIR)/Multiverso/include
++INCLUDEPATH += $(MULTIVERSO_PATH)/include
+ COMMON_FLAGS += -DASGD_PARALLEL_SUPPORT
+
+ MULTIVERSO_LIB:=$(LIBDIR)/libmultiverso.so
+@@ -958,11 +949,16 @@ MULTIVERSO_CMAKE_BUILDTYPE=Debug
+ endif
+
+ # TODO need to align Multiverso OpenMP with the one we use (libiomp). For now, disabled.
+-$(MULTIVERSO_LIB):
++$(MULTIVERSO_LIB):
++ifneq ("$(wildcard $(MULTIVERSO_PATH)/lib/libmultiverso.so)","")
++ # reuse pre-installed multiverso library to $(LIBDIR) then skip building $(MULTIVERSO_LIB) when possible
++ @mkdir -p $(LIBDIR)
++ cp $(MULTIVERSO_PATH)/lib/libmultiverso.so $(LIBDIR)
++else
+ @echo "Build Multiverso lib"
+ @mkdir -p $(LIBDIR)
+ @mkdir -p $(BINDIR)
+- @mkdir -p $(SOURCEDIR)/Multiverso/build/$(BUILDTYPE)
++ @mkdir -p $(MULTIVERSO_PATH)/build/$(BUILDTYPE)
+ @cmake -DCMAKE_VERBOSE_MAKEFILE=TRUE \
+ -DCMAKE_CXX_COMPILER=$(CXX) \
+ -DOpenMP_CXX_FLAGS="" \
+@@ -976,17 +972,22 @@ $(MULTIVERSO_LIB):
+ -DCMAKE_BUILD_TYPE=$(MULTIVERSO_CMAKE_BUILDTYPE) \
+ -B./Source/Multiverso/build/$(BUILDTYPE) -H./Source/Multiverso
+ @make VERBOSE=1 -C ./Source/Multiverso/build/$(BUILDTYPE) -j multiverso
++endif
+
+ UNITTEST_MULTIVERSO_SRC = \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_array.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_blob.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_kv.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_message.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_multiverso.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_node.cpp \
+- $(SOURCEDIR)/Multiverso/Test/unittests/test_sync.cpp \
+-
+-UNITTEST_MULTIVERSO_OBJ := $(patsubst %.cpp, $(OBJDIR)/%.o, $(UNITTEST_MULTIVERSO_SRC))
++ $(MULTIVERSO_PATH)/Test/unittests/test_array.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_blob.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_kv.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_message.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_multiverso.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_node.cpp \
++ $(MULTIVERSO_PATH)/Test/unittests/test_sync.cpp \
++
++UNITTEST_MULTIVERSO_OBJ := $(patsubst $(MULTIVERSO_PATH)/Test/unittests/%.cpp, $(OBJDIR)/Source/Multiverso/Test/unittests/%.o, $(UNITTEST_MULTIVERSO_SRC))
++
++$(OBJDIR)/Source/Multiverso/Test/unittests/%.o: $(MULTIVERSO_PATH)/Test/unittests/%.cpp
++ -@ mkdir -p $(OBJDIR)/Source/Multiverso/Test/unittests
++ $(CXX) -c $< -o $@ $(COMMON_FLAGS) $(CPPFLAGS) $(CXXFLAGS) $(INCLUDEPATH:%=-I%)
+
+ UNITTEST_MULTIVERSO := $(BINDIR)/multiversotests
+
+diff --git a/configure b/configure
+index 2c2e5cee7..c9c0072c9 100755
+--- a/configure
++++ b/configure
+@@ -41,6 +41,14 @@ boost_check=include/boost/test/unit_test.hpp
+ protobuf_path=
+ protobuf_check=lib/libprotobuf.a
+
++# Multiverso library
++multiverso_path=
++multiverso_check=include/multiverso/multiverso.h
++
++# 1bitsgd library
++onebitsgd_path=
++onebitsgd_check=BlockMomentumSGD.h
++
+ # MPI library
+ mpi_path=
+ mpi_check=include/mpi.h
+@@ -49,6 +57,10 @@ have_kaldi=no
+ kaldi_path=
+ kaldi_check=src/kaldi.mk
+
++have_openfst=no
++openfst_path=
++openfst_check=include/fst/fst.h
++
+ have_buildtype=no
+ buildtype=
+ default_buildtype=release
+@@ -67,7 +79,7 @@ cub_check=cub/cub.cuh
+
+ have_cudnn=no
+ cudnn_path=
+-cudnn_check=cuda/include/cudnn.h
++cudnn_check=include/cudnn.h
+
+ have_opencv=no
+ opencv_path=
+@@ -112,6 +124,7 @@ default_boost="boost-1.60.0"
+ default_cudas="cuda-8.0 cuda-7.5"
+ default_nccls="nccl"
+ default_kaldis="kaldi-trunk kaldi-c024e8aa"
++default_openfst="openfst-1.6"
+ default_gdk_includes="include/nvidia/gdk"
+ default_gdk_nvml_libs="src/gdk/nvml/lib"
+ default_cubs="cub-1.4.1"
+@@ -121,6 +134,8 @@ default_protobuf="protobuf-3.1.0"
+ default_libzips="libzip-1.1.2"
+ default_swig="swig-3.0.10"
+ default_mpi="mpi"
++default_multiverso=Source/Multiverso
++default_onebitsgd=Source/1BitSGD
+
+ function default_paths ()
+ {
+@@ -178,6 +193,16 @@ function find_protobuf ()
+ find_dir "$default_protobuf" "$protobuf_check"
+ }
+
++function find_multiverso ()
++{
++ find_dir "$default_multiverso" "$multiverso_check"
++}
++
++function find_onebitsgd ()
++{
++ find_dir "$default_onebitsgd" "$onebitsgd_check"
++}
++
+ function find_nccl ()
+ {
+ find_dir "$default_nccls" "$nccl_check"
+@@ -193,6 +218,11 @@ function find_kaldi ()
+ find_dir "$default_kaldis" "$kaldi_check"
+ }
+
++function find_openfst ()
++{
++ find_dir "$default_openfst" "$openfst_check"
++}
++
+ function find_gdk_include ()
+ {
+ find_dir "$default_gdk_includes" "$gdk_include_check"
+@@ -751,6 +784,46 @@ do
+ fi
+ fi
+ ;;
++ --with-multiverso*)
++ if test x$optarg = x
++ then
++ multiverso_path=$(find_multiverso)
++ if test x$multiverso_path = x
++ then
++ echo "Cannot find Multiverso directory"
++ echo "Please specify a value for --with-multiverso"
++ exit 1
++ fi
++ else
++ if test $(check_dir $optarg $multiverso_check) = yes
++ then
++ multiverso_path=$optarg
++ else
++ echo "Invalid Multiverso directory $optarg"
++ exit 1
++ fi
++ fi
++ ;;
++ --with-1bitsgd*)
++ if test x$optarg = x
++ then
++ onebitsgd_path=$(find_onebitsgd)
++ if test x$onebitsgd_path = x
++ then
++ echo "Cannot find 1BitSGD directory"
++ echo "Please specify a value for --with-1bitsgd"
++ exit 1
++ fi
++ else
++ if test $(check_dir $optarg $onebitsgd_check) = yes
++ then
++ onebitsgd_path=$optarg
++ else
++ echo "Invalid 1BitSGD directory $optarg"
++ exit 1
++ fi
++ fi
++ ;;
+ --with-buildtype*)
+ have_buildtype=yes
+ case $optarg in
+@@ -784,6 +857,27 @@ do
+ fi
+ fi
+ ;;
++ --with-openfst*)
++ have_openfst=yes
++ if test x$optarg = x
++ then
++ openfst_path=$(find_openfst)
++ if test x$openfst_path = x
++ then
++ echo "Cannot find openfst directory"
++ echo "Please specify a value for --with-openfst"
++ exit 1
++ fi
++ else
++ if test $(check_dir $optarg $openfst_check)
++ then
++ openfst_path=$optarg
++ else
++ echo "Invalid openfst directory $optarg"
++ exit 1
++ fi
++ fi
++ ;;
+ --with-opencv*)
+ have_opencv=yes
+ if test x$optarg = x
+@@ -1049,6 +1143,48 @@ then
+ fi
+ fi
+
++if test x$kaldi_path != x && test x$openfst_path = x
++then
++ openfst_path=$(find_openfst)
++ if test x$openfst_path = x
++ then
++ echo CNTK KaldiReader requires OpenFST library. Please check
++ echo https://github.com/Microsoft/CNTK/blob/master/Source/Readers/KaldiReaderReadme
++ echo to learn more.
++ exit 1
++ else
++ echo Found OpenFST library at $openfst_path
++ fi
++fi
++
++if test $enable_1bitsgd = yes && test x$onebitsgd_path = x
++then
++ onebitsgd_path=$(find_onebitsgd)
++ if test x$onebitsgd_path = x
++ then
++ echo Cannot locate 1BitSGD library. See
++ echo https://github.com/Microsoft/CNTK/wiki/Enabling-1bit-SGD
++ echo for installation instructions.
++ exit 1
++ else
++ echo Found 1BitSGD library at $onebitsgd_path
++ fi
++fi
++
++if test $enable_asgd = yes && test x$multiverso_path = x
++then
++ multiverso_path=$(find_multiverso)
++ if test x$multiverso_path = x
++ then
++ echo Build with Multiverso was requested but cannot find the code. Please check
++ echo https://github.com/Microsoft/CNTK/wiki/Multiple-GPUs-and-machines#24-data-parallel-asgd
++ echo to learn more.
++ exit 1
++ else
++ echo Found Multiverso library at $multiverso_path
++ fi
++fi
++
+ if test x$mpi_path = x
+ then
+ mpi_path=$(find_mpi)
+@@ -1123,6 +1259,12 @@ fi
+ if test x$protobuf_path != x; then
+ echo PROTOBUF_PATH=$protobuf_path >> $config
+ fi
++if test x$multiverso_path != x; then
++ echo MULTIVERSO_PATH=$multiverso_path >> $config
++fi
++if test x$onebitsgd_path != x; then
++ echo ONEBITSGD_PATH=$onebitsgd_path >> $config
++fi
+ if test x$mpi_path != x; then
+ echo MPI_PATH=$mpi_path >> $config
+ fi
+--
+2.11.1
+
diff --git a/var/spack/repos/builtin/packages/cntk/kaldireader-openblas.patch b/var/spack/repos/builtin/packages/cntk/kaldireader-openblas.patch
new file mode 100644
index 0000000000..75bd4146e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cntk/kaldireader-openblas.patch
@@ -0,0 +1,32 @@
+From a5cdb4fdce55813b79e3ee6300f282ba6d7b6b85 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Fri, 14 Apr 2017 12:40:44 +0800
+Subject: [PATCH 1/1] Replace ATLAS with OpenBLAS in KaldiReader.
+
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index bbd75e08c..909457963 100644
+--- a/Makefile
++++ b/Makefile
+@@ -189,13 +189,13 @@ ifeq ("$(MATHLIB)","openblas")
+ INCLUDEPATH += $(OPENBLAS_PATH)/include
+ LIBPATH += $(OPENBLAS_PATH)/lib
+ LIBS_LIST += openblas m pthread
+- CPPFLAGS += -DUSE_OPENBLAS
++ CPPFLAGS += -DUSE_OPENBLAS -DHAVE_OPENBLAS
+ endif
+
+ # Set up kaldi and openfst for Kaldi2Reader if needed
+ ifdef KALDI_PATH
+ INCLUDEPATH += $(KALDI_PATH)/include $(OPENFST_PATH)/incldue
+- CPPFLAGS += -DKALDI_DOUBLEPRECISION=0 -DHAVE_POSIX_MEMALIGN -DHAVE_EXECINFO_H=1 -DHAVE_CXXABI_H -DHAVE_ATLAS -DHAVE_OPENFST_GE_10400
++ CPPFLAGS += -DKALDI_DOUBLEPRECISION=0 -DHAVE_POSIX_MEMALIGN -DHAVE_EXECINFO_H=1 -DHAVE_CXXABI_H -DHAVE_OPENFST_GE_10400
+ KALDI_LIBPATH += $(KALDI_PATH)/lib $(OPENFST_PATH)/lib
+ KALDI_LIBS_LIST := kaldi-util kaldi-matrix kaldi-base kaldi-hmm kaldi-cudamatrix kaldi-nnet kaldi-lat
+ KALDI_LIBS := $(addprefix -l,$(KALDI_LIBS_LIST))
+--
+2.11.1
+
diff --git a/var/spack/repos/builtin/packages/cntk/lock-file.patch b/var/spack/repos/builtin/packages/cntk/lock-file.patch
new file mode 100644
index 0000000000..0e0a7811e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cntk/lock-file.patch
@@ -0,0 +1,20 @@
+diff --git a/Source/Common/CrossProcessMutex.h b/Source/Common/CrossProcessMutex.h
+index 2f3ce70..f0fcd42 100644
+--- a/Source/Common/CrossProcessMutex.h
++++ b/Source/Common/CrossProcessMutex.h
+@@ -127,9 +127,13 @@ class CrossProcessMutex
+
+ public:
+ CrossProcessMutex(const std::string& name)
+- : m_fd(-1),
+- m_fileName("/var/lock/" + name)
++ : m_fd(-1)
+ {
++ const char * const envLockDir = getenv("CNTK_LOCK_DIR");
++ if (envLockDir != NULL)
++ m_fileName = envLockDir + ('/' + name);
++ else
++ m_fileName = "/var/lock/" + name;
+ }
+
+ // Acquires the mutex. If 'wait' is true and mutex is acquired by someone else then
diff --git a/var/spack/repos/builtin/packages/cntk/package.py b/var/spack/repos/builtin/packages/cntk/package.py
new file mode 100644
index 0000000000..b55c547e10
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cntk/package.py
@@ -0,0 +1,123 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cntk(Package):
+ """The Microsoft Cognitive Toolkit is a unified deep-learning toolkit
+ that describes neural networks as a series of computational steps
+ via a directed graph."""
+
+ homepage = "https://www.microsoft.com/en-us/research/product/cognitive-toolkit"
+ url = "https://github.com/Microsoft/CNTK/archive/v2.0.tar.gz"
+
+ version('master', git='https://github.com/Microsoft/CNTK.git', branch='master')
+ version('2.0', '8038780f1169ceea578e5ef4d69e4c6f')
+
+ variant('opencv', default=False, description="Enable OpenCV support.")
+ variant('kaldi', default=False, description="Enable Kaldi support.")
+ variant('asgd', default=True, description="Enable DataParallelASGD powered by Multiverso.")
+ variant('1bitsgd', default=False, description="Enable 1bitsgd support.")
+ variant('cuda', default=False, description="Enable CUDA support.")
+ variant('debug', default=False, description="Debug build.")
+
+ depends_on('libzip')
+ depends_on('openblas')
+ depends_on('mpi')
+ depends_on('boost')
+ depends_on('protobuf')
+ # CNTK depends on kaldi@c02e8.
+ # See https://github.com/Microsoft/CNTK/blob/master/Tools/docker/CNTK-CPUOnly-Image/Dockerfile#L105-L125
+ depends_on('kaldi@c024e8', when='+kaldi')
+ depends_on('opencv', when='+opencv')
+ depends_on('cuda', when='+cuda')
+ depends_on('cub@1.4.1', when='+cuda')
+ depends_on('cudnn@5.1', when='+cuda')
+ depends_on('nccl', when='+cuda')
+ depends_on('cntk1bitsgd@c8b77d', when='+1bitsgd')
+ depends_on('multiverso@143187', when='+asgd')
+
+ # Patch CNTN's build process to use libs installed outside CNTK source tree
+ # multiverso, kaldi, openfst
+ patch('build.patch')
+ # Patch to fix BLAS inconsistency between CNTK and KaldiReader
+ patch('kaldireader-openblas.patch')
+ # Patch to change behaviour of lock file - https://github.com/Microsoft/CNTK/issues/62
+ patch('lock-file.patch')
+
+ def install(self, spec, prefix):
+ args = []
+
+ args.append('--with-mpi=' + spec['mpi'].prefix)
+ args.append('--with-openblas=' + spec['openblas'].prefix)
+ args.append('--with-libzip=' + spec['libzip'].prefix)
+ args.append('--with-boost=' + spec['boost'].prefix)
+ args.append('--with-protobuf=' + spec['protobuf'].prefix)
+
+ if '+debug' in spec:
+ args.append('--with-buildtype=debug')
+ else:
+ args.append('--with-buildtype=release')
+
+ if '+1bitsgd' in spec:
+ args.append('--1bitsgd=yes')
+ args.append('--with-1bitsgd={0}/include'
+ .format(spec['cntk1bitsgd'].prefix))
+
+ if '+asgd' in spec:
+ args.append('--asgd=yes')
+ args.append('--with-multiverso={0}'
+ .format(spec['multiverso'].prefix))
+ else:
+ args.append('--asgd=no')
+
+ if '+opencv' in spec:
+ args.append('--with-opencv=' + spec['opencv'].prefix)
+
+ if '+kaldi' in spec:
+ args.append('--with-kaldi=' + spec['kaldi'].prefix)
+ args.append('--with-openfst=' + spec['openfst'].prefix)
+
+ if '+cuda' in spec:
+ args.append('--cuda=yes')
+ args.append('--with-cuda={0}'.format(spec['cuda'].prefix))
+ args.append('--with-cub={0}'
+ .format(spec['cub'].prefix.include))
+ args.append('--with-cudnn={0}'
+ .format(spec['cudnn'].prefix))
+ args.append('--with-nccl={0}'.format(spec['nccl'].prefix))
+ args.append('--with-gdk-include={0}'
+ .format(spec['cuda'].prefix.include))
+ args.append('--with-gdk-nvml-lib={0}/stubs'
+ .format(spec['cuda'].prefix.lib64))
+
+ configure(*args)
+
+ make()
+
+ install_tree('bin', prefix.bin)
+ install_tree('lib', prefix.lib)
+ install_tree('Examples', join_path(prefix, 'Examples'))
+ install_tree('Tutorials', join_path(prefix, 'Tutorials'))
diff --git a/var/spack/repos/builtin/packages/cntk1bitsgd/package.py b/var/spack/repos/builtin/packages/cntk1bitsgd/package.py
new file mode 100644
index 0000000000..6d30792b09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cntk1bitsgd/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from os import listdir
+
+
+class Cntk1bitsgd(Package):
+ """CNTK1bitSGD is the header-only
+ 1-bit stochastic gradient descent (1bit-SGD) library for
+ the Computational Network Toolkit (CNTK)."""
+
+ homepage = "https://github.com/CNTK-components/CNTK1bitSGD"
+
+ version('master', git='https://github.com/CNTK-components/CNTK1bitSGD.git')
+ version('c8b77d', git='https://github.com/CNTK-components/CNTK1bitSGD.git',
+ commit='c8b77d6e325a4786547b27624890276c1483aed1')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.include)
+ for file in listdir('.'):
+ if file.endswith('.h'):
+ install(file, prefix.include)
diff --git a/var/spack/repos/builtin/packages/codar-cheetah/package.py b/var/spack/repos/builtin/packages/codar-cheetah/package.py
new file mode 100644
index 0000000000..de39fb2a79
--- /dev/null
+++ b/var/spack/repos/builtin/packages/codar-cheetah/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class CodarCheetah(Package):
+ """CODAR Cheetah:
+ The CODAR Experiment Harness for Exascale science applications.
+ """
+
+ homepage = "https://github.com/CODARcode/cheetah"
+ url = "https://github.com/CODARcode/cheetah/archive/v0.1.tar.gz"
+
+ version('0.1', '6918021f74fa7a2f1de26c0bb31a63ef')
+ version('develop', git='https://github.com/CODARcode/cheetah.git',
+ branch='master')
+
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('savanna')
+
+ def install(self, spec, prefix):
+ copy_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/coevp/package.py b/var/spack/repos/builtin/packages/coevp/package.py
new file mode 100644
index 0000000000..655f91062e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/coevp/package.py
@@ -0,0 +1,89 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Coevp(MakefilePackage):
+ """CoEVP is a scale-bridging proxy application for embedded viscoplasticity
+ applications. It is created and maintained by The Exascale Co-Design Center
+ for Materials in Extreme Environments (ExMatEx). The code is intended to
+ serve as a vehicle for co-design by allowing others to extend and/or
+ reimplement it as needed to test performance of new architectures,
+ programming models, etc.
+ Due to the size and complexity of the studied models, as well as
+ restrictions on distribution, the currently available LULESH proxy
+ application provides the coarse-scale model implementation and the ASPA
+ proxy application provides the adaptive sampling support."""
+
+ homepage = 'https://github.com/exmatex/CoEVP'
+
+ version('develop', git='https://github.com/exmatex/CoEVP.git',
+ branch='master')
+
+ variant('mpi', default=True, description='Build with MPI Support')
+ variant('silo', default=False, description='Build with silo Support')
+ variant('flann', default=False, description='Build with flann Support')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('silo', when='+silo')
+ depends_on('flann@1.8.1', when='+flann')
+ depends_on('lapack')
+
+ tags = ['proxy-app']
+
+ @property
+ def build_targets(self):
+ targets = []
+ if '+mpi' in self.spec:
+ targets.append('COEVP_MPI=yes')
+ else:
+ targets.append('COEVP_MPI=no')
+ if '+flann' in self.spec:
+ targets.append('FLANN=yes')
+ targets.append('FLANN_TARGET=')
+ targets.append('FLANN_LOC={0}'.format(
+ join_path(self.spec['flann'].prefix.include, 'flann')))
+ else:
+ targets.append('FLANN=no')
+ targets.append('REDIS=no')
+ if '+silo' in self.spec:
+ targets.append('SILO=yes')
+ targets.append('SILO_TARGET=')
+ targets.append('SILO_LOC={0}'.format(self.spec['silo'].prefix))
+ else:
+ targets.append('SILO=no')
+ targets.append('TWEMPROXY=no')
+ targets.append('LAPACK=%s' % self.spec['lapack'].libs.ld_flags)
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ mkdir(prefix.doc)
+ install('LULESH/lulesh', prefix.bin)
+ install('COPYRIGHT', prefix.doc)
+ install('README.md', prefix.doc)
+ install('CoEVP.pdf', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/cohmm/package.py b/var/spack/repos/builtin/packages/cohmm/package.py
new file mode 100644
index 0000000000..70e87c70ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cohmm/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Cohmm(MakefilePackage):
+ """An anticipated important use-case for next-generation supercomputing
+ is multiscale modeling, in which continuum equations for large-scale
+ material deformation are augmented with high-fidelity, fine-scale
+ simulations that provide constitutive data on demand.
+ """
+ tags = ['proxy-app']
+
+ homepage = "http://www.exmatex.org/cohmm.html"
+ url = "https://github.com/exmatex/CoHMM/archive/sad.tar.gz"
+
+ version('develop', git='https://github.com/exmatex/CoHMM.git',
+ branch='sad')
+
+ variant('openmp', default=True, description='Build with OpenMP Support')
+ variant('gnuplot', default=True, description='Enable gnu plot Support')
+ depends_on('gnuplot', when='+gnuplot')
+
+ def edit(self, spec, prefix):
+ if '+openmp' in spec:
+ filter_file('DO_OPENMP = O.*', 'DO_OPENMP = ON', 'Makefile')
+ if '+gnuplot' in spec:
+ filter_file('DO_GNUPLOT = O.*', 'DO_GNUPLOT = ON', 'Makefile')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.input)
+ mkdirp(prefix.doc)
+ install('cohmm', prefix.bin)
+ install('README.md', prefix.doc)
+ install('LICENSE.md', prefix.doc)
+ for files in glob.glob('input/*.*'):
+ install(files, prefix.input)
diff --git a/var/spack/repos/builtin/packages/coinhsl/package.py b/var/spack/repos/builtin/packages/coinhsl/package.py
new file mode 100644
index 0000000000..a97c0274d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/coinhsl/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Coinhsl(AutotoolsPackage):
+ """CoinHSL is a collection of linear algebra libraries (KB22, MA27,
+ MA28, MA54, MA57, MA64, MA77, MA86, MA97, MC19, MC34, MC64, MC68,
+ MC69, MC78, MC80, OF01, ZB01, ZB11) bundled for use with IPOPT and
+ other applications that use these HSL routines.
+
+ Note: CoinHSL is licensed software. You will need to request a
+ license from Research Councils UK and download a .tar.gz archive
+ of CoinHSL yourself. Spack will search your current directory for
+ the download file. Alternatively, add this file to a mirror so
+ that Spack can find it. For instructions on how to set up a
+ mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ # NOTE(oxberry1@llnl.gov): an HTTPS version of the URL below does not
+ # exist
+ homepage = "http://www.hsl.rl.ac.uk/ipopt/"
+ url = "file://{0}/coinhsl-archive-2014.01.17.tar.gz".format(os.getcwd())
+
+ version('2014.01.17', '9eb3dd40ed034814ed8dfee75b281180c1d9d2ae')
diff --git a/var/spack/repos/builtin/packages/comd/package.py b/var/spack/repos/builtin/packages/comd/package.py
new file mode 100644
index 0000000000..ad7689beee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/comd/package.py
@@ -0,0 +1,112 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import shutil
+
+
+class Comd(MakefilePackage):
+ """CoMD is a reference implementation of classical molecular dynamics
+ algorithms and workloads as used in materials science. It is created and
+ maintained by The Exascale Co-Design Center for Materials in Extreme
+ Environments (ExMatEx). The code is intended to serve as a vehicle for
+ co-design by allowing others to extend and/or reimplement it as needed to
+ test performance of new architectures, programming models, etc. New
+ versions of CoMD will be released to incorporate the lessons learned from
+ the co-design process."""
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "http://www.exmatex.org/comd.html"
+ url = "https://github.com/ECP-copa/CoMD/archive/v1.1.tar.gz"
+
+ version('1.1', '5051310a8d2c93cccba63de40bcfaa78')
+ version('develop', git='https://github.com/ECP-copa/CoMD', branch='master')
+
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('openmp', default=False, description='Build with OpenMP support')
+ variant('precision', default=True, description='Toggle Precesion Options')
+ variant('graphs', default=True, description='Enable graph visuals')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('graphviz', when='+graphs')
+
+ conflicts('+openmp', when='+mpi')
+
+ def edit(self, spec, prefix):
+ with working_dir('src-mpi') or working_dir('src-openmp'):
+ shutil.copy('Makefile.vanilla', 'Makefile')
+
+ @property
+ def build_targets(self):
+ targets = []
+ cflags = ' -std=c99 '
+ optflags = ' -g -O5 '
+ clib = ' -lm '
+ comd_variant = 'CoMD'
+ cc = spack_cc
+
+ if '+openmp' in self.spec:
+ targets.append('--directory=src-openmp')
+ comd_variant += '-openmp'
+ cflags += ' -fopenmp '
+ if '+mpi' in self.spec:
+ comd_variant += '-mpi'
+ targets.append('CC = {0}'.format(self.spec['mpi'].mpicc))
+ else:
+ targets.append('CC = {0}'.format('spack_cc'))
+
+ else:
+ targets.append('--directory=src-mpi')
+ if '~mpi' in self.spec:
+ comd_variant += '-serial'
+ targets.append('CC = {0}'.format(cc))
+ else:
+ comd_variant += '-mpi'
+ targets.append('CC = {0}'.format(self.spec['mpi'].mpicc))
+ if '+mpi' in self.spec:
+ cflags += '-DDO_MPI'
+ targets.append(
+ 'INCLUDES = {0}'.format(self.spec['mpi'].prefix.include))
+
+ if '+precision' in self.spec:
+ cflags += ' -DDOUBLE '
+ else:
+ cflags += ' -DSINGLE '
+
+ targets.append('CoMD_VARIANT = {0}'.format(comd_variant))
+ targets.append('CFLAGS = {0}'.format(cflags))
+ targets.append('OPTFLAGS = {0}'.format(optflags))
+ targets.append('C_LIB = {0}'.format(clib))
+
+ return targets
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('examples', prefix.examples)
+ install_tree('pots', prefix.pots)
+ mkdirp(prefix.doc)
+ install('README.md', prefix.doc)
+ install('LICENSE.md', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/compiz/package.py b/var/spack/repos/builtin/packages/compiz/package.py
index ec21f5b4f2..5387483879 100644
--- a/var/spack/repos/builtin/packages/compiz/package.py
+++ b/var/spack/repos/builtin/packages/compiz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Compiz(Package):
+class Compiz(AutotoolsPackage):
"""compiz - OpenGL window and compositing manager.
Compiz is an OpenGL compositing manager that use
@@ -55,9 +55,3 @@ class Compiz(Package):
depends_on('libpng')
depends_on('glib')
depends_on('gconf')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/compositeproto/package.py b/var/spack/repos/builtin/packages/compositeproto/package.py
index 1b3fbda0af..b4a041e7a2 100644
--- a/var/spack/repos/builtin/packages/compositeproto/package.py
+++ b/var/spack/repos/builtin/packages/compositeproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Compositeproto(Package):
+class Compositeproto(AutotoolsPackage):
"""Composite Extension.
This package contains header files and documentation for the composite
@@ -38,8 +38,3 @@ class Compositeproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/conduit/package.py b/var/spack/repos/builtin/packages/conduit/package.py
index 9715542126..6793a391c3 100644
--- a/var/spack/repos/builtin/packages/conduit/package.py
+++ b/var/spack/repos/builtin/packages/conduit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,6 +28,7 @@ import socket
import os
import llnl.util.tty as tty
+from os import environ as env
def cmake_cache_entry(name, value):
@@ -35,7 +36,7 @@ def cmake_cache_entry(name, value):
Helper that creates CMake cache entry strings used in
'host-config' files.
"""
- return 'set("{0}" "{1}" CACHE PATH "")\n\n'.format(name, value)
+ return 'set({0} "{1}" CACHE PATH "")\n\n'.format(name, value)
class Conduit(Package):
@@ -45,12 +46,19 @@ class Conduit(Package):
coupling between packages in-core, serialization, and I/O tasks."""
homepage = "http://software.llnl.gov/conduit"
- url = "https://github.com/LLNL/conduit/archive/v0.2.1.tar.gz"
+ url = "https://github.com/LLNL/conduit/releases/download/v0.3.0/conduit-v0.3.0-src-with-blt.tar.gz"
- version('0.2.1', 'cd2b42c76f70ac3546582b6da77c6028')
- version('0.2.0', 'd595573dedf55514c11d7391092fd760')
+ version('0.3.0', '6396f1d1ca16594d7c66d4535d4f898e')
+ # note: checksums on github automatic release source tars changed ~9/17
+ version('0.2.1', 'ed7358af3463ba03f07eddd6a6e626ff')
+ version('0.2.0', 'a7b398d493fd71b881a217993a9a29d4')
- version('master', git='https://github.com/LLNL/conduit.git')
+ maintainers = ['cyrush']
+
+ version('master',
+ git='https://github.com/LLNL/conduit.git',
+ branch="master",
+ submodules=True)
###########################################################################
# package variants
@@ -67,7 +75,7 @@ class Conduit(Package):
# variants for comm and i/o
variant("mpi", default=True, description="Build Conduit MPI Support")
variant("hdf5", default=True, description="Build Conduit HDF5 support")
- variant("silo", default=True, description="Build Conduit Silo support")
+ variant("silo", default=False, description="Build Conduit Silo support")
# variants for dev-tools (docs, etc)
variant("doc", default=False, description="Build Conduit's documentation")
@@ -79,31 +87,34 @@ class Conduit(Package):
#######################
# CMake
#######################
- # cmake 3.3.1 is the version we tested
- depends_on("cmake@3.3.1", when="+cmake")
+ # cmake 3.8.2 or newer
+ depends_on("cmake@3.8.2:", when="+cmake")
#######################
# Python
#######################
+ # we need a shared version of python b/c linking with static python lib
+ # causes duplicate state issues when running compiled python modules.
+ depends_on("python+shared")
extends("python", when="+python")
# TODO: blas and lapack are disabled due to build
# issues Cyrus experienced on OSX 10.11.6
- depends_on("py-numpy~blas~lapack", when="+python")
+ depends_on("py-numpy~blas~lapack", when="+python", type=('build', 'run'))
#######################
# I/O Packages
#######################
# TODO: cxx variant is disabled due to build issue Cyrus
# experienced on BGQ. When on, the static build tries
- # to link agains shared libs.
+ # to link against shared libs.
#
# we are not using hdf5's mpi or fortran features.
- depends_on("hdf5~cxx~mpi~fortran", when="+shared")
- depends_on("hdf5~shared~cxx~mpi~fortran", when="~shared")
+ depends_on("hdf5~cxx~mpi~fortran", when="+hdf5+shared")
+ depends_on("hdf5~shared~cxx~mpi~fortran", when="+hdf5~shared")
# we are not using silo's fortran features
- depends_on("silo~fortran", when="+shared")
- depends_on("silo~shared~fortran", when="~shared")
+ depends_on("silo~fortran", when="+silo+shared")
+ depends_on("silo~shared~fortran", when="+silo~shared")
#######################
# MPI
@@ -113,9 +124,25 @@ class Conduit(Package):
#######################
# Documentation related
#######################
- depends_on("py-sphinx", when="+python+doc")
+ depends_on("py-sphinx", when="+python+doc", type='build')
depends_on("doxygen", when="+doc")
+ def url_for_version(self, version):
+ """
+ Provide proper url
+ """
+ v = str(version)
+ if v == "0.2.0":
+ return "https://github.com/LLNL/conduit/archive/v0.2.0.tar.gz"
+ elif v == "0.2.1":
+ return "https://github.com/LLNL/conduit/archive/v0.2.1.tar.gz"
+ elif v == "0.3.0":
+ # conduit uses BLT (https://github.com/llnl/blt) as a submodule,
+ # since github does not automatically package source from
+ # submodules, conduit provides a custom src tarball
+ return "https://github.com/LLNL/conduit/releases/download/v0.3.0/conduit-v0.3.0-src-with-blt.tar.gz"
+ return url
+
def install(self, spec, prefix):
"""
Build and install Conduit.
@@ -125,7 +152,7 @@ class Conduit(Package):
cmake_args = []
# if we have a static build, we need to avoid any of
# spack's default cmake settings related to rpaths
- # (see: https://github.com/LLNL/spack/issues/2658)
+ # (see: https://github.com/spack/spack/issues/2658)
if "+shared" in spec:
cmake_args.extend(std_cmake_args)
else:
@@ -174,13 +201,13 @@ class Conduit(Package):
##############################################
if "+cmake" in spec:
- cmake_exe = join_path(spec['cmake'].prefix.bin, "cmake")
+ cmake_exe = spec['cmake'].command.path
else:
cmake_exe = which("cmake")
if cmake_exe is None:
msg = 'failed to find CMake (and cmake variant is off)'
raise RuntimeError(msg)
- cmake_exe = cmake_exe.command
+ cmake_exe = cmake_exe.path
host_cfg_fname = "%s-%s-%s.cmake" % (socket.gethostname(),
sys_type,
@@ -224,21 +251,15 @@ class Conduit(Package):
cfg.write("# Python Support\n")
if "+python" in spec:
- python_exe = join_path(spec['python'].prefix.bin, "python")
cfg.write("# Enable python module builds\n")
cfg.write(cmake_cache_entry("ENABLE_PYTHON", "ON"))
cfg.write("# python from spack \n")
- cfg.write(cmake_cache_entry("PYTHON_EXECUTABLE", python_exe))
+ cfg.write(cmake_cache_entry("PYTHON_EXECUTABLE",
+ spec['python'].command.path))
# install module to standard style site packages dir
# so we can support spack activate
- py_ver_short = "python{0}".format(spec["python"].version.up_to(2))
- pym_prefix = join_path("${CMAKE_INSTALL_PREFIX}",
- "lib",
- py_ver_short,
- "site-packages")
- # use pym_prefix as the install path
cfg.write(cmake_cache_entry("PYTHON_MODULE_INSTALL_PREFIX",
- pym_prefix))
+ site_packages_dir))
else:
cfg.write(cmake_cache_entry("ENABLE_PYTHON", "OFF"))
@@ -251,7 +272,7 @@ class Conduit(Package):
cfg.write(cmake_cache_entry("SPHINX_EXECUTABLE", sphinx_build_exe))
cfg.write("# doxygen from uberenv\n")
- doxygen_exe = join_path(spec['doxygen'].prefix.bin, "doxygen")
+ doxygen_exe = spec['doxygen'].command.path
cfg.write(cmake_cache_entry("DOXYGEN_EXECUTABLE", doxygen_exe))
else:
cfg.write(cmake_cache_entry("ENABLE_DOCS", "OFF"))
@@ -265,11 +286,8 @@ class Conduit(Package):
if "+mpi" in spec:
cfg.write(cmake_cache_entry("ENABLE_MPI", "ON"))
cfg.write(cmake_cache_entry("MPI_C_COMPILER", spec['mpi'].mpicc))
- # we use `mpicc` as `MPI_CXX_COMPILER` b/c we don't want to
- # introduce linking deps to the MPI C++ libs (we aren't using
- # C++ features of MPI) -- this happens with some versions of
- # OpenMPI
- cfg.write(cmake_cache_entry("MPI_CXX_COMPILER", spec['mpi'].mpicc))
+ cfg.write(cmake_cache_entry("MPI_CXX_COMPILER",
+ spec['mpi'].mpicxx))
cfg.write(cmake_cache_entry("MPI_Fortran_COMPILER",
spec['mpi'].mpifc))
else:
diff --git a/var/spack/repos/builtin/packages/constype/package.py b/var/spack/repos/builtin/packages/constype/package.py
index dcf88fdd55..731217b527 100644
--- a/var/spack/repos/builtin/packages/constype/package.py
+++ b/var/spack/repos/builtin/packages/constype/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Constype(Package):
+class Constype(AutotoolsPackage):
"""constype prints on the standard output the Sun code for the type of
display that the specified device is.
@@ -39,9 +39,3 @@ class Constype(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/converge/package.py b/var/spack/repos/builtin/packages/converge/package.py
index 429be8542d..7a17436ed3 100644
--- a/var/spack/repos/builtin/packages/converge/package.py
+++ b/var/spack/repos/builtin/packages/converge/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
-from distutils.dir_util import copy_tree
+import glob
import os
+from spack import *
+
class Converge(Package):
"""CONVERGE is a revolutionary computational fluid dynamics (CFD) program
@@ -37,27 +38,64 @@ class Converge(Package):
parameters. This grid generation method completely eliminates the need to
manually generate a grid. In addition, CONVERGE offers many other features
to expedite the setup process and to ensure that your simulations are as
- computationally efficient as possible.
-
- Note: CONVERGE is licensed software. You will need to create an account on
- the CONVERGE homepage and download CONVERGE yourself. Spack will search
- your current directory for the download file. Alternatively, add this file
- to a mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+ computationally efficient as possible."""
homepage = "https://www.convergecfd.com/"
- url = "file://%s/converge_install_2.3.16.tar.gz" % os.getcwd()
+ url = "https://download.convergecfd.com/download/CONVERGE_2.4/Full_Solver_Packages/converge_install_2.4.10.tar.gz"
+
+ # In order to view available versions, you need to register for an account:
+ # https://download.convergecfd.com/wp-login.php?action=register
- version('2.3.16', '8b80f1e73a63181c427c7732ad279986')
+ version('2.4.10', '53f5bd4bfb39005bebae46b8d6ee3ce6')
+ version('2.3.23', '2913c3e440f82db069051f8822115e5e')
+ version('2.2.0', 'd949cfe338c83ee736ca0be8f77df6bf',
+ url="https://download.convergecfd.com/download/CONVERGE_2.2/Full_Solver_Packages/converge_install_2.2.0_042916.tar.gz")
+ version('2.1.0', '327a917d46aa3bc8dee9511375ce112c',
+ url="https://download.convergecfd.com/download/CONVERGE_2.1/Full_Solver_Packages/converge_install_2.1.0_111615.tar.gz")
+ version('2.0.0', '06f017521c3abc1a922b136e83d606dd',
+ url="https://download.convergecfd.com/download/CONVERGE_2.0/Full_Solver_Packages/converge_install_2.0.0_090214.tar.gz")
variant('mpi', default=True, description='Build with MPI support')
- # The Converge Getting Started Guide recommends:
- # MPICH: 3.1.4
- # HP-MPI: 2.0.3+
- # OpenMPI: 1.6.*
+ # The following MPI libraries are compatible with CONVERGE:
+ #
+ # +--------------+---------+---------+---------+---------+---------+
+ # | MPI Packages | v2.0 | v2.1 | v2.2 | v2.3 | v2.4 |
+ # +--------------+---------+---------+---------+---------+---------+
+ # | HP-MPI | 2.0.3+ | 2.0.3+ | 2.0.3+ | 2.0.3+ | |
+ # | Intel MPI | | | | | 17.0.98 |
+ # | MPICH | ?.?.? | ?.?.? | 1.2.1 | 3.1.4 | ?.?.? |
+ # | MVAPICH2 | ?.?.? | | | | |
+ # | Open MPI | 1.0-1.4 | 1.0-1.4 | 1.5-1.8 | 1.5-1.8 | 1.10 |
+ # | Platform MPI | | | 9.1.2 | 9.1.2 | 9.1.2 |
+ # +--------------+---------+---------+---------+---------+---------+
+ #
+ # NOTE: HP-MPI was bought out by Platform MPI
+ #
+ # These version requirements are more strict than for most packages.
+ # Since the tarball comes with pre-compiled executables,
+ # the version of libmpi.so must match exactly, or else
+ # you will end up with missing libraries and symbols.
+
depends_on('mpi', when='+mpi')
+ # FIXME: Concretization is currently broken, so this causes:
+ # $ spack spec converge
+ # to crash. You must explicitly state what MPI version you want:
+ # $ spack spec converge@2.4.10 +mpi ^openmpi@:1.10
+ #
+ # TODO: Add version ranges for other MPI libraries
+ depends_on('openmpi@1.10.0:1.10.999', when='@2.4.0:2.4.999+mpi^openmpi')
+ depends_on('openmpi@1.5:1.8', when='@2.2:2.3+mpi^openmpi')
+ depends_on('openmpi@:1.4', when='@:2.1+mpi^openmpi')
+
+ # TODO: Add packages for hp-mpi and platform-mpi
+ # conflicts('^hp-mpi', when='@2.4:')
+ conflicts('^intel-mpi', when='@:2.3')
+ conflicts('^intel-parallel-studio+mpi', when='@:2.3')
+ # conflicts('^platform-mpi', when='@:2.1')
+ conflicts('^spectrum-mpi')
+
# Licensing
license_required = True
license_comment = '#'
@@ -65,5 +103,138 @@ class Converge(Package):
license_vars = ['RLM_LICENSE']
license_url = 'http://www.reprisesoftware.com/RLM_License_Administration.pdf'
+ def url_for_version(self, version):
+ url = "https://download.convergecfd.com/download/CONVERGE_{0}/Full_Solver_Packages/converge_install_{1}.tar.gz"
+ return url.format(version.up_to(2), version)
+
def install(self, spec, prefix):
- copy_tree('.', prefix)
+ # 2.0.0
+ # converge -> converge-2.0.0-hpmpi-090214
+ # converge-2.0.0-hpmpi-090214 -> libmpi.so.1, libmpio.so.1
+ # converge-2.0.0-mpich2-090214 -> libmpich.so.1.2
+ # converge-2.0.0-mvapich-090214 -> libibumad.so.1
+ # converge-2.0.0-openmpi-090214 -> libmpi.so.0
+ # converge-2.0.0-serial-090214
+ # make_surface
+ # post_convert
+
+ # 2.1.0
+ # converge -> converge-2.1.0-hpmpi-111615
+ # converge-2.1.0-hpmpi-111615 -> libmpi.so.1, libmpio.so.1
+ # converge-2.1.0-mpich2-111615 -> libmpich.so.1.2
+ # converge-2.1.0-openmpi-111615 -> libmpi.so.0
+ # converge-2.1.0-serial-111615
+ # make_surface
+ # post_convert
+
+ # 2.2.0
+ # converge -> converge-2.2.0-hpmpi-042916
+ # converge-2.2.0-hpmpi-042916 -> libmpi.so.1, libmpio.so.1
+ # converge-2.2.0-mpich2-042916
+ # converge-2.2.0-openmpi-042916 -> libmpi.so.1
+ # converge-2.2.0-pmpi-042916 -> libmpi.so.1, libmpio.so.1
+ # converge-2.2.0-serial-042916
+ # make_surface
+ # post_convert
+
+ # 2.3.23
+ # converge-2.3.23-hpmpi-linux-64 -> libmpi.so.1, libmpio.so.1
+ # converge-2.3.23-mpich2-linux-64 -> libmpi.so.12
+ # converge-2.3.23-openmpi-linux-64 -> libmpi.so.1
+ # converge-2.3.23-pmpi-linux-64 -> libmpi.so.1, libmpio.so.1
+ # converge-2.3.23-serial-linux-64
+ # make_surface_64
+ # post_convert_mpich_64 -> libmpi.so.12
+ # post_convert_ompi_64 -> libmpi.so.1
+ # post_convert_pmpi_64 -> libmpi.so.1, libmpio.so.1
+ # post_convert_serial_64
+
+ # 2.4.10
+ # converge-2.4.10-intel -> libmpi.so.12, libmpifort.so.12
+ # converge-2.4.10-mpich -> libmpi.so.12
+ # converge-2.4.10-ompi -> libmpi.so.12
+ # converge-2.4.10-pmpi -> libmpi.so.1, libmpio.so.1
+ # converge-2.4.10-serial
+ # make_surface_64
+ # post_convert_mpich_64 -> libmpi.so.12
+ # post_convert_ompi_64 -> libmpi.so.1
+ # post_convert_pmpi_64 -> libmpi.so.1
+ # post_convert_serial_64
+
+ # The CONVERGE tarball comes with binaries for several MPI libraries.
+ # Only install the binary that matches the MPI we are building with.
+ with working_dir('l_x86_64/bin'):
+ if '~mpi' in spec:
+ converge = glob.glob('converge-*-serial*')
+ post_convert = glob.glob('post_convert_serial*')
+ elif 'hp-mpi' in spec:
+ converge = glob.glob('converge-*-hpmpi*')
+ # No HP-MPI version of post_convert
+ post_convert = glob.glob('post_convert_serial*')
+ elif 'intel-mpi' in spec or 'intel-parallel-studio+mpi' in spec:
+ converge = glob.glob('converge-*-intel*')
+ # No Intel MPI version of post_convert
+ post_convert = glob.glob('post_convert_serial*')
+ elif 'mpich' in spec:
+ converge = glob.glob('converge-*-mpich*')
+ post_convert = glob.glob('post_convert_mpich*')
+ elif 'mvapich2' in spec:
+ converge = glob.glob('converge-*-mvapich*')
+ # MVAPICH2 hasn't been supported since CONVERGE
+ # came with a single serial post_convert
+ post_convert = glob.glob('post_convert')
+ elif 'openmpi' in spec:
+ converge = glob.glob('converge-*-o*mpi*')
+ post_convert = glob.glob('post_convert_o*mpi*')
+ elif 'platform-mpi' in spec:
+ converge = glob.glob('converge-*-pmpi*')
+ post_convert = glob.glob('post_convert_pmpi*')
+ else:
+ raise InstallError('Unsupported MPI provider')
+
+ make_surface = glob.glob('make_surface*')
+
+ # Old versions of CONVERGE come with a single serial post_convert
+ if not post_convert:
+ post_convert = glob.glob('post_convert')
+
+ # Make sure glob actually found something
+ if not converge:
+ raise InstallError('converge executable not found')
+ if not post_convert:
+ raise InstallError('post_convert executable not found')
+ if not make_surface:
+ raise InstallError('make_surface executable not found')
+
+ # Make sure glob didn't find multiple matches
+ if len(converge) > 1:
+ raise InstallError('multiple converge executables found')
+ if len(post_convert) > 1:
+ raise InstallError('multiple post_convert executables found')
+ if len(make_surface) > 1:
+ raise InstallError('multiple make_surface executables found')
+
+ converge = converge[0]
+ post_convert = post_convert[0]
+ make_surface = make_surface[0]
+
+ mkdir(prefix.bin)
+
+ # Install the executables
+ install(converge, join_path(prefix.bin, converge))
+ install(post_convert, join_path(prefix.bin, post_convert))
+ install(make_surface, join_path(prefix.bin, make_surface))
+
+ with working_dir(prefix.bin):
+ # Create generic symlinks to all executables
+ if not os.path.exists('converge'):
+ os.symlink(converge, 'converge')
+ if not os.path.exists('post_convert'):
+ os.symlink(post_convert, 'post_convert')
+ if not os.path.exists('make_surface'):
+ os.symlink(make_surface, 'make_surface')
+
+ def setup_environment(self, spack_env, run_env):
+ # CONVERGE searches for a valid license file in:
+ # $CONVERGE_ROOT/license/license.lic
+ run_env.set('CONVERGE_ROOT', self.prefix)
diff --git a/var/spack/repos/builtin/packages/coreutils/package.py b/var/spack/repos/builtin/packages/coreutils/package.py
index 94cfa11341..fa4298a42a 100644
--- a/var/spack/repos/builtin/packages/coreutils/package.py
+++ b/var/spack/repos/builtin/packages/coreutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,16 @@
from spack import *
-class Coreutils(Package):
+class Coreutils(AutotoolsPackage):
"""The GNU Core Utilities are the basic file, shell and text
manipulation utilities of the GNU operating system. These are
the core utilities which are expected to exist on every
operating system.
"""
homepage = "http://www.gnu.org/software/coreutils/"
- url = "http://ftp.gnu.org/gnu/coreutils/coreutils-8.23.tar.xz"
+ url = "http://ftp.gnu.org/gnu/coreutils/coreutils-8.26.tar.xz"
+ version('8.26', 'd5aa2072f662d4118b9f4c63b94601a6')
version('8.23', 'abed135279f87ad6762ce57ff6d89c41')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/corset/package.py b/var/spack/repos/builtin/packages/corset/package.py
new file mode 100644
index 0000000000..7b5ef695cb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/corset/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Corset(Package):
+ """Corset is a command-line software program to go from a de novo
+ transcriptome assembly to gene-level counts."""
+
+ homepage = "https://github.com/Oshlack/Corset/wiki"
+ url = "https://github.com/Oshlack/Corset/releases/download/version-1.06/corset-1.06-linux64.tar.gz"
+
+ version('1.06', '0a6d0bb1f2d1bdbcb8b47656a7f12f23')
+
+ def url_for_version(self, version):
+ url = 'https://github.com/Oshlack/Corset/releases/download/version-{0}/corset-{0}-linux64.tar.gz'
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('corset', prefix.bin)
+ install('corset_fasta_ID_changer', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cosmomc/Makefile.patch b/var/spack/repos/builtin/packages/cosmomc/Makefile.patch
new file mode 100644
index 0000000000..f7241af3d0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cosmomc/Makefile.patch
@@ -0,0 +1,26 @@
+--- a/Makefile
++++ b/Makefile
+@@ -7,8 +7,7 @@
+
+ rebuild: clean delete cosmomc
+
+-cosmomc: BUILD ?= MPI
+-cosmomc_debug: BUILD ?= MPI
++BUILD ?= MPI
+
+ getdist: ./source/*.*90
+ cd ./source && make getdist BUILD=$(BUILD)
+--- a/source/Makefile
++++ b/source/Makefile
+@@ -57,11 +57,7 @@
+ #commented above is (I think) for Mac; this is standard linux (sudo apt-get install liblapack-dev)
+ LAPACKL = -lblas -llapack
+
+-#march native does not work on Mac, otherwise use (comment out if your cluster is inhomogeneous)
+-ifneq ($(shell uname -s),Darwin)
+-#native optimization does not work on Mac
+ FFLAGS+=-march=native
+-endif
+
+ endif
+
diff --git a/var/spack/repos/builtin/packages/cosmomc/errorstop.patch b/var/spack/repos/builtin/packages/cosmomc/errorstop.patch
new file mode 100644
index 0000000000..b23e925daf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cosmomc/errorstop.patch
@@ -0,0 +1,11 @@
+--- a/camb/constants.f90
++++ b/camb/constants.f90
+@@ -87,7 +87,7 @@
+ global_error_message=''
+ end if
+ if (present(id)) then
+- if (id==0) error stop('Error id must be non-zero')
++ if (id==0) error stop
+ global_error_flag=id
+ else
+ global_error_flag=-1
diff --git a/var/spack/repos/builtin/packages/cosmomc/package.py b/var/spack/repos/builtin/packages/cosmomc/package.py
new file mode 100644
index 0000000000..c3788c53ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cosmomc/package.py
@@ -0,0 +1,210 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import fnmatch
+import os
+
+
+class Cosmomc(Package):
+ """CosmoMC is a Fortran 2008 Markov-Chain Monte-Carlo (MCMC) engine
+ for exploring cosmological parameter space, together with
+ Fortran and python code for analysing Monte-Carlo samples and
+ importance sampling (plus a suite of scripts for building grids
+ of runs, plotting and presenting results)."""
+
+ homepage = "http://cosmologist.info/cosmomc/"
+ url = "https://github.com/cmbant/CosmoMC/archive/Nov2016.tar.gz"
+
+ version('2016.11', '98620cb746352f68fb0c1196e9a070ac')
+ version('2016.06', '92dc651d1407cca6ea9228992165f5cb')
+
+ def url_for_version(self, version):
+ names = {'2016.11': "Nov2016",
+ '2016.06': "June2016"}
+ return ("https://github.com/cmbant/CosmoMC/archive/%s.tar.gz" %
+ names[str(version)])
+
+ variant('mpi', default=True, description='Enable MPI support')
+ variant('planck', default=False,
+ description='Enable Planck Likelihood code and baseline data')
+ variant('python', default=True, description='Enable Python bindings')
+
+ extends('python', when='+python')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('planck-likelihood', when='+planck')
+ depends_on('py-matplotlib', type=('build', 'run'), when='+python')
+ depends_on('py-numpy', type=('build', 'run'), when='+python')
+ depends_on('py-pandas', type=('build', 'run'), when='+python')
+ depends_on('py-scipy', type=('build', 'run'), when='+python')
+ depends_on('py-six', type=('build', 'run'), when='+python')
+ depends_on('python @2.7:2.999,3.4:', type=('build', 'run'), when='+python')
+
+ patch('Makefile.patch')
+ patch('errorstop.patch')
+
+ parallel = False
+
+ def install(self, spec, prefix):
+ # Clean up environment to avoid configure problems
+ os.environ.pop('LINKMPI', '')
+ os.environ.pop('NERSC_HOST', '')
+ os.environ.pop('NONCLIKLIKE', '')
+ os.environ.pop('PICO', '')
+ os.environ.pop('PRECISION', '')
+ os.environ.pop('RECOMBINATION', '')
+ os.environ.pop('WMAP', '')
+
+ # Set up Planck data if requested
+ clikdir = join_path('data', 'clik')
+ try:
+ os.remove(clikdir)
+ except OSError:
+ pass
+ if '+planck' in spec:
+ os.symlink(join_path(os.environ['CLIK_DATA'], 'plc_2.0'), clikdir)
+ else:
+ os.environ.pop('CLIK_DATA', '')
+ os.environ.pop('CLIK_PATH', '')
+ os.environ.pop('CLIK_PLUGIN', '')
+
+ # Choose compiler
+ # Note: Instead of checking the compiler vendor, we should
+ # rewrite the Makefile to use Spack's options all the time
+ if spec.satisfies('%gcc'):
+ if not spec.satisfies('%gcc@6:'):
+ raise InstallError(
+ "When using GCC, "
+ "CosmoMC requires version gcc@6: for building")
+ choosecomp = 'ifortErr=1' # choose gfortran
+ elif spec.satisfies('%intel'):
+ if not spec.satifies('%intel@14:'):
+ raise InstallError(
+ "When using the Intel compiler, "
+ "CosmoMC requires version intel@14: for building")
+ choosecomp = 'ifortErr=0' # choose ifort
+ else:
+ raise InstallError("Only GCC and Intel compilers are supported")
+
+ # Configure MPI
+ if '+mpi' in spec:
+ wantmpi = 'BUILD=MPI'
+ mpif90 = 'MPIF90C=%s' % spec['mpi'].mpifc
+ else:
+ wantmpi = 'BUILD=NOMPI'
+ mpif90 = 'MPIF90C='
+
+ # Choose BLAS and LAPACK
+ lapack = ("LAPACKL=%s" %
+ (spec['lapack'].libs + spec['blas'].libs).ld_flags)
+
+ # Build
+ make(choosecomp, wantmpi, mpif90, lapack)
+
+ # Install
+ mkdirp(prefix.bin)
+ install('cosmomc', prefix.bin)
+ root = join_path(prefix.share, 'cosmomc')
+ mkdirp(root)
+ entries = [
+ 'batch1',
+ 'batch2',
+ 'batch3',
+ 'camb',
+ 'chains',
+ 'clik_latex.paramnames',
+ 'clik_units.paramnames',
+ 'cosmomc.cbp',
+ 'data',
+ 'distgeneric.ini',
+ 'distparams.ini',
+ 'disttest.ini',
+ 'docs',
+ 'job_script',
+ 'job_script_MOAB',
+ 'job_script_SLURM',
+ 'paramnames',
+ 'params_generic.ini',
+ 'planck_covmats',
+ 'scripts',
+ # don't copy 'source'
+ 'test.ini',
+ 'test_pico.ini',
+ 'test_planck.ini',
+ 'tests',
+ ]
+ if '+python' in spec:
+ entries += ['python']
+ for entry in entries:
+ if os.path.isfile(entry):
+ install(entry, root)
+ else:
+ install_tree(entry, join_path(root, entry))
+ for dirpath, dirnames, filenames in os.walk(prefix):
+ for filename in fnmatch.filter(filenames, '*~'):
+ os.remove(os.path.join(dirpath, filename))
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ prefix = self.prefix
+ spec = self.spec
+
+ os.environ.pop('LINKMPI', '')
+ os.environ.pop('NERSC_HOST', '')
+ os.environ.pop('NONCLIKLIKE', '')
+ os.environ.pop('PICO', '')
+ os.environ.pop('PRECISION', '')
+ os.environ.pop('RECOMBINATION', '')
+ os.environ.pop('WMAP', '')
+
+ os.environ.pop('COSMOMC_LOCATION', '')
+ os.environ.pop('PLC_LOCATION', '')
+
+ os.environ.pop('CLIKPATH', '')
+ os.environ.pop('PLANCKLIKE', '')
+
+ exe = spec['cosmomc'].command.path
+ args = []
+ if '+mpi' in spec:
+ # Add mpirun prefix
+ args = ['-np', '1', exe]
+ exe = join_path(spec['mpi'].prefix.bin, 'mpiexec')
+ cosmomc = Executable(exe)
+ with working_dir('spack-check', create=True):
+ for entry in [
+ 'camb',
+ 'chains',
+ 'data',
+ 'paramnames',
+ 'planck_covmats',
+ ]:
+ os.symlink(join_path(prefix.share, 'cosmomc', entry), entry)
+ inifile = join_path(prefix.share, 'cosmomc', 'test.ini')
+ cosmomc(*(args + [inifile]))
+ if '+planck' in spec:
+ inifile = join_path(prefix.share, 'cosmomc', 'test_planck.ini')
+ cosmomc(*(args + [inifile]))
diff --git a/var/spack/repos/builtin/packages/cosp2/package.py b/var/spack/repos/builtin/packages/cosp2/package.py
new file mode 100644
index 0000000000..2bd69e73d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cosp2/package.py
@@ -0,0 +1,74 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import shutil
+
+
+class Cosp2(MakefilePackage):
+ """Proxy Application. CoSP2 represents a sparse linear algebra
+ parallel algorithm for calculating the density matrix in electronic
+ tructure theory. The algorithm is based on a recursive second-order
+ Fermi-Operator expansion method (SP2) and is tailored for density
+ functional based tight-binding calculations of non-metallic systems.
+ """
+
+ tags = ['proxy-app']
+
+ homepage = "http://www.exmatex.org/cosp2.html"
+ url = "https://github.com/exmatex/CoSP2/archive/master.tar.gz"
+
+ version('master', git='https://github.com/exmatex/CoSP2.git',
+ description='master')
+
+ variant('double', default=True,
+ description='Build with double precision.')
+ variant('mpi', default=True, description='Build with MPI Support')
+
+ depends_on('mpi', when='+mpi')
+
+ build_directory = 'src-mpi'
+
+ def edit(self, spec, prefix):
+ cc = spack_cc
+
+ if '+mpi' in spec:
+ cc = spec['mpi'].mpicc
+
+ with working_dir(self.build_directory):
+ makefile = FileFilter('Makefile.vanilla')
+ makefile.filter(r'^CC\s*=.*', 'CC = {0}'.format(cc))
+
+ if '+double' in spec:
+ filter_file('DOUBLE_PRECISION = O.*', 'DOUBLE_PRECISION = OFF',
+ 'Makefile.vanilla')
+ shutil.copy('Makefile.vanilla', 'Makefile')
+
+ def install(self, spec, prefix):
+ install_tree('bin/', prefix.bin)
+ install_tree('examples/', prefix.examples)
+ install_tree('doc/', prefix.doc)
+ install('src-mpi/Doxyfile', prefix.doc)
+ install('README.md', prefix.doc)
+ install('LICENSE.md', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/cp2k/package.py b/var/spack/repos/builtin/packages/cp2k/package.py
index 3a175ea1a2..53eb29f336 100644
--- a/var/spack/repos/builtin/packages/cp2k/package.py
+++ b/var/spack/repos/builtin/packages/cp2k/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,6 +37,7 @@ class Cp2k(Package):
homepage = 'https://www.cp2k.org'
url = 'https://sourceforge.net/projects/cp2k/files/cp2k-3.0.tar.bz2'
+ version('4.1', 'b0534b530592de15ac89828b1541185e')
version('3.0', 'c05bc47335f68597a310b1ed75601d35')
variant('mpi', default=True, description='Enable MPI support')
@@ -47,14 +48,18 @@ class Cp2k(Package):
depends_on('lapack')
depends_on('blas')
depends_on('fftw')
- depends_on('libint@:1.2', when='@3.0')
+ depends_on('libint@:1.2', when='@3.0,4.1')
- depends_on('mpi', when='+mpi')
+ depends_on('mpi@2:', when='+mpi')
depends_on('scalapack', when='+mpi')
depends_on('plumed+shared+mpi', when='+plumed+mpi')
depends_on('plumed+shared~mpi', when='+plumed~mpi')
- depends_on('pexsi', when='+mpi')
- depends_on('wannier90', when='+mpi')
+ depends_on('pexsi+fortran', when='+mpi')
+
+ # Apparently cp2k@4.1 needs an "experimental" version of libwannier.a
+ # which is only available contacting the developer directly. See INSTALL
+ # in the stage of cp2k@4.1
+ depends_on('wannier90', when='@3.0+mpi')
depends_on('elpa', when='+mpi')
# TODO : add dependency on libsmm, libxsmm
@@ -75,32 +80,58 @@ class Cp2k(Package):
optflags = {
'gcc': ['-O2',
'-ffast-math',
- '-ffree-form',
- '-ffree-line-length-none',
'-ftree-vectorize',
'-funroll-loops',
'-mtune=native'],
'intel': ['-O2',
'-pc64',
- '-unroll',
- '-heap-arrays 64']
+ '-unroll']
}
+
+ dflags = ['-DNDEBUG']
+
cppflags = [
'-D__FFTW3',
'-D__LIBINT',
- '-I' + spec['fftw'].prefix.include
+ '-D__LIBINT_MAX_AM=6',
+ '-D__LIBDERIV_MAX_AM1=5',
+ spec['fftw'].headers.cpp_flags
]
+
+ if '^mpi@3:' in spec:
+ cppflags.append('-D__MPI_VERSION=3')
+ elif '^mpi@2:' in spec:
+ cppflags.append('-D__MPI_VERSION=2')
+
+ if '^intel-mkl' in spec:
+ cppflags.append('-D__FFTSG')
+
+ cflags = copy.deepcopy(optflags[self.spec.compiler.name])
+ cxxflags = copy.deepcopy(optflags[self.spec.compiler.name])
fcflags = copy.deepcopy(optflags[self.spec.compiler.name])
fcflags.extend([
- '-I' + spec['fftw'].prefix.include
+ '-ffree-form',
+ '-ffree-line-length-none',
+ spec['fftw'].headers.cpp_flags
])
- fftw = find_libraries(['libfftw3'], root=spec['fftw'].prefix.lib)
+
+ if '%intel' in spec:
+ cflags.append('-fp-model precise')
+ cxxflags.append('-fp-model precise')
+ fcflags.extend(['-fp-model source', '-heap-arrays 64'])
+
+ fftw = find_libraries('libfftw3', root=spec['fftw'].prefix.lib)
ldflags = [fftw.search_flags]
+
+ if 'superlu-dist@4.3' in spec:
+ ldflags = ['-Wl,--allow-multiple-definition'] + ldflags
+
libs = [
join_path(spec['libint'].prefix.lib, 'libint.so'),
join_path(spec['libint'].prefix.lib, 'libderiv.so'),
join_path(spec['libint'].prefix.lib, 'libr12.so')
]
+
if '+plumed' in self.spec:
# Include Plumed.inc in the Makefile
mkf.write('include {0}\n'.format(
@@ -111,6 +142,7 @@ class Cp2k(Package):
'Plumed.inc')
))
# Add required macro
+ dflags.extend(['-D__PLUMED2'])
cppflags.extend(['-D__PLUMED2'])
libs.extend([
join_path(self.spec['plumed'].prefix.lib,
@@ -125,18 +157,20 @@ class Cp2k(Package):
# ${CPP} <file>.F > <file>.f90
#
# and use `-fpp` instead
- mkf.write('CPP = # {0.compiler.cc} -P\n'.format(self))
- mkf.write('AR = xiar -r\n')
+ mkf.write('CPP = # {0.compiler.cc} -P\n\n'.format(self))
+ mkf.write('AR = xiar -r\n\n')
else:
- mkf.write('CPP = {0.compiler.cc} -E\n'.format(self))
- mkf.write('AR = ar -r\n')
+ mkf.write('CPP = {0.compiler.cc} -E\n\n'.format(self))
+ mkf.write('AR = ar -r\n\n')
fc = self.compiler.fc if '~mpi' in spec else self.spec['mpi'].mpifc
mkf.write('FC = {0}\n'.format(fc))
mkf.write('LD = {0}\n'.format(fc))
# Intel
if '%intel' in self.spec:
cppflags.extend([
- '-D__INTEL_COMPILER',
+ '-D__INTEL',
+ '-D__HAS_ISO_C_BINDING',
+ '-D__USE_CP2K_TRACE',
'-D__MKL'
])
fcflags.extend([
@@ -149,25 +183,28 @@ class Cp2k(Package):
cppflags.extend([
'-D__parallel',
'-D__LIBPEXSI',
- '-D__WANNIER90',
'-D__ELPA3',
'-D__SCALAPACK'
])
+ if 'wannier90' in spec:
+ cppflags.append('-D__WANNIER90')
+
fcflags.extend([
+ # spec['elpa:fortran'].headers.cpp_flags
'-I' + join_path(
spec['elpa'].prefix,
'include',
'elpa-{0}'.format(str(spec['elpa'].version)),
'modules'
),
+ # spec[pexsi:fortran].headers.cpp_flags
'-I' + join_path(spec['pexsi'].prefix, 'fortran')
])
- scalapack = spec['scalapack'].scalapack_libs
+ scalapack = spec['scalapack'].libs
ldflags.append(scalapack.search_flags)
libs.extend([
join_path(spec['elpa'].prefix.lib,
'libelpa.{0}'.format(dso_suffix)),
- join_path(spec['wannier90'].prefix.lib, 'libwannier.a'),
join_path(spec['pexsi'].prefix.lib, 'libpexsi.a'),
join_path(spec['superlu-dist'].prefix.lib,
'libsuperlu_dist.a'),
@@ -180,21 +217,40 @@ class Cp2k(Package):
'libmetis.{0}'.format(dso_suffix)
),
])
+
+ if 'wannier90' in spec:
+ wannier = join_path(
+ spec['wannier90'].prefix.lib, 'libwannier.a'
+ )
+ libs.append(wannier)
+
libs.extend(scalapack)
- libs.extend(self.spec['mpi'].mpicxx_shared_libs)
+ libs.extend(self.spec['mpi:cxx'].libs)
libs.extend(self.compiler.stdcxx_libs)
# LAPACK / BLAS
- lapack = spec['lapack'].lapack_libs
- blas = spec['blas'].blas_libs
+ lapack = spec['lapack'].libs
+ blas = spec['blas'].libs
ldflags.append((lapack + blas).search_flags)
libs.extend([str(x) for x in (fftw, lapack, blas)])
+ dflags.extend(cppflags)
+ cflags.extend(cppflags)
+ cxxflags.extend(cppflags)
+ fcflags.extend(cppflags)
+
# Write compiler flags to file
- mkf.write('CPPFLAGS = {0}\n'.format(' '.join(cppflags)))
- mkf.write('FCFLAGS = {0}\n'.format(' '.join(fcflags)))
- mkf.write('LDFLAGS = {0}\n'.format(' '.join(ldflags)))
- mkf.write('LIBS = {0}\n'.format(' '.join(libs)))
+ mkf.write('DFLAGS = {0}\n\n'.format(' '.join(dflags)))
+ mkf.write('CPPFLAGS = {0}\n\n'.format(' '.join(cppflags)))
+ mkf.write('CFLAGS = {0}\n\n'.format(' '.join(cflags)))
+ mkf.write('CXXFLAGS = {0}\n\n'.format(' '.join(cxxflags)))
+ mkf.write('FCFLAGS = {0}\n\n'.format(' '.join(fcflags)))
+ mkf.write('LDFLAGS = {0}\n\n'.format(' '.join(ldflags)))
+ if '%intel' in spec:
+ mkf.write('LDFLAGS_C = {0}\n\n'.format(
+ ' '.join(ldflags) + ' -nofor_main')
+ )
+ mkf.write('LIBS = {0}\n\n'.format(' '.join(libs)))
with working_dir('makefiles'):
# Apparently the Makefile bases its paths on PWD
diff --git a/var/spack/repos/builtin/packages/cppad/package.py b/var/spack/repos/builtin/packages/cppad/package.py
index 1ec31bbeef..3b503fe1c8 100644
--- a/var/spack/repos/builtin/packages/cppad/package.py
+++ b/var/spack/repos/builtin/packages/cppad/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,16 +29,11 @@ class Cppad(CMakePackage):
"""A Package for Differentiation of C++ Algorithms."""
homepage = "https://www.coin-or.org/CppAD/"
+ url = "http://www.coin-or.org/download/source/CppAD/cppad-20170114.gpl.tgz"
version('20170114', '565a534dc813fa1289764222cd8c11ea')
version('develop', git='https://github.com/coin-or/CppAD.git')
- depends_on('cmake', type='build')
-
- def url_for_version(self, version):
- """Handle version-based custom URLs."""
- return "http://www.coin-or.org/download/source/CppAD/cppad-%s.gpl.tgz" % (version)
-
def cmake_args(self):
# This package does not obey CMAKE_INSTALL_PREFIX
args = [
diff --git a/var/spack/repos/builtin/packages/cppcheck/package.py b/var/spack/repos/builtin/packages/cppcheck/package.py
index fd48fcb7e3..a9933920a9 100644
--- a/var/spack/repos/builtin/packages/cppcheck/package.py
+++ b/var/spack/repos/builtin/packages/cppcheck/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,18 +23,23 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import os
+import shutil
class Cppcheck(Package):
"""A tool for static C/C++ code analysis."""
homepage = "http://cppcheck.sourceforge.net/"
- url = "http://downloads.sourceforge.net/project/cppcheck/cppcheck/1.68/cppcheck-1.68.tar.bz2"
+ url = "https://downloads.sourceforge.net/project/cppcheck/cppcheck/1.78/cppcheck-1.78.tar.bz2"
+ version('1.78', 'f02d0ee0a4e71023703c6c5efff6cf9d')
+ version('1.72', '2bd36f91ae0191ef5273bb7f6dc0d72e')
version('1.68', 'c015195f5d61a542f350269030150708')
def install(self, spec, prefix):
# cppcheck does not have a configure script
- make()
+ make("CFGDIR=%s" % os.path.join(prefix, 'cfg'))
# manually install the final cppcheck binary
mkdirp(prefix.bin)
install('cppcheck', prefix.bin)
+ shutil.copytree('cfg', os.path.join(prefix, 'cfg'))
diff --git a/var/spack/repos/builtin/packages/cpprestsdk/package.py b/var/spack/repos/builtin/packages/cpprestsdk/package.py
new file mode 100644
index 0000000000..a92b49c7a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cpprestsdk/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cpprestsdk(CMakePackage):
+ """The C++ REST SDK is a Microsoft project for cloud-based client-server
+ communication in native code using a modern asynchronous C++ API design.
+ This project aims to help C++ developers connect to and interact with
+ services. """
+
+ homepage = "https://github.com/Microsoft/cpprestsdk"
+ url = "https://github.com/Microsoft/cpprestsdk/archive/v2.9.1.tar.gz"
+
+ version('2.9.1', 'c3dd67d8cde8a65c2e994e2ede4439a2')
+
+ depends_on('boost')
+
+ root_cmakelists_dir = 'Release'
diff --git a/var/spack/repos/builtin/packages/cppunit/package.py b/var/spack/repos/builtin/packages/cppunit/package.py
index 78956798b5..ef6fa6ee24 100644
--- a/var/spack/repos/builtin/packages/cppunit/package.py
+++ b/var/spack/repos/builtin/packages/cppunit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/cppzmq/package.py b/var/spack/repos/builtin/packages/cppzmq/package.py
new file mode 100644
index 0000000000..689e3924de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cppzmq/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cppzmq(CMakePackage):
+ """C++ binding for 0MQ"""
+
+ homepage = "http://www.zeromq.org"
+ url = "https://github.com/zeromq/cppzmq/archive/v4.2.2.tar.gz"
+
+ version('develop', branch='master',
+ git='https://github.com/zeromq/cppzmq.git')
+
+ version('4.2.2', 'bd809b47296e77fe9f192bd9dafd5cc3')
+
+ depends_on('cmake@3.0.0:', type='build')
+ depends_on('zeromq@4.2.2')
diff --git a/var/spack/repos/builtin/packages/cram/package.py b/var/spack/repos/builtin/packages/cram/package.py
index bef26cdcbd..73a8584572 100644
--- a/var/spack/repos/builtin/packages/cram/package.py
+++ b/var/spack/repos/builtin/packages/cram/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,13 @@
from spack import *
-class Cram(Package):
+class Cram(CMakePackage):
"""Cram runs many small MPI jobs inside one large MPI job."""
homepage = "https://github.com/llnl/cram"
url = "http://github.com/llnl/cram/archive/v1.0.1.tar.gz"
version('1.0.1', 'c73711e945cf5dc603e44395f6647f5e')
- extends('python')
- depends_on("mpi")
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake(".", *std_cmake_args)
- make()
- make("install")
+ extends('python@2.7:')
+ depends_on('mpi')
+ depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/cryptopp/package.py b/var/spack/repos/builtin/packages/cryptopp/package.py
index c92f262a9a..c8fe6968a7 100644
--- a/var/spack/repos/builtin/packages/cryptopp/package.py
+++ b/var/spack/repos/builtin/packages/cryptopp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,6 +36,7 @@ class Cryptopp(Package):
"""
homepage = "http://www.cryptopp.com"
+ url = "http://www.cryptopp.com/cryptopp563.zip"
version('5.6.3', '3c5b70e2ec98b7a24988734446242d07')
version('5.6.2', '7ed022585698df48e65ce9218f6c6a67')
diff --git a/var/spack/repos/builtin/packages/cscope/package.py b/var/spack/repos/builtin/packages/cscope/package.py
index 73017ffc57..d7e7d29935 100644
--- a/var/spack/repos/builtin/packages/cscope/package.py
+++ b/var/spack/repos/builtin/packages/cscope/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,5 +33,10 @@ class Cscope(AutotoolsPackage):
version('15.8b', '8f9409a238ee313a96f9f87fe0f3b176')
- # Can be configured to use flex (not necessary)
- # ./configure --with-flex
+ depends_on('ncurses')
+
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
+ depends_on('pkg-config', type='build')
+
+ build_targets = ['CURSES_LIBS=-lncursesw']
diff --git a/var/spack/repos/builtin/packages/csdp/package.py b/var/spack/repos/builtin/packages/csdp/package.py
new file mode 100644
index 0000000000..a242f3b0c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/csdp/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Csdp(MakefilePackage):
+ """CSDP is a library of routines that implements a predictor corrector
+ variant of the semidefinite programming algorithm of Helmberg, Rendl,
+ Vanderbei, and Wolkowicz"""
+
+ homepage = "https://projects.coin-or.org/Csdp"
+ url = "http://www.coin-or.org/download/source/Csdp/Csdp-6.1.1.tgz"
+
+ version('6.1.1', '8388e8988e337bb5c1291068828de801')
+
+ depends_on('atlas')
+
+ def edit(self, spec, prefix):
+ mkdirp(prefix.bin)
+ makefile = FileFilter('Makefile')
+ makefile.filter('/usr/local/bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cub/package.py b/var/spack/repos/builtin/packages/cub/package.py
new file mode 100644
index 0000000000..1ca42f8e91
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cub/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cub(Package):
+ """CUB is a C++ header library of cooperative threadblock primitives
+ and other utilities for CUDA kernel programming."""
+
+ homepage = "https://nvlabs.github.com/cub"
+ url = "https://github.com/NVlabs/cub/archive/1.6.4.zip"
+
+ version('1.7.1', '028ac43922a4538596338ad5aef0f0c4')
+ version('1.6.4', '924fc12c0efb17264c3ad2d611ed1c51')
+ version('1.4.1', '74a36eb84e5b5f0bf54aa3df39f660b2')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.include)
+ install_tree('cub', join_path(prefix.include, 'cub'))
diff --git a/var/spack/repos/builtin/packages/cube/package.py b/var/spack/repos/builtin/packages/cube/package.py
index 9cea3c40e8..4f1f643bf2 100644
--- a/var/spack/repos/builtin/packages/cube/package.py
+++ b/var/spack/repos/builtin/packages/cube/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Cube(Package):
+class Cube(AutotoolsPackage):
"""Cube the profile viewer for Score-P and Scalasca profiles. It displays a
multi-dimensional performance space consisting of the dimensions:
- performance metric
@@ -36,26 +36,31 @@ class Cube(Package):
homepage = "http://www.scalasca.org/software/cube-4.x/download.html"
url = "http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz"
- version('4.3.4', '50f73060f55311cb12c5b3cb354d59fa',
- url='http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-4.3.4.tar.gz')
- version('4.3.3', '07e109248ed8ffc7bdcce614264a2909',
- url='http://apps.fz-juelich.de/scalasca/releases/cube/4.3/dist/cube-4.3.3.tar.gz')
- version('4.2.3', '8f95b9531f5a8f8134f279c2767c9b20',
- url="http://apps.fz-juelich.de/scalasca/releases/cube/4.2/dist/cube-4.2.3.tar.gz")
+ version('4.3.5', 'e5dce986e3c6381ea3a5fcb66c553adc')
+ version('4.3.4', '50f73060f55311cb12c5b3cb354d59fa')
+ version('4.3.3', '07e109248ed8ffc7bdcce614264a2909')
+
+ version('4.2.3', '8f95b9531f5a8f8134f279c2767c9b20')
variant('gui', default=False, description='Build CUBE GUI')
depends_on('zlib')
- depends_on('qt@4.6:', when='+gui')
- def install(self, spec, prefix):
- configure_args = ["--prefix=%s" % prefix,
- "--without-paraver"]
+ depends_on('qt@5:', when='@4.3.0:4.3.999 +gui')
+ depends_on('qt@4.8:', when='@4.2.0:4.2.999 +gui')
+
+ def url_for_version(self, version):
+ return 'http://apps.fz-juelich.de/scalasca/releases/cube/{0}/dist/cube-{1}.tar.gz'.format(version.up_to(2), version)
+
+ def configure_args(self):
+ spec = self.spec
+
+ configure_args = ['--enable-shared']
- # TODO : need to handle cross compiling build
if '+gui' not in spec:
configure_args.append('--without-gui')
- configure(*configure_args)
- make()
- make("install", parallel=False)
+ return configure_args
+
+ def install(self, spec, prefix):
+ make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/cuda-memtest/package.py b/var/spack/repos/builtin/packages/cuda-memtest/package.py
new file mode 100644
index 0000000000..d7a4e2a04a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cuda-memtest/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class CudaMemtest(CMakePackage):
+ """Maintained and updated fork of cuda_memtest.
+
+ original homepage: http://sourceforge.net/projects/cudagpumemtest .
+
+ This software tests GPU memory for hardware errors and soft errors
+ using CUDA or OpenCL.
+ """
+
+ homepage = "https://github.com/ComputationalRadiationPhysics/cuda_memtest"
+ url = "https://github.com/ComputationalRadiationPhysics/cuda_memtest.git"
+
+ version('master', branch='dev',
+ git='https://github.com/ComputationalRadiationPhysics/cuda_memtest.git')
+
+ depends_on('cmake@2.8.5:', type='build')
+ # depends_on('nvml', when='+nvml')
+ depends_on('cuda@5.0:')
diff --git a/var/spack/repos/builtin/packages/cuda/package.py b/var/spack/repos/builtin/packages/cuda/package.py
index ed8518f98f..e54501d8fe 100644
--- a/var/spack/repos/builtin/packages/cuda/package.py
+++ b/var/spack/repos/builtin/packages/cuda/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,7 +24,6 @@
##############################################################################
from spack import *
from glob import glob
-import os
class Cuda(Package):
@@ -32,33 +31,26 @@ class Cuda(Package):
by NVIDIA. It enables dramatic increases in computing performance by
harnessing the power of the graphics processing unit (GPU).
- Note: NVIDIA does not provide a download URL for CUDA so you will
- need to download it yourself. Go to
- https://developer.nvidia.com/cuda-downloads and select your Operating
- System, Architecture, Distribution, and Version. For the Installer
- Type, select runfile and click Download. Spack will search your
- current directory for this file. Alternatively, add this file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html.
-
Note: This package does not currently install the drivers necessary
to run CUDA. These will need to be installed manually. See:
http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux for
- details.
-
- """
+ details."""
homepage = "http://www.nvidia.com/object/cuda_home_new.html"
+ version('9.0.176', '7a00187b2ce5c5e350e68882f42dd507', expand=False,
+ url="https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run")
+ version('8.0.61', '33e1bd980e91af4e55f3ef835c103f9b', expand=False,
+ url="https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run")
version('8.0.44', '6dca912f9b7e2b7569b0074a41713640', expand=False,
- url="file://%s/cuda_8.0.44_linux.run" % os.getcwd())
+ url="https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/cuda_8.0.44_linux-run")
version('7.5.18', '4b3bcecf0dfc35928a0898793cf3e4c6', expand=False,
- url="file://%s/cuda_7.5.18_linux.run" % os.getcwd())
+ url="http://developer.download.nvidia.com/compute/cuda/7.5/Prod/local_installers/cuda_7.5.18_linux.run")
version('6.5.14', '90b1b8f77313600cc294d9271741f4da', expand=False,
- url="file://%s/cuda_6.5.14_linux_64.run" % os.getcwd())
+ url="http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run")
def install(self, spec, prefix):
- runfile = glob(os.path.join(self.stage.path, 'cuda*.run'))[0]
+ runfile = glob(join_path(self.stage.path, 'cuda*run'))[0]
chmod = which('chmod')
chmod('+x', runfile)
runfile = which(runfile)
@@ -70,8 +62,9 @@ class Cuda(Package):
# for details.
runfile(
- '--silent', # disable interactive prompts
- '--verbose', # create verbose log file
- '--toolkit', # install CUDA Toolkit
+ '--silent', # disable interactive prompts
+ '--verbose', # create verbose log file
+ '--override', # override compiler version checks
+ '--toolkit', # install CUDA Toolkit
'--toolkitpath=%s' % prefix
)
diff --git a/var/spack/repos/builtin/packages/cudnn/package.py b/var/spack/repos/builtin/packages/cudnn/package.py
new file mode 100644
index 0000000000..53af7f9635
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cudnn/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class Cudnn(Package):
+ """NVIDIA cuDNN is a GPU-accelerated library of primitives for deep
+ neural networks"""
+
+ homepage = "https://developer.nvidia.com/cudnn"
+
+ version('6.0', 'a08ca487f88774e39eb6b0ef6507451d',
+ url='http://developer.download.nvidia.com/compute/redist/cudnn/v6.0/cudnn-8.0-linux-x64-v6.0.tgz')
+ version('5.1', '406f4ac7f7ee8aa9e41304c143461a69',
+ url='http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz')
+
+ depends_on('cuda@8:')
+
+ def install(self, spec, prefix):
+ copy_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/cufflinks/package.py b/var/spack/repos/builtin/packages/cufflinks/package.py
new file mode 100644
index 0000000000..97197258dd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cufflinks/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cufflinks(Package):
+ """Cufflinks assembles transcripts, estimates their abundances, and tests
+ for differential expression and regulation in RNA-Seq samples."""
+
+ homepage = "http://cole-trapnell-lab.github.io/cufflinks"
+ url = "http://cole-trapnell-lab.github.io/cufflinks/assets/downloads/cufflinks-2.2.1.Linux_x86_64.tar.gz"
+
+ version('2.2.1', '7e693d182dcfda8aeef8523219ea9ea7')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('cuffcompare', prefix.bin)
+ install('cuffdiff', prefix.bin)
+ install('cufflinks', prefix.bin)
+ install('cuffmerge', prefix.bin)
+ install('cuffnorm', prefix.bin)
+ install('cuffquant', prefix.bin)
+ install('gffread', prefix.bin)
+ install('gtf_to_sam', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/cups/package.py b/var/spack/repos/builtin/packages/cups/package.py
new file mode 100644
index 0000000000..b674bd637a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cups/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Cups(AutotoolsPackage):
+ """CUPS is the standards-based, open source printing system developed by
+ Apple Inc. for macOS and other UNIX-like operating systems. CUPS uses the
+ Internet Printing Protocol (IPP) to support printing to local and network
+ printers. This provides the core CUPS libraries, not a complete CUPS
+ install."""
+
+ homepage = "https://www.cups.org/"
+ url = "https://github.com/apple/cups/releases/download/v2.2.3/cups-2.2.3-source.tar.gz"
+
+ version('2.2.3', '006a8156680a516e43c59034e31df8bf')
+
+ depends_on('gnutls')
+
+ def configure_args(self):
+ args = ['--enable-gnutls', '--with-components=core']
+ return args
diff --git a/var/spack/repos/builtin/packages/curl/package.py b/var/spack/repos/builtin/packages/curl/package.py
index a22ac52714..c12e50b71c 100644
--- a/var/spack/repos/builtin/packages/curl/package.py
+++ b/var/spack/repos/builtin/packages/curl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,18 @@
from spack import *
-class Curl(Package):
+class Curl(AutotoolsPackage):
"""cURL is an open source command line tool and library for
transferring data with URL syntax"""
homepage = "http://curl.haxx.se"
- url = "http://curl.haxx.se/download/curl-7.46.0.tar.bz2"
+ # URL must remain http:// so Spack can bootstrap curl
+ url = "http://curl.haxx.se/download/curl-7.54.0.tar.bz2"
+ version('7.56.0', 'e0caf257103e0c77cee5be7e9ac66ca4')
+ version('7.54.0', '89bb7ba87384dfbf4f1a3f953da42458')
+ version('7.53.1', 'fb1f03a142236840c1a77c035fa4c542')
+ version('7.52.1', 'dd014df06ff1d12e173de86873f9f77a')
version('7.50.3', 'bd177fd6deecce00cfa7b5916d831c5e')
version('7.50.2', '6e161179f7af4b9f8b6ea21420132719')
version('7.50.1', '015f6a0217ca6f2c5442ca406476920b')
@@ -43,13 +48,15 @@ class Curl(Package):
version('7.43.0', '11bddbb452a8b766b932f859aaeeed39')
version('7.42.1', '296945012ce647b94083ed427c1877a8')
- depends_on("openssl")
- depends_on("zlib")
+ depends_on('openssl')
+ depends_on('zlib')
+ depends_on('nghttp2')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix,
- '--with-zlib=%s' % spec['zlib'].prefix,
- '--with-ssl=%s' % spec['openssl'].prefix)
+ def configure_args(self):
+ spec = self.spec
- make()
- make("install")
+ return [
+ '--with-zlib={0}'.format(spec['zlib'].prefix),
+ '--with-ssl={0}'.format(spec['openssl'].prefix),
+ '--with-http2={0}'.format(spec['nghttp2'].prefix),
+ ]
diff --git a/var/spack/repos/builtin/packages/cvs/package.py b/var/spack/repos/builtin/packages/cvs/package.py
new file mode 100644
index 0000000000..58943886bf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/cvs/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Cvs(AutotoolsPackage):
+ """CVS a very traditional source control system"""
+ homepage = "http://www.nongnu.org/cvs/"
+ url = "https://ftp.gnu.org/non-gnu/cvs/source/feature/1.12.13/cvs-1.12.13.tar.bz2"
+
+ version('1.12.13', '93a8dacc6ff0e723a130835713235863f1f5ada9')
+
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/czmq/package.py b/var/spack/repos/builtin/packages/czmq/package.py
index ef6374619b..799b577398 100644
--- a/var/spack/repos/builtin/packages/czmq/package.py
+++ b/var/spack/repos/builtin/packages/czmq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,16 +23,15 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class Czmq(Package):
+class Czmq(AutotoolsPackage):
""" A C interface to the ZMQ library """
homepage = "http://czmq.zeromq.org"
- url = "https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz"
+ url = "https://github.com/zeromq/czmq/archive/v4.0.2.tar.gz"
- version('3.0.2', '23e9885f7ee3ce88d99d0425f52e9be1',
- url='https://github.com/zeromq/czmq/archive/v3.0.2.tar.gz')
+ version('4.0.2', 'a65317a3fb8238cf70e3e992e381f9cc')
+ version('3.0.2', '23e9885f7ee3ce88d99d0425f52e9be1')
depends_on('libtool', type='build')
depends_on('automake', type='build')
@@ -40,22 +39,9 @@ class Czmq(Package):
depends_on('pkg-config', type='build')
depends_on('zeromq')
- def install(self, spec, prefix):
- # Work around autogen.sh oddities
- # bash = which("bash")
- # bash("./autogen.sh")
- mkdirp("config")
- autoreconf = which("autoreconf")
- autoreconf("--install", "--verbose", "--force",
- "-I", "config",
- "-I", os.path.join(spec['pkg-config'].prefix,
- "share", "aclocal"),
- "-I", os.path.join(spec['automake'].prefix,
- "share", "aclocal"),
- "-I", os.path.join(spec['libtool'].prefix,
- "share", "aclocal"),
- )
- configure("--prefix=%s" % prefix)
-
- make()
- make("install")
+ def configure_args(self):
+ config_args = []
+ if 'clang' in self.compiler.name:
+ config_args.append("CFLAGS=-Wno-gnu")
+ config_args.append("CXXFLAS=-Wno-gnu")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/dakota/package.py b/var/spack/repos/builtin/packages/dakota/package.py
index e8f7d0889b..b90fb5641a 100644
--- a/var/spack/repos/builtin/packages/dakota/package.py
+++ b/var/spack/repos/builtin/packages/dakota/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Dakota(Package):
+class Dakota(CMakePackage):
"""The Dakota toolkit provides a flexible, extensible interface between
analysis codes and iterative systems analysis methods. Dakota
contains algorithms for:
@@ -46,12 +46,9 @@ class Dakota(Package):
homepage = 'https://dakota.sandia.gov/'
url = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-6.3-public.src.tar.gz'
- _url_str = 'https://dakota.sandia.gov/sites/default/files/distributions/public/dakota-{version}-public.src.tar.gz'
version('6.3', '05a58d209fae604af234c894c3f73f6d')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
variant('shared', default=True,
description='Enables the build of shared libraries')
variant('mpi', default=True, description='Activates MPI support')
@@ -62,31 +59,20 @@ class Dakota(Package):
depends_on('python')
depends_on('boost')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8.9:', type='build')
- def url_for_version(self, version):
- return Dakota._url_str.format(version=version)
+ def cmake_args(self):
+ spec = self.spec
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
-
- options.extend([
- '-DCMAKE_BUILD_TYPE:STRING=%s' % (
- 'Debug' if '+debug' in spec else 'Release'),
+ args = [
'-DBUILD_SHARED_LIBS:BOOL=%s' % (
- 'ON' if '+shared' in spec else 'OFF')])
+ 'ON' if '+shared' in spec else 'OFF'),
+ ]
if '+mpi' in spec:
- options.extend([
+ args.extend([
'-DDAKOTA_HAVE_MPI:BOOL=ON',
- '-DMPI_CXX_COMPILER:STRING=%s' % join_path(
- spec['mpi'].prefix.bin, 'mpicxx')])
-
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
+ '-DMPI_CXX_COMPILER:STRING=%s' % join_path(spec['mpi'].mpicxx),
+ ])
- with working_dir(build_directory, create=True):
- cmake(source_directory, *options)
- make()
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/daligner/package.py b/var/spack/repos/builtin/packages/daligner/package.py
new file mode 100644
index 0000000000..91322b5b3a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/daligner/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Daligner(MakefilePackage):
+ """Daligner: The Dazzler "Overlap" Module."""
+
+ homepage = "https://github.com/thegenemyers/DALIGNER"
+ url = "https://github.com/thegenemyers/DALIGNER/archive/V1.0.tar.gz"
+
+ version('1.0', 'f1b4c396ae062caa4c0e6423ba0725ef')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': True}
+ makefile.filter('cp $(ALL) ~/bin',
+ 'cp $(ALL) {0}'.format(prefix.bin),
+ **kwargs)
+ # He changed the Makefile in commit dae119.
+ # You'll need this instead if/when he cuts a new release
+ # or if you try to build from the tip of master.
+ # makefile.filter('DEST_DIR = .*',
+ # 'DEST_DIR = {0}'.format(prefix.bin))
+ # or pass DEST_DIR in to the make
+
+ @run_before('install')
+ def make_prefix_dot_bin(self):
+ mkdir(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/damageproto/package.py b/var/spack/repos/builtin/packages/damageproto/package.py
index 84e0fac311..06d8815bb4 100644
--- a/var/spack/repos/builtin/packages/damageproto/package.py
+++ b/var/spack/repos/builtin/packages/damageproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Damageproto(Package):
+class Damageproto(AutotoolsPackage):
"""X Damage Extension.
This package contains header files and documentation for the X Damage
@@ -38,8 +38,3 @@ class Damageproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/damselfly/package.py b/var/spack/repos/builtin/packages/damselfly/package.py
index a37728c92b..c98ad5ca7b 100644
--- a/var/spack/repos/builtin/packages/damselfly/package.py
+++ b/var/spack/repos/builtin/packages/damselfly/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Damselfly(Package):
+class Damselfly(CMakePackage):
"""Damselfly is a model-based parallel network simulator."""
homepage = "https://github.com/llnl/damselfly"
url = "https://github.com/llnl/damselfly"
@@ -33,10 +33,4 @@ class Damselfly(Package):
version('1.0', '05cf7e2d8ece4408c0f2abb7ab63fd74c0d62895',
git='https://github.com/llnl/damselfly.git', tag='v1.0')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('-DCMAKE_BUILD_TYPE=release', '..', *std_cmake_args)
- make()
- make('install')
+ depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/darshan-runtime/package.py b/var/spack/repos/builtin/packages/darshan-runtime/package.py
index a031374381..7be03f19c1 100644
--- a/var/spack/repos/builtin/packages/darshan-runtime/package.py
+++ b/var/spack/repos/builtin/packages/darshan-runtime/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,7 @@ class DarshanRuntime(Package):
systems where you intend to instrument MPI applications."""
homepage = "http://www.mcs.anl.gov/research/projects/darshan/"
- url = "ftp://ftp.mcs.anl.gov/pub/darshan/releases/darshan-3.1.0.tar.gz"
+ url = "http://ftp.mcs.anl.gov/pub/darshan/releases/darshan-3.1.0.tar.gz"
version('3.1.0', '439d717323e6265b2612ed127886ae52')
version('3.0.0', '732577fe94238936268d74d7d74ebd08')
diff --git a/var/spack/repos/builtin/packages/darshan-util/package.py b/var/spack/repos/builtin/packages/darshan-util/package.py
index 47b0497ca8..35d3ddb97a 100644
--- a/var/spack/repos/builtin/packages/darshan-util/package.py
+++ b/var/spack/repos/builtin/packages/darshan-util/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,7 @@ class DarshanUtil(Package):
log files produced by Darshan (runtime)."""
homepage = "http://www.mcs.anl.gov/research/projects/darshan/"
- url = "ftp://ftp.mcs.anl.gov/pub/darshan/releases/darshan-3.1.0.tar.gz"
+ url = "http://ftp.mcs.anl.gov/pub/darshan/releases/darshan-3.1.0.tar.gz"
version('3.1.0', '439d717323e6265b2612ed127886ae52')
version('3.0.0', '732577fe94238936268d74d7d74ebd08')
diff --git a/var/spack/repos/builtin/packages/dash/package.py b/var/spack/repos/builtin/packages/dash/package.py
new file mode 100644
index 0000000000..9c79be238e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dash/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Dash(AutotoolsPackage):
+ """The Debian Almquist Shell."""
+
+ homepage = "https://git.kernel.org/pub/scm/utils/dash/dash.git"
+ url = "https://git.kernel.org/pub/scm/utils/dash/dash.git/snapshot/dash-0.5.9.1.tar.gz"
+ list_url = homepage
+
+ version('0.5.9.1', '0d800da0b8ddbefa1468978d314b7d09')
+
+ depends_on('libedit', type='link')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ def configure_args(self):
+ # Compile with libedit support
+ # This allows the use of arrow keys at the command line
+ # See https://askubuntu.com/questions/704688
+ return ['--with-libedit']
diff --git a/var/spack/repos/builtin/packages/datamash/package.py b/var/spack/repos/builtin/packages/datamash/package.py
index 85adeca996..b72a1c21bb 100644
--- a/var/spack/repos/builtin/packages/datamash/package.py
+++ b/var/spack/repos/builtin/packages/datamash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Datamash(Package):
+class Datamash(AutotoolsPackage):
"""GNU datamash is a command-line program which performs basic numeric,
textual and statistical operations on input textual data files.
"""
@@ -38,7 +38,4 @@ class Datamash(Package):
version('1.0.6', 'ff26fdef0f343cb695cf1853e14a1a5b')
version('1.0.5', '9a29549dc7feca49fdc5fab696614e11')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make("install")
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/dataspaces/package.py b/var/spack/repos/builtin/packages/dataspaces/package.py
new file mode 100644
index 0000000000..37121c2b47
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dataspaces/package.py
@@ -0,0 +1,91 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import six
+
+
+def is_string(x):
+ """validate a string"""
+ try:
+ return isinstance(x, six.string_types)
+ except ValueError:
+ return False
+
+
+class Dataspaces(AutotoolsPackage):
+ """an extreme scale data management framework."""
+
+ homepage = "http://www.dataspaces.org"
+ url = "http://personal.cac.rutgers.edu/TASSL/projects/data/downloads/dataspaces-1.6.2.tar.gz"
+
+ version('develop', git='https://github.com/melrom/dataspaces.git',
+ branch='master')
+ version('1.6.2', '73caa4920b6f2c0c6d6cb87640ff04be')
+
+ variant('dimes',
+ default=False,
+ description='enabled DIMES transport mode')
+ variant('cray-drc',
+ default=False,
+ description='using Cray Dynamic Credentials library')
+ variant('gni-cookie',
+ default='0x5420000',
+ description='Cray UGNI communication token',
+ values=is_string)
+ variant('ptag',
+ default='250',
+ description='Cray UGNI protection tag',
+ values=is_string)
+ variant('mpi',
+ default=True,
+ description='Use MPI for collective communication')
+
+ depends_on('m4', type='build')
+ depends_on('automake', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('libtool', type='build')
+ depends_on('mpi', when='+mpi')
+
+ def autoreconf(spec, prefix, self):
+ bash = which('bash')
+ bash('./autogen.sh')
+
+ def configure_args(self):
+ args = []
+ cookie = self.spec.variants['gni-cookie'].value
+ ptag = self.spec.variants['ptag'].value
+ if self.spec.satisfies('+dimes'):
+ args.append('--enable-dimes')
+ if self.spec.satisfies('+cray-drc'):
+ args.append('--enable-drc')
+ else:
+ args.append('--with-gni-cookie=%s' % cookie)
+ args.append('--with-gni-ptag=%s' % ptag)
+ if self.spec.satisfies('+mpi'):
+ args.append('CC=%s' % self.spec['mpi'].mpicc)
+ args.append('FC=%s' % self.spec['mpi'].mpifc)
+ return args
diff --git a/var/spack/repos/builtin/packages/dbus/package.py b/var/spack/repos/builtin/packages/dbus/package.py
index fdca68f53f..4d55665a4e 100644
--- a/var/spack/repos/builtin/packages/dbus/package.py
+++ b/var/spack/repos/builtin/packages/dbus/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/dealii/package.py b/var/spack/repos/builtin/packages/dealii/package.py
index 66267b2d9a..8f3e5d80ea 100644
--- a/var/spack/repos/builtin/packages/dealii/package.py
+++ b/var/spack/repos/builtin/packages/dealii/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,27 +32,36 @@ class Dealii(CMakePackage):
homepage = "https://www.dealii.org"
url = "https://github.com/dealii/dealii/releases/download/v8.4.1/dealii-8.4.1.tar.gz"
+ maintainers = ['davydden', 'jppelteret']
+
# Don't add RPATHs to this package for the full build DAG.
# only add for immediate deps.
transitive_rpaths = False
+ version('8.5.1', '39b9ebd6ab083d63cfc9044319aaa2ee')
+ version('8.5.0', 'ef999cc310b007559a6343bf5b1759bc')
version('8.4.2', '84c6bd3f250d3e0681b645d24cb987a7')
version('8.4.1', 'efbaf16f9ad59cfccad62302f36c3c1d')
version('8.4.0', 'ac5dbf676096ff61e092ce98c80c2b00')
version('8.3.0', 'fc6cdcb16309ef4bea338a4f014de6fa')
version('8.2.1', '71c728dbec14f371297cd405776ccf08')
version('8.1.0', 'aa8fadc2ce5eb674f44f997461bf668d')
- version('develop', git='https://github.com/dealii/dealii.git')
+ version('develop', git='https://github.com/dealii/dealii.git', branch='master')
variant('mpi', default=True, description='Compile with MPI')
+ variant('assimp', default=False,
+ description='Compile with Assimp')
variant('arpack', default=True,
description='Compile with Arpack and PArpack (only with MPI)')
+ variant('adol-c', default=False,
+ description='Compile with Adol-c')
variant('doc', default=False,
description='Compile with documentation')
variant('gsl', default=True, description='Compile with GSL')
variant('hdf5', default=True,
description='Compile with HDF5 (only with MPI)')
variant('metis', default=True, description='Compile with Metis')
+ variant('nanoflann', default=False, description='Compile with Nanoflann')
variant('netcdf', default=True,
description='Compile with Netcdf (only with MPI)')
variant('oce', default=True, description='Compile with OCE')
@@ -60,6 +69,8 @@ class Dealii(CMakePackage):
description='Compile with P4est (only with MPI)')
variant('petsc', default=True,
description='Compile with Petsc (only with MPI)')
+ variant('sundials', default=False,
+ description='Compile with Sundials')
variant('slepc', default=True,
description='Compile with Slepc (only with Petsc and MPI)')
variant('trilinos', default=True,
@@ -68,6 +79,13 @@ class Dealii(CMakePackage):
description='Compile with Python bindings')
variant('int64', default=False,
description='Compile with 64 bit indices support')
+ variant('optflags', default=False,
+ description='Compile using additional optimization flags')
+ variant('build_type', default='DebugRelease',
+ description='The build type to build',
+ values=('Debug', 'Release', 'DebugRelease'))
+ variant('cuda', default=False,
+ description='Build with CUDA')
# required dependencies, light version
depends_on("blas")
@@ -75,21 +93,26 @@ class Dealii(CMakePackage):
# https://github.com/dealii/dealii/issues/1591
# Require at least 1.59
# +python won't affect @:8.4.2
- depends_on("boost@1.59.0:+thread+system+serialization+iostreams",
+ # FIXME: once concretizer can unite unconditional and
+ # conditional dependencies, simplify to:
+ # depends_on("boost@1.59.0+thread+system+serialization+iostreams")
+ # depends_on("boost+mpi", when='+mpi')
+ # depends_on("boost+python", when='+python')
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams",
when='@:8.4.2~mpi')
- depends_on("boost@1.59.0:+thread+system+serialization+iostreams+mpi",
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams+mpi",
when='@:8.4.2+mpi')
# since @8.5.0: (and @develop) python bindings are introduced:
- depends_on("boost@1.59.0:+thread+system+serialization+iostreams",
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams",
when='@8.5.0:~mpi~python')
- depends_on("boost@1.59.0:+thread+system+serialization+iostreams+mpi",
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams+mpi",
when='@8.5.0:+mpi~python')
- depends_on("boost@1.59.0:+thread+system+serialization+iostreams+python",
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams+python",
when='@8.5.0:~mpi+python')
- depends_on(
- "boost@1.59.0:+thread+system+serialization+iostreams+mpi+python",
- when='@8.5.0:+mpi+python')
- depends_on("bzip2")
+ depends_on("boost@1.59.0:1.63,1.66:+thread+system+serialization+iostreams+mpi+python",
+ when='@8.5.0:+mpi+python')
+ # bzip2 is not needed since 9.0
+ depends_on("bzip2", when='@:8.99')
depends_on("lapack")
depends_on("muparser")
depends_on("suite-sparse")
@@ -98,37 +121,60 @@ class Dealii(CMakePackage):
# optional dependencies
depends_on("mpi", when="+mpi")
+ depends_on("adol-c@2.6.4:", when='@9.0:+adol-c')
depends_on("arpack-ng+mpi", when='+arpack+mpi')
+ depends_on("assimp", when='@9.0:+assimp')
depends_on("doxygen+graphviz", when='+doc')
depends_on("graphviz", when='+doc')
depends_on("gsl", when='@8.5.0:+gsl')
depends_on("hdf5+mpi", when='+hdf5+mpi')
- depends_on("metis@5:", when='+metis')
+ depends_on("cuda@8:", when='+cuda')
+ depends_on("cmake@3.9:", when='+cuda')
+ # FIXME: concretizer bug. The two lines mimic what comes from PETSc
+ # but we should not need it
+ depends_on("metis@5:+int64+real64", when='+metis+int64')
+ depends_on("metis@5:~int64+real64", when='+metis~int64')
+ depends_on("nanoflann", when="@9.0:+nanoflann")
depends_on("netcdf+mpi", when="+netcdf+mpi")
depends_on("netcdf-cxx", when='+netcdf+mpi')
depends_on("oce", when='+oce')
depends_on("p4est", when='+p4est+mpi')
- depends_on("petsc+mpi", when='@8.4.2:+petsc+mpi~int64')
+ depends_on("petsc+mpi~int64", when='+petsc+mpi~int64')
+ depends_on("petsc+mpi+int64", when='+petsc+mpi+int64')
+ depends_on("petsc@:3.6.4", when='@:8.4.1+petsc+mpi')
depends_on('python', when='@8.5.0:+python')
- depends_on("slepc", when='@8.4.2:+slepc+petsc+mpi~int64')
- depends_on("petsc@:3.6.4+mpi", when='@:8.4.1+petsc+mpi~int64')
- depends_on("slepc@:3.6.3", when='@:8.4.1+slepc+petsc+mpi~int64')
- depends_on("trilinos", when='+trilinos+mpi')
+ depends_on("slepc", when='+slepc+petsc+mpi')
+ depends_on("slepc@:3.6.3", when='@:8.4.1+slepc+petsc+mpi')
+ depends_on("slepc~arpack", when='+slepc+petsc+mpi+int64')
+ depends_on("sundials~pthread", when='@9.0:+sundials')
+ depends_on("trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos", when='+trilinos+mpi~int64')
+ depends_on("trilinos+amesos+aztec+epetra+ifpack+ml+muelu+sacado+teuchos~hypre", when="+trilinos+mpi+int64")
- def build_type(self):
- # CMAKE_BUILD_TYPE should be DebugRelease | Debug | Release
- return 'DebugRelease'
+ # check that the combination of variants makes sense
+ conflicts('+assimp', when='@:8.5.1')
+ conflicts('+nanoflann', when='@:8.5.1')
+ conflicts('+sundials', when='@:8.5.1')
+ conflicts('+adol-c', when='@:8.5.1')
+ conflicts('+gsl', when='@:8.4.2')
+ conflicts('+python', when='@:8.4.2')
+ conflicts('+cuda', when='%gcc@6:')
+ for p in ['+arpack', '+hdf5', '+netcdf', '+p4est', '+petsc',
+ '+slepc', '+trilinos']:
+ conflicts(p, when='~mpi')
def cmake_args(self):
spec = self.spec
options = []
+ # release flags
+ cxx_flags_release = []
+ # debug and release flags
+ cxx_flags = []
- lapack_blas = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
options.extend([
'-DDEAL_II_COMPONENT_EXAMPLES=ON',
'-DDEAL_II_WITH_THREADS:BOOL=ON',
'-DBOOST_DIR=%s' % spec['boost'].prefix,
- '-DBZIP2_DIR=%s' % spec['bzip2'].prefix,
# CMake's FindBlas/Lapack may pickup system's blas/lapack instead
# of Spack's. Be more specific to avoid this.
# Note that both lapack and blas are provided in -DLAPACK_XYZ.
@@ -139,9 +185,31 @@ class Dealii(CMakePackage):
'-DMUPARSER_DIR=%s' % spec['muparser'].prefix,
'-DUMFPACK_DIR=%s' % spec['suite-sparse'].prefix,
'-DTBB_DIR=%s' % spec['tbb'].prefix,
- '-DZLIB_DIR=%s' % spec['zlib'].prefix
+ '-DZLIB_DIR=%s' % spec['zlib'].prefix,
+ '-DDEAL_II_ALLOW_BUNDLED=OFF'
])
+ if spec.satisfies('@:8.99'):
+ options.extend([
+ # Cmake may still pick up system's bzip2, fix this:
+ '-DBZIP2_FOUND=true',
+ '-DBZIP2_INCLUDE_DIRS=%s' % spec['bzip2'].prefix.include,
+ '-DBZIP2_LIBRARIES=%s' % spec['bzip2'].libs.joined(';')
+ ])
+
+ # Set recommended flags for maximum (matrix-free) performance, see
+ # https://groups.google.com/forum/?fromgroups#!topic/dealii/3Yjy8CBIrgU
+ if spec.satisfies('%gcc'):
+ cxx_flags_release.extend(['-O3'])
+ cxx_flags.extend(['-march=native'])
+ elif spec.satisfies('%intel'):
+ cxx_flags_release.extend(['-O3'])
+ cxx_flags.extend(['-march=native'])
+ elif spec.satisfies('%clang'):
+ cxx_flags_release.extend(['-O3', '-ffp-contract=fast'])
+ cxx_flags.extend(['-march=native'])
+
+ # Python bindings
if spec.satisfies('@8.5.0:'):
options.extend([
'-DDEAL_II_COMPONENT_PYTHON_BINDINGS=%s' %
@@ -158,6 +226,18 @@ class Dealii(CMakePackage):
'-DDEAL_II_DOCHTML_RELDIR=share/deal.II/doc'
])
+ # CUDA
+ # FIXME -DDEAL_II_CUDA_FLAGS="-arch=sm_60"
+ if '+cuda' in spec:
+ options.extend([
+ '-DDEAL_II_WITH_CUDA=ON',
+ '-DDEAL_II_WITH_CXX14=OFF'
+ ])
+ else:
+ options.extend([
+ '-DDEAL_II_WITH_CUDA=OFF',
+ ])
+
# MPI
if '+mpi' in spec:
options.extend([
@@ -174,7 +254,8 @@ class Dealii(CMakePackage):
# Optional dependencies for which library names are the same as CMake
# variables:
for library in (
- 'gsl', 'hdf5', 'p4est', 'petsc', 'slepc', 'trilinos', 'metis'):
+ 'gsl', 'hdf5', 'p4est', 'petsc', 'slepc', 'trilinos', 'metis',
+ 'sundials', 'nanoflann'):
if library in spec:
options.extend([
'-D%s_DIR=%s' % (library.upper(), spec[library].prefix),
@@ -185,6 +266,17 @@ class Dealii(CMakePackage):
'-DDEAL_II_WITH_%s:BOOL=OFF' % library.upper()
])
+ # adol-c
+ if '+adol-c' in spec:
+ options.extend([
+ '-DADOLC_DIR=%s' % spec['adol-c'].prefix,
+ '-DDEAL_II_WITH_ADOLC=ON'
+ ])
+ else:
+ options.extend([
+ '-DDEAL_II_WITH_ADOLC=OFF'
+ ])
+
# doxygen
options.extend([
'-DDEAL_II_COMPONENT_DOCUMENTATION=%s' %
@@ -192,7 +284,7 @@ class Dealii(CMakePackage):
])
# arpack
- if '+arpack' in spec:
+ if '+arpack' in spec and '+mpi' in spec:
options.extend([
'-DARPACK_DIR=%s' % spec['arpack-ng'].prefix,
'-DDEAL_II_WITH_ARPACK=ON',
@@ -203,8 +295,19 @@ class Dealii(CMakePackage):
'-DDEAL_II_WITH_ARPACK=OFF'
])
+ # Assimp
+ if '+assimp' in spec:
+ options.extend([
+ '-DDEAL_II_WITH_ASSIMP=ON',
+ '-DASSIMP_DIR=%s' % spec['assimp'].prefix
+ ])
+ else:
+ options.extend([
+ '-DDEAL_II_WITH_ASSIMP=OFF'
+ ])
+
# since Netcdf is spread among two, need to do it by hand:
- if '+netcdf' in spec:
+ if '+netcdf' in spec and '+mpi' in spec:
# take care of lib64 vs lib installed lib locations:
if os.path.isdir(spec['netcdf-cxx'].prefix.lib):
netcdfcxx_lib_dir = spec['netcdf-cxx'].prefix.lib
@@ -247,7 +350,16 @@ class Dealii(CMakePackage):
'-DDEAL_II_WITH_64BIT_INDICES=%s' % ('+int64' in spec)
])
+ # collect CXX flags:
+ if len(cxx_flags_release) > 0 and '+optflags' in spec:
+ options.extend([
+ '-DCMAKE_CXX_FLAGS_RELEASE:STRING=%s' % (
+ ' '.join(cxx_flags_release)),
+ '-DCMAKE_CXX_FLAGS:STRING=%s' % (
+ ' '.join(cxx_flags))
+ ])
+
return options
- def setup_environment(self, spack_env, env):
- env.set('DEAL_II_DIR', self.prefix)
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('DEAL_II_DIR', self.prefix)
diff --git a/var/spack/repos/builtin/packages/dejagnu/package.py b/var/spack/repos/builtin/packages/dejagnu/package.py
new file mode 100644
index 0000000000..7b083d00b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dejagnu/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Dejagnu(AutotoolsPackage):
+ """DejaGnu is a framework for testing other programs. Its purpose
+ is to provide a single front end for all tests."""
+
+ homepage = "https://www.gnu.org/software/dejagnu/"
+ url = "http://mirror.team-cymru.org/gnu/dejagnu/dejagnu-1.6.tar.gz"
+
+ version('1.6', '1fdc2eb0d592c4f89d82d24dfdf02f0b')
+ version('1.4.4', '053f18fd5d00873de365413cab17a666')
+
+ depends_on('expect')
+ depends_on('tcl@8.5:')
+
+ # DejaGnu 1.4.4 cannot be built in parallel
+ # `make check` also fails but this can be ignored
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/delly2/package.py b/var/spack/repos/builtin/packages/delly2/package.py
new file mode 100644
index 0000000000..e922d2c566
--- /dev/null
+++ b/var/spack/repos/builtin/packages/delly2/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Delly2(MakefilePackage):
+ """Delly2 is an integrated structural variant prediction method that can
+ discover, genotype and visualize deletions, tandem duplications,
+ inversions and translocations at single-nucleotide resolution in
+ short-read massively parallel sequencing data.."""
+
+ homepage = "https://github.com/dellytools/delly"
+ url = "https://github.com/dellytools/delly"
+
+ version('2017-08-03', commit='e32a9cd55c7e3df5a6ae4a91f31a0deb354529fc',
+ git='https://github.com/dellytools/delly.git')
+
+ depends_on('htslib')
+ depends_on('boost')
+ depends_on('bcftools')
+
+ def edit(self, spec, prefix):
+ # Only want to build delly source, not submodules. Build fails
+ # using provided submodules, succeeds with existing spack recipes.
+ makefile = FileFilter('Makefile')
+ makefile.filter('HTSLIBSOURCES =', '#HTSLIBSOURCES')
+ makefile.filter('BOOSTSOURCES =', '#BOOSTSOURCES')
+ makefile.filter('SEQTK_ROOT ?=', '#SEQTK_ROOT')
+ makefile.filter('BOOST_ROOT ?=', '#BOOST_ROOT')
+ makefile.filter('cd src', '# cd src')
+ makefile.filter('.htslib ', '')
+ makefile.filter('.bcftools ', '')
+ makefile.filter('.boost ', '')
+ makefile.filter('.htslib:', '# .htslib:')
+ makefile.filter('.bcftools:', '# .bcftools:')
+ makefile.filter('.boost:', '# .boost:')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('src'):
+ install('delly', prefix.bin)
+ install('dpe', prefix.bin)
+ install('cov', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/dia/package.py b/var/spack/repos/builtin/packages/dia/package.py
index 94cd75656d..59abc88b15 100644
--- a/var/spack/repos/builtin/packages/dia/package.py
+++ b/var/spack/repos/builtin/packages/dia/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,18 +33,24 @@ class Dia(Package):
version('0.97.3', '0e744a0f6a6c4cb6a089e4d955392c3c')
depends_on('intltool', type='build')
- depends_on('gtkplus@2.6.0:')
- depends_on('cairo')
- # depends_on('libart') # optional dependency, not yet supported by spack.
- depends_on('libpng')
+ depends_on('gtkplus@2.6.0:+X')
depends_on('libxslt')
depends_on('python')
depends_on('swig')
- # depends_on('py-gtk') # optional dependency, not yet supported by spack.
+ depends_on('libsm')
+ depends_on('libuuid')
+ depends_on('libxinerama')
+ depends_on('libxrender')
+ depends_on('libxml2')
+ depends_on('freetype')
+
+ # TODO: Optional dependencies, not yet supported by Spack
+ # depends_on('libart')
+ # depends_on('py-pygtk', type=('build', 'run'))
def url_for_version(self, version):
"""Handle Dia's version-based custom URLs."""
- return 'https://ftp.gnome.org/pub/gnome/source/dia/%s/dia-%s.tar.xz' % (version.up_to(2), version)
+ return 'https://ftp.gnome.org/pub/gnome/sources/dia/%s/dia-%s.tar.xz' % (version.up_to(2), version)
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/dialign-tx/package.py b/var/spack/repos/builtin/packages/dialign-tx/package.py
new file mode 100644
index 0000000000..009793216f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dialign-tx/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class DialignTx(MakefilePackage):
+ """DIALIGN-TX: greedy and progressive approaches for segment-based
+ multiple sequence alignment"""
+
+ homepage = "http://dialign-tx.gobics.de/"
+ url = "http://dialign-tx.gobics.de/DIALIGN-TX_1.0.2.tar.gz"
+
+ version('1.0.2', '8ccfb1d91136157324d1e513f184ca29')
+
+ build_directory = 'source'
+
+ conflicts('%gcc@6:')
+
+ def edit(self, spec, prefix):
+ with working_dir(self.build_directory):
+ makefile = FileFilter('Makefile')
+ makefile.filter(' -march=i686 ', ' ')
+ makefile.filter('CC=gcc', 'CC=%s' % spack_cc)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir(self.build_directory):
+ install('dialign-tx', prefix.bin)
+ # t-coffee recognizes as dialign-t
+ install('dialign-tx', join_path(prefix.bin, 'dialign-t'))
diff --git a/var/spack/repos/builtin/packages/direnv/package.py b/var/spack/repos/builtin/packages/direnv/package.py
new file mode 100644
index 0000000000..83ec1db935
--- /dev/null
+++ b/var/spack/repos/builtin/packages/direnv/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Direnv(Package):
+ """direnv is an environment switcher for the shell."""
+
+ homepage = "https://direnv.net/"
+ url = "https://github.com/direnv/direnv/archive/v2.11.3.tar.gz"
+
+ version('2.11.3', '5b9728e2dabed232b4932849647fd6e5')
+
+ depends_on('go', type='build')
+
+ def install(self, spec, prefix):
+ make('install', "DESTDIR=%s" % prefix)
diff --git a/var/spack/repos/builtin/packages/discovar/package.py b/var/spack/repos/builtin/packages/discovar/package.py
new file mode 100644
index 0000000000..e0521d3e95
--- /dev/null
+++ b/var/spack/repos/builtin/packages/discovar/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Discovar(AutotoolsPackage):
+ """DISCOVAR is a variant caller and small genome assembler."""
+
+ homepage = "https://software.broadinstitute.org/software/discovar/blog/"
+ url = "ftp://ftp.broadinstitute.org/pub/crd/Discovar/latest_source_code/discovar-52488.tar.gz"
+
+ version('52488', 'e72a0b9363e25c99d8e8729c0be98364')
+
+ conflicts('%gcc@6:')
diff --git a/var/spack/repos/builtin/packages/dlpack/package.py b/var/spack/repos/builtin/packages/dlpack/package.py
new file mode 100644
index 0000000000..69dd99b5a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dlpack/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Dlpack(Package):
+ """DLPack is an RFC for common tensor and operator guidelines
+ in deep learning systems."""
+
+ homepage = "https://github.com/sjtuhpcc/dlpack"
+
+ version('master', git='https://github.com/dmlc/dlpack.git', branch='master')
+
+ def install(self, spec, prefix):
+ install_tree('include', prefix.include)
diff --git a/var/spack/repos/builtin/packages/dmlc-core/cmake.patch b/var/spack/repos/builtin/packages/dmlc-core/cmake.patch
new file mode 100644
index 0000000000..4bb41eee24
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dmlc-core/cmake.patch
@@ -0,0 +1,21 @@
+From 82f2bde92e1f1bf35bdf7b93cacb0aa72d9f096b Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Fri, 18 Aug 2017 23:16:05 +0800
+Subject: [PATCH] Patch CMakeLists.txt to install make/ dir into destination.
+
+---
+ CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f038dcb..ed01b82 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -134,6 +134,7 @@ endif()
+ install(TARGETS dmlc ARCHIVE DESTINATION lib LIBRARY DESTINATION lib)
+ install(DIRECTORY include DESTINATION .)
+ install(DIRECTORY doc DESTINATION .)
++install(DIRECTORY make DESTINATION .)
+
+ # ---[ Linter target
+ if(MSVC)
diff --git a/var/spack/repos/builtin/packages/dmlc-core/package.py b/var/spack/repos/builtin/packages/dmlc-core/package.py
new file mode 100644
index 0000000000..f463acb836
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dmlc-core/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class DmlcCore(CMakePackage):
+ """DMLC-Core is the backbone library to support all DMLC projects,
+ offers the bricks to build efficient and scalable
+ distributed machine learning libraries."""
+
+ homepage = "https://github.com/dmlc/dmlc-core"
+ url = "https://github.com/dmlc/dmlc-core.git"
+
+ version('master', git='https://github.com/dmlc/dmlc-core.git')
+ version('20170508', git='https://github.com/dmlc/dmlc-core.git',
+ commit='a6c5701219e635fea808d264aefc5b03c3aec314')
+
+ variant('openmp', default=False, description='Enable OpenMP support')
+
+ patch('cmake.patch')
+
+ def patch(self):
+ filter_file('export CC = gcc', '', 'make/config.mk', string=True)
+ filter_file('export CXX = g++', '', 'make/config.mk', string=True)
+ filter_file('export MPICXX = mpicxx', '',
+ 'make/config.mk', string=True)
+ filter_file(r'^USE_OPENMP\s*=.*',
+ 'USE_OPENMP=%s' % ('1' if '+openmp' in self.spec else '0'),
+ 'make/config.mk')
+
+ def cmake_args(self):
+ spec = self.spec
+ return [
+ '-DUSE_OPENMP=%s' % ('ON' if '+openmp' in spec else 'OFF'),
+ ]
diff --git a/var/spack/repos/builtin/packages/dmxproto/package.py b/var/spack/repos/builtin/packages/dmxproto/package.py
index 34213bba5f..b668dc9b58 100644
--- a/var/spack/repos/builtin/packages/dmxproto/package.py
+++ b/var/spack/repos/builtin/packages/dmxproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Dmxproto(Package):
+class Dmxproto(AutotoolsPackage):
"""Distributed Multihead X (DMX) Extension.
This extension defines a protocol for clients to access a front-end proxy
@@ -39,8 +39,3 @@ class Dmxproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/docbook-xml/package.py b/var/spack/repos/builtin/packages/docbook-xml/package.py
index f1e1a08c8f..c91473a669 100644
--- a/var/spack/repos/builtin/packages/docbook-xml/package.py
+++ b/var/spack/repos/builtin/packages/docbook-xml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,10 +42,6 @@ class DocbookXml(Package):
else:
install(src, dst)
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
- catalog = os.path.join(self.spec.prefix, 'catalog.xml')
- spack_env.set('XML_CATALOG_FILES', catalog, separator=' ')
-
def setup_environment(self, spack_env, run_env):
catalog = os.path.join(self.spec.prefix, 'catalog.xml')
run_env.set('XML_CATALOG_FILES', catalog, separator=' ')
diff --git a/var/spack/repos/builtin/packages/docbook-xsl/package.py b/var/spack/repos/builtin/packages/docbook-xsl/package.py
index 5de9cecdbb..1f3d774b82 100644
--- a/var/spack/repos/builtin/packages/docbook-xsl/package.py
+++ b/var/spack/repos/builtin/packages/docbook-xsl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -44,10 +44,6 @@ class DocbookXsl(Package):
else:
install(src, dst)
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
- catalog = os.path.join(self.spec.prefix, 'catalog.xml')
- spack_env.set('XML_CATALOG_FILES', catalog, separator=' ')
-
def setup_environment(self, spack_env, run_env):
catalog = os.path.join(self.spec.prefix, 'catalog.xml')
run_env.set('XML_CATALOG_FILES', catalog, separator=' ')
diff --git a/var/spack/repos/builtin/packages/dos2unix/package.py b/var/spack/repos/builtin/packages/dos2unix/package.py
new file mode 100644
index 0000000000..2457f9b9e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/dos2unix/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Dos2unix(MakefilePackage):
+ """DOS/Mac to Unix and vice versa text file format converter."""
+
+ homepage = "https://waterlan.home.xs4all.nl/dos2unix.html"
+ url = "https://waterlan.home.xs4all.nl/dos2unix/dos2unix-7.3.4.tar.gz"
+
+ version('7.3.4', '04428e77e2ead8a92c1492ba8977f1d1')
+
+ def install(self, spec, prefix):
+ make('prefix={0}'.format(prefix), 'install')
diff --git a/var/spack/repos/builtin/packages/double-conversion/package.py b/var/spack/repos/builtin/packages/double-conversion/package.py
new file mode 100644
index 0000000000..e4f4803a24
--- /dev/null
+++ b/var/spack/repos/builtin/packages/double-conversion/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class DoubleConversion(CMakePackage):
+ """This project (double-conversion) provides binary-decimal and decimal-binary
+ routines for IEEE doubles.
+
+ The library consists of efficient conversion routines that have been
+ extracted from the V8 JavaScript engine. The code has been refactored
+ and improved so that it can be used more easily in other projects.
+
+ There is extensive documentation in src/double-conversion.h. Other examples
+ can be found in test/cctest/test-conversions.cc.
+ """
+
+ homepage = "https://github.com/google/double-conversion"
+ url = "https://github.com/google/double-conversion/archive/v2.0.1.zip"
+
+ version('2.0.1', '5be77f780841af528e92986d46620b1e')
+ version('2.0.0', '045f7927246c368b57dcdb844ec61211')
+ version('1.1.5', 'ddf782373e2630c07b2691c31cee0b24')
+ version('1.1.4', '5df72704406d93cd54c73d73f02e2744')
+ version('1.1.3', 'b312152c8c66c80449d5e0325b94502e')
+
+ def cmake_args(self):
+ return ['-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true']
diff --git a/var/spack/repos/builtin/packages/doxygen/package.py b/var/spack/repos/builtin/packages/doxygen/package.py
index 560e6aa95f..61cfdf8a89 100644
--- a/var/spack/repos/builtin/packages/doxygen/package.py
+++ b/var/spack/repos/builtin/packages/doxygen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Doxygen(Package):
+class Doxygen(CMakePackage):
"""Doxygen is the de facto standard tool for generating documentation
from annotated C++ sources, but it also supports other popular programming
languages such as C, Objective-C, C#, PHP, Java, Python, IDL (Corba,
@@ -49,9 +49,3 @@ class Doxygen(Package):
# optional dependencies
depends_on("graphviz", when="+graphviz", type='run')
-
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/dri2proto/package.py b/var/spack/repos/builtin/packages/dri2proto/package.py
index d05e7ea231..00c4cc812d 100644
--- a/var/spack/repos/builtin/packages/dri2proto/package.py
+++ b/var/spack/repos/builtin/packages/dri2proto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Dri2proto(Package):
+class Dri2proto(AutotoolsPackage):
"""Direct Rendering Infrastructure 2 Extension.
This extension defines a protocol to securely allow user applications to
@@ -39,8 +39,3 @@ class Dri2proto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/dri3proto/package.py b/var/spack/repos/builtin/packages/dri3proto/package.py
index cd2594d5da..5f4604789d 100644
--- a/var/spack/repos/builtin/packages/dri3proto/package.py
+++ b/var/spack/repos/builtin/packages/dri3proto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Dri3proto(Package):
+class Dri3proto(AutotoolsPackage):
"""Direct Rendering Infrastructure 3 Extension.
This extension defines a protocol to securely allow user applications to
@@ -39,8 +39,3 @@ class Dri3proto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/dtcmp/package.py b/var/spack/repos/builtin/packages/dtcmp/package.py
index e59e246d47..c64fa540fa 100644
--- a/var/spack/repos/builtin/packages/dtcmp/package.py
+++ b/var/spack/repos/builtin/packages/dtcmp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,6 +32,7 @@ class Dtcmp(Package):
homepage = "https://github.com/hpc/dtcmp"
url = "https://github.com/hpc/dtcmp/releases/download/v1.0.3/dtcmp-1.0.3.tar.gz"
+ version('1.1.0', 'af5c73f7d3a9afd90a22d0df85471d2f')
version('1.0.3', 'cdd8ccf71e8ff67de2558594a7fcd317')
depends_on('mpi')
diff --git a/var/spack/repos/builtin/packages/dyninst/package.py b/var/spack/repos/builtin/packages/dyninst/package.py
index 420ab0fc68..8a18b99940 100644
--- a/var/spack/repos/builtin/packages/dyninst/package.py
+++ b/var/spack/repos/builtin/packages/dyninst/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,13 +33,8 @@ class Dyninst(Package):
url = "https://github.com/dyninst/dyninst/archive/v9.2.0.tar.gz"
list_url = "http://www.dyninst.org/downloads/dyninst-8.x"
- # version 9.2.1b was the latest git commit when trying to port to a
- # ppc64le system to get fixes in computeAddrWidth independent of
- # endianness. This version can be removed if the next release includes
- # this change. The actual commit was
- # b8596ad4023ec40ac07e669ff8ea3ec06e262703
- version('9.2.1b', git='https://github.com/dyninst/dyninst.git',
- commit='859cb778e20b619443c943c96dd1851da763142b')
+ version('9.3.2', 'a2bf03b6d1d424853e80d39b13e9c229')
+ version('9.3.0', 'edde7847dc673ca69bd59412af572450')
version('9.2.0', 'ad023f85e8e57837ed9de073b59d6bab',
url="https://github.com/dyninst/dyninst/archive/v9.2.0.tar.gz")
version('9.1.0', '5c64b77521457199db44bec82e4988ac',
@@ -54,7 +49,8 @@ class Dyninst(Package):
variant('stat_dysect', default=False,
description="patch for STAT's DySectAPI")
- depends_on("libelf")
+ depends_on("elf@0", type='link', when='@:9.2.99')
+ depends_on("elf@1", type='link', when='@9.3.0:')
depends_on("libdwarf")
depends_on("boost@1.42:")
depends_on('cmake', type='build')
@@ -70,7 +66,7 @@ class Dyninst(Package):
make("install")
return
- libelf = spec['libelf'].prefix
+ libelf = spec['elf'].prefix
libdwarf = spec['libdwarf'].prefix
with working_dir('spack-build', create=True):
diff --git a/var/spack/repos/builtin/packages/ea-utils/package.py b/var/spack/repos/builtin/packages/ea-utils/package.py
new file mode 100644
index 0000000000..181248a401
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ea-utils/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class EaUtils(MakefilePackage):
+ """Command-line tools for processing biological sequencing data. Barcode
+ demultiplexing, adapter trimming, etc. Primarily written to support an
+ Illumina based pipeline - but should work with any FASTQs."""
+
+ homepage = "http://expressionanalysis.github.io/ea-utils/"
+ url = "https://github.com/ExpressionAnalysis/ea-utils/archive/1.04.807.tar.gz"
+
+ version('1.04.807', '5972b9f712920603b7527f46c0063a09')
+
+ depends_on('subversion')
+ depends_on('zlib')
+ depends_on('gsl')
+ depends_on('bamtools')
+ # perl module required for make check, which is included in the default
+ # target
+ depends_on('perl', type='build')
+
+ build_directory = 'clipper'
+
+ def edit(self, spec, prefix):
+ with working_dir('clipper'):
+ makefile = FileFilter('Makefile')
+ makefile.filter('/usr', prefix)
diff --git a/var/spack/repos/builtin/packages/easybuild/package.py b/var/spack/repos/builtin/packages/easybuild/package.py
new file mode 100644
index 0000000000..4fa7eb99fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/easybuild/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Kenneth Hoste, kenneth.hoste@gmail.com
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Easybuild(PythonPackage):
+ """EasyBuild is a software build and installation framework
+ for (scientific) software on HPC systems.
+ """
+
+ homepage = 'http://hpcugent.github.io/easybuild/'
+ url = 'https://pypi.io/packages/source/e/easybuild/easybuild-3.1.2.tar.gz'
+
+ version('3.1.2', 'c2d901c2a71f51b24890fa69c3a46383')
+
+ depends_on('py-easybuild-framework@3.1.2', when='@3.1.2', type='run')
+ depends_on('py-easybuild-easyblocks@3.1.2', when='@3.1.2', type='run')
+ depends_on('py-easybuild-easyconfigs@3.1.2', when='@3.1.2', type='run')
diff --git a/var/spack/repos/builtin/packages/ebms/package.py b/var/spack/repos/builtin/packages/ebms/package.py
new file mode 100644
index 0000000000..252be1bd3d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ebms/package.py
@@ -0,0 +1,69 @@
+#############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Ebms(MakefilePackage):
+ """This is a miniapp for the Energy Banding Monte Carlo (EBMC)
+ neutron transportation simulation code. It is adapted from a
+ similar miniapp provided by Andrew Siegel, whose algorithm is
+ described in [1], where only one process in a compute node
+ is used, and the compute nodes are divided into memory nodes
+ and tracking nodes. Memory nodes do not participate in particle
+ tracking. Obviously, there is a lot of resource waste in this design.
+ """
+
+ homepage = "https://github.com/ANL-CESAR/EBMS"
+ url = "https://github.com/ANL-CESAR/EBMS/archive/master.tar.gz"
+
+ version('develop', git='https://github.com/ANL-CESAR/EBMS.git')
+
+ variant('mpi', default=True, description='Build with MPI support')
+
+ depends_on('mpi', when='+mpi')
+
+ tags = ['proxy-app']
+
+ @property
+ def build_targets(self):
+
+ targets = []
+
+ cflags = '-g -O3 -std=gnu99'
+
+ if '+mpi' in self.spec:
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+
+ targets.append('CFLAGS={0}'.format(cflags))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('ebmc-iallgather', prefix.bin)
+ install('ebmc-rget', prefix.bin)
+ install_tree('run', join_path(prefix, 'run'))
+ install_tree('inputs', join_path(prefix, 'inputs'))
diff --git a/var/spack/repos/builtin/packages/eccodes/enable_only_jasper.patch b/var/spack/repos/builtin/packages/eccodes/enable_only_jasper.patch
new file mode 100644
index 0000000000..9f7dc22ac5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eccodes/enable_only_jasper.patch
@@ -0,0 +1,26 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bf4d78b..ea2f3e9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -162,8 +162,6 @@ if( ENABLE_JPG )
+ set(CMAKE_PREFIX_PATH ${_CMAKE_PREFIX_PATH}) # Restore CMAKE_PREFIX_PATH
+ set(CMAKE_WARN_DEPRECATED ON) # Remove suppression
+
+- find_package( OpenJPEG )
+-
+ if( JASPER_FOUND )
+ list( APPEND ECCODES_TPLS Jasper )
+ set( HAVE_JPEG 1 )
+@@ -172,12 +170,6 @@ if( ENABLE_JPG )
+ string(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" JASPER_VERSION_MAJOR "${JASPER_VERSION_STRING}")
+ endif()
+
+- if( OPENJPEG_FOUND )
+- list( APPEND ECCODES_TPLS OpenJPEG )
+- set( HAVE_JPEG 1 )
+- set( HAVE_LIBOPENJPEG 1 )
+- endif()
+-
+ endif()
+
+
diff --git a/var/spack/repos/builtin/packages/eccodes/enable_only_openjpeg.patch b/var/spack/repos/builtin/packages/eccodes/enable_only_openjpeg.patch
new file mode 100644
index 0000000000..7bf8b7b59f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eccodes/enable_only_openjpeg.patch
@@ -0,0 +1,32 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bf4d78b..3ae50ba 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -151,27 +151,8 @@ set( HAVE_LIBOPENJPEG 0 )
+
+ if( ENABLE_JPG )
+
+- # Note: This is a deprecated feature but we need it to find Jasper at ECMWF.
+- # ecbuild_add_extra_search_paths modifies CMAKE_PREFIX_PATH
+- # which can affect future package discovery if not undone by the caller.
+- # The current CMAKE_PREFIX_PATH is backed up as _CMAKE_PREFIX_PATH
+- #
+- set(CMAKE_WARN_DEPRECATED OFF) # Suppress deprecation message
+- ecbuild_add_extra_search_paths( jasper )
+- find_package( Jasper )
+- set(CMAKE_PREFIX_PATH ${_CMAKE_PREFIX_PATH}) # Restore CMAKE_PREFIX_PATH
+- set(CMAKE_WARN_DEPRECATED ON) # Remove suppression
+-
+ find_package( OpenJPEG )
+
+- if( JASPER_FOUND )
+- list( APPEND ECCODES_TPLS Jasper )
+- set( HAVE_JPEG 1 )
+- set( HAVE_LIBJASPER 1 )
+- # Extract Jasper's major version number to enable conditional code. See ECC-396
+- string(REGEX REPLACE "^([0-9]+)\\.[0-9]+\\.[0-9]+.*" "\\1" JASPER_VERSION_MAJOR "${JASPER_VERSION_STRING}")
+- endif()
+-
+ if( OPENJPEG_FOUND )
+ list( APPEND ECCODES_TPLS OpenJPEG )
+ set( HAVE_JPEG 1 )
diff --git a/var/spack/repos/builtin/packages/eccodes/package.py b/var/spack/repos/builtin/packages/eccodes/package.py
new file mode 100644
index 0000000000..3843ce2ddc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/eccodes/package.py
@@ -0,0 +1,94 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class Eccodes(CMakePackage):
+ """ecCodes is a package developed by ECMWF for processing meteorological
+ data in GRIB (1/2), BUFR (3/4) and GTS header formats."""
+
+ homepage = "https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home"
+ url = "https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-2.2.0-Source.tar.gz?api=v2"
+ list_url = "https://software.ecmwf.int/wiki/display/ECC/Releases"
+
+ version('2.5.0', '5a7e92c58418d855082fa573efd352aa')
+ version('2.2.0', 'b27e6f0a3eea5b92dac37372e4c45a62')
+
+ variant('netcdf', default=False,
+ description='Enable GRIB to NetCDF conversion tool')
+ variant('jp2k', default='openjpeg', values=('openjpeg', 'jasper', 'none'),
+ description='Specify JPEG2000 decoding/encoding backend')
+ variant('png', default=False,
+ description='Enable PNG support for decoding/encoding')
+ variant('aec', default=False,
+ description='Enable Adaptive Entropy Coding for decoding/encoding')
+ variant('pthreads', default=False,
+ description='Enable POSIX threads')
+ variant('openmp', default=False,
+ description='Enable OpenMP threads')
+ variant('memfs', default=False,
+ description='Enable memory based access to definitions/samples')
+ variant('python', default=False,
+ description='Enable the Python interface')
+ variant('fortran', default=True, description='Enable the Fortran support')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'Production'))
+
+ depends_on('netcdf', when='+netcdf')
+ depends_on('openjpeg', when='jp2k=openjpeg')
+ depends_on('jasper', when='jp2k=jasper')
+ depends_on('libpng', when='+png')
+ depends_on('libaec', when='+aec')
+ depends_on('python@:2', when='+python')
+ depends_on('py-numpy', when='+python', type=('build', 'run'))
+ extends('python', when='+python')
+
+ conflicts('+openmp', when='+pthreads',
+ msg='Cannot enable both POSIX threads and OMP')
+
+ # The following enforces linking against the specified JPEG2000 backend.
+ patch('enable_only_openjpeg.patch', when='jp2k=openjpeg')
+ patch('enable_only_jasper.patch', when='jp2k=jasper')
+
+ def cmake_args(self):
+ variants = ['+netcdf', '+png', '+aec', '+pthreads',
+ '+openmp', '+memfs', '+python', '+fortran']
+ options = ['NETCDF', 'PNG', 'AEC', 'ECCODES_THREADS',
+ 'ECCODES_OMP_THREADS', 'MEMFS', 'PYTHON', 'FORTRAN']
+
+ args = map(lambda var, opt:
+ "-DENABLE_%s=%s" %
+ (opt, 'ON' if var in self.spec else 'OFF'),
+ variants,
+ options)
+
+ if self.spec.variants['jp2k'].value == 'none':
+ args.append('-DENABLE_JPG=OFF')
+ else:
+ args.append('-DENABLE_JPG=ON')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
new file mode 100644
index 0000000000..ee1a881aff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import os
+from spack import *
+
+
+class EcpProxyApps(Package):
+ """This is a collection of packages that represents the official suite of
+ DOE/ECP proxy applications. This is a Spack bundle package that
+ installs the ECP proxy application suite.
+ """
+
+ homepage = "https://exascaleproject.github.io/proxy-apps"
+
+ # Dummy url
+ url = 'https://github.com/exascaleproject/proxy-apps/archive/v1.0.tar.gz'
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('1.0', '5a26b184f506afeb7d221f15c0e8f153')
+
+ depends_on('amg@1.0', when='@1.0')
+ depends_on('candle-benchmarks@1.0', when='@1.0')
+ depends_on('comd@1.1', when='@1.0')
+ depends_on('laghos@1.0', when='@1.0')
+ depends_on('macsio@1.0', when='@1.0')
+ depends_on('miniamr@1.4.0', when='@1.0')
+ depends_on('minife@2.1.0', when='@1.0')
+ depends_on('minitri@1.0', when='@1.0')
+ depends_on('nekbone@17.0', when='@1.0')
+ depends_on('sw4lite@1.0', when='@1.0')
+ depends_on('swfft@1.0', when='@1.0')
+ depends_on('xsbench@14', when='@1.0')
+
+ # Dummy install for now, will be removed when metapackage is available
+ def install(self, spec, prefix):
+ with open(os.path.join(spec.prefix, 'package-list.txt'), 'w') as out:
+ for dep in spec.dependencies(deptype='build'):
+ out.write("%s\n" % dep.format(
+ format_string='${PACKAGE} ${VERSION}'))
+ os.symlink(dep.prefix, os.path.join(spec.prefix, dep.name))
+ out.close()
diff --git a/var/spack/repos/builtin/packages/editres/package.py b/var/spack/repos/builtin/packages/editres/package.py
index 52ad33b133..1bba68d305 100644
--- a/var/spack/repos/builtin/packages/editres/package.py
+++ b/var/spack/repos/builtin/packages/editres/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Editres(Package):
+class Editres(AutotoolsPackage):
"""Dynamic resource editor for X Toolkit applications."""
homepage = "http://cgit.freedesktop.org/xorg/app/editres"
@@ -40,9 +40,3 @@ class Editres(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/eigen/package.py b/var/spack/repos/builtin/packages/eigen/package.py
index 1d7df47b21..9e7d8c392e 100644
--- a/var/spack/repos/builtin/packages/eigen/package.py
+++ b/var/spack/repos/builtin/packages/eigen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,23 +25,21 @@
from spack import *
-class Eigen(Package):
+class Eigen(CMakePackage):
"""Eigen is a C++ template library for linear algebra matrices,
vectors, numerical solvers, and related algorithms.
"""
homepage = 'http://eigen.tuxfamily.org/'
- url = 'https://bitbucket.org/eigen/eigen/get/3.2.7.tar.bz2'
+ url = 'https://bitbucket.org/eigen/eigen/get/3.3.3.tar.bz2'
+ version('3.3.3', 'b2ddade41040d9cf73b39b4b51e8775b')
version('3.3.1', 'edb6799ef413b0868aace20d2403864c')
version('3.2.10', 'a85bb68c82988648c3d53ba9768d7dcbcfe105f8')
version('3.2.9', '59ab81212f8eb2534b1545a9b42c38bf618a0d71')
version('3.2.8', '64f4aef8012a424c7e079eaf0be71793ab9bc6e0')
version('3.2.7', 'cc1bacbad97558b97da6b77c9644f184')
- variant('debug', default=False,
- description='Builds the library in debug mode')
-
variant('metis', default=True, description='Enables metis backend')
variant('scotch', default=True, description='Enables scotch backend')
variant('fftw', default=True, description='Enables FFTW backend')
@@ -49,28 +47,14 @@ class Eigen(Package):
description='Enables SuiteSparse support')
variant('mpfr', default=True,
description='Enables support for multi-precisions FP via mpfr')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo'))
# TODO : dependency on googlehash, superlu, adolc missing
- depends_on('cmake', type='build')
depends_on('metis@5:', when='+metis')
depends_on('scotch', when='+scotch')
depends_on('fftw', when='+fftw')
depends_on('suite-sparse', when='+suitesparse')
- depends_on('mpfr@2.3.0:', when="+mpfr")
- depends_on('gmp', when="+mpfr")
-
- def install(self, spec, prefix):
-
- options = []
- options.extend(std_cmake_args)
-
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
-
- if '+debug' in spec:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
-
- with working_dir(build_directory, create=True):
- cmake(source_directory, *options)
- make()
- make("install")
+ depends_on('mpfr@2.3.0:', when='+mpfr')
+ depends_on('gmp', when='+mpfr')
diff --git a/var/spack/repos/builtin/packages/elemental/cmake_0.87.7.patch b/var/spack/repos/builtin/packages/elemental/cmake_0.87.7.patch
new file mode 100644
index 0000000000..a33f5ef0b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/elemental/cmake_0.87.7.patch
@@ -0,0 +1,22 @@
+diff --git a/cmake/configure_files/ElementalConfig.cmake.in b/cmake/configure_files/ElementalConfig.cmake.in
+index d37649f..8511d81 100644
+--- a/cmake/configure_files/ElementalConfig.cmake.in
++++ b/cmake/configure_files/ElementalConfig.cmake.in
+@@ -1,6 +1,8 @@
+ set(Elemental_INCLUDE_DIRS "@CMAKE_INSTALL_PREFIX@/include")
+ set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@MPI_CXX_INCLUDE_PATH@")
+-set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@QD_INCLUDES@")
++IF(@QD_FOUND@)
++ set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@QD_INCLUDES@")
++ENDIF()
+ set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@MPC_INCLUDES@")
+ set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@MPFR_INCLUDES@")
+ set(Elemental_INCLUDE_DIRS "${Elemental_INCLUDE_DIRS};@GMP_INCLUDES@")
+@@ -13,6 +15,6 @@ set(Elemental_LINK_FLAGS "@EL_LINK_FLAGS@")
+ set(Elemental_DEFINITIONS "@Qt5Widgets_DEFINITIONS@")
+
+ # Our library dependencies (contains definitions for IMPORTED targets)
+-include("@CMAKE_INSTALL_PREFIX@/CMake/ElementalTargets.cmake")
++include("${CMAKE_CURRENT_LIST_DIR}/ElementalTargets.cmake")
+
+ set(Elemental_LIBRARIES El)
diff --git a/var/spack/repos/builtin/packages/elemental/elemental_cublas.patch b/var/spack/repos/builtin/packages/elemental/elemental_cublas.patch
new file mode 100644
index 0000000000..9cf9b6e6b5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/elemental/elemental_cublas.patch
@@ -0,0 +1,668 @@
+diff -Naur a/include/El/blas_like/level3.hpp b/include/El/blas_like/level3.hpp
+--- a/include/El/blas_like/level3.hpp 2017-06-08 07:30:43.180249917 -0700
++++ b/include/El/blas_like/level3.hpp 2017-06-08 07:35:27.325434602 -0700
+@@ -31,6 +31,10 @@
+ }
+ using namespace GemmAlgorithmNS;
+
++void GemmUseGPU(int min_M, int min_N, int min_K);
++
++void GemmUseCPU();
++
+ template<typename T>
+ void Gemm
+ ( Orientation orientA, Orientation orientB,
+diff -Naur a/include/El/core/imports/blas.hpp b/include/El/core/imports/blas.hpp
+--- a/include/El/core/imports/blas.hpp 2017-06-08 07:30:43.522016908 -0700
++++ b/include/El/core/imports/blas.hpp 2017-06-08 07:35:06.834030908 -0700
+@@ -916,4 +916,63 @@
+ } // namespace blas
+ } // namespace El
+
++
++#if defined(EL_USE_CUBLAS)
++
++namespace El {
++
++#ifdef EL_USE_64BIT_BLAS_INTS
++typedef long long int BlasInt;
++#else
++typedef int BlasInt;
++#endif
++
++namespace cublas {
++
++// NOTE: templated routines are custom and not wrappers
++
++// Level 3 BLAS
++// ============
++template<typename T>
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const T& alpha,
++ const T* A, BlasInt ALDim,
++ const T* B, BlasInt BLDim,
++ const T& beta,
++ T* C, BlasInt CLDim );
++
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const float& alpha,
++ const float* A, BlasInt ALDim,
++ const float* B, BlasInt BLDim,
++ const float& beta,
++ float* C, BlasInt CLDim );
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const double& alpha,
++ const double* A, BlasInt ALDim,
++ const double* B, BlasInt BLDim,
++ const double& beta,
++ double* C, BlasInt CLDim );
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const scomplex& alpha,
++ const scomplex* A, BlasInt ALDim,
++ const scomplex* B, BlasInt BLDim,
++ const scomplex& beta,
++ scomplex* C, BlasInt CLDim );
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const dcomplex& alpha,
++ const dcomplex* A, BlasInt ALDim,
++ const dcomplex* B, BlasInt BLDim,
++ const dcomplex& beta,
++ dcomplex* C, BlasInt CLDim );
++
++} // namespace cublas
++} // namespace El
++#endif
++
+ #endif // ifndef EL_IMPORTS_BLAS_DECL_HPP
+diff -Naur a/src/blas_like/level3/Gemm.cpp b/src/blas_like/level3/Gemm.cpp
+--- a/src/blas_like/level3/Gemm.cpp 2017-06-08 07:30:44.307096427 -0700
++++ b/src/blas_like/level3/Gemm.cpp 2017-06-08 07:34:23.062863489 -0700
+@@ -16,6 +16,20 @@
+
+ namespace El {
+
++char gemm_cpu_gpu_switch = 'c';
++int min_M = 0, min_N = 0, min_K = 0;
++
++void GemmUseGPU(int _min_M, int _min_N, int _min_K) {
++ gemm_cpu_gpu_switch = 'g';
++ min_M = _min_M;
++ min_N = _min_N;
++ min_K = _min_K;
++}
++
++void GemmUseCPU() {
++ gemm_cpu_gpu_switch = 'c';
++}
++
+ template<typename T>
+ void Gemm
+ ( Orientation orientA, Orientation orientB,
+@@ -59,11 +73,30 @@
+ const Int k = ( orientA == NORMAL ? A.Width() : A.Height() );
+ if( k != 0 )
+ {
++#if defined(EL_USE_CUBLAS)
++ if (gemm_cpu_gpu_switch == 'g' &&
++ m >= min_M &&
++ n >= min_N &&
++ k >= min_K) {
++ cublas::Gemm
++ ( transA, transB, m, n, k,
++ alpha, A.LockedBuffer(), A.LDim(),
++ B.LockedBuffer(), B.LDim(),
++ beta, C.Buffer(), C.LDim() );
++ } else {
++ blas::Gemm
++ ( transA, transB, m, n, k,
++ alpha, A.LockedBuffer(), A.LDim(),
++ B.LockedBuffer(), B.LDim(),
++ beta, C.Buffer(), C.LDim() );
++ }
++#else
+ blas::Gemm
+ ( transA, transB, m, n, k,
+ alpha, A.LockedBuffer(), A.LDim(),
+ B.LockedBuffer(), B.LDim(),
+ beta, C.Buffer(), C.LDim() );
++#endif
+ }
+ else
+ {
+diff -Naur a/src/core/imports/blas/Gemm.hpp b/src/core/imports/blas/Gemm.hpp
+--- a/src/core/imports/blas/Gemm.hpp 2017-06-08 07:30:45.090529967 -0700
++++ b/src/core/imports/blas/Gemm.hpp 2017-06-08 07:34:46.503009958 -0700
+@@ -41,6 +41,12 @@
+
+ } // extern "C"
+
++
++#if defined(EL_USE_CUBLAS)
++#include <cublas.h>
++#include <cub/util_allocator.cuh>
++#endif
++
+ namespace El {
+ namespace blas {
+
+@@ -515,3 +521,515 @@
+
+ } // namespace blas
+ } // namespace El
++
++
++#if EL_USE_CUBLAS
++
++#define USE_CUB 1
++
++namespace El {
++namespace cublas {
++
++#if USE_CUB
++cub::CachingDeviceAllocator g_allocator(true); // Caching allocator for device memory
++#endif
++
++template<typename T>
++void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const T& alpha,
++ const T* A, BlasInt ALDim,
++ const T* B, BlasInt BLDim,
++ const T& beta,
++ T* C, BlasInt CLDim )
++{
++ // put something here
++ printf("integer version \n");
++}
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Int& alpha,
++ const Int* A, BlasInt ALDim,
++ const Int* B, BlasInt BLDim,
++ const Int& beta,
++ Int* C, BlasInt CLDim );
++#ifdef EL_HAVE_QD
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const DoubleDouble& alpha,
++ const DoubleDouble* A, BlasInt ALDim,
++ const DoubleDouble* B, BlasInt BLDim,
++ const DoubleDouble& beta,
++ DoubleDouble* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const QuadDouble& alpha,
++ const QuadDouble* A, BlasInt ALDim,
++ const QuadDouble* B, BlasInt BLDim,
++ const QuadDouble& beta,
++ QuadDouble* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Complex<DoubleDouble>& alpha,
++ const Complex<DoubleDouble>* A, BlasInt ALDim,
++ const Complex<DoubleDouble>* B, BlasInt BLDim,
++ const Complex<DoubleDouble>& beta,
++ Complex<DoubleDouble>* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Complex<QuadDouble>& alpha,
++ const Complex<QuadDouble>* A, BlasInt ALDim,
++ const Complex<QuadDouble>* B, BlasInt BLDim,
++ const Complex<QuadDouble>& beta,
++ Complex<QuadDouble>* C, BlasInt CLDim );
++#endif
++#ifdef EL_HAVE_QUAD
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Quad& alpha,
++ const Quad* A, BlasInt ALDim,
++ const Quad* B, BlasInt BLDim,
++ const Quad& beta,
++ Quad* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Complex<Quad>& alpha,
++ const Complex<Quad>* A, BlasInt ALDim,
++ const Complex<Quad>* B, BlasInt BLDim,
++ const Complex<Quad>& beta,
++ Complex<Quad>* C, BlasInt CLDim );
++#endif
++#ifdef EL_HAVE_MPC
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const BigInt& alpha,
++ const BigInt* A, BlasInt ALDim,
++ const BigInt* B, BlasInt BLDim,
++ const BigInt& beta,
++ BigInt* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const BigFloat& alpha,
++ const BigFloat* A, BlasInt ALDim,
++ const BigFloat* B, BlasInt BLDim,
++ const BigFloat& beta,
++ BigFloat* C, BlasInt CLDim );
++template void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const Complex<BigFloat>& alpha,
++ const Complex<BigFloat>* A, BlasInt ALDim,
++ const Complex<BigFloat>* B, BlasInt BLDim,
++ const Complex<BigFloat>& beta,
++ Complex<BigFloat>* C, BlasInt CLDim );
++#endif
++
++void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const float& alpha,
++ const float* A, BlasInt ALDim,
++ const float* B, BlasInt BLDim,
++ const float& beta,
++ float* C, BlasInt CLDim )
++{
++ EL_DEBUG_CSE
++ EL_DEBUG_ONLY(
++ if( std::toupper(transA) == 'N' )
++ {
++ if( ALDim < Max(m,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",m=",m);
++ }
++ else
++ {
++ if( ALDim < Max(k,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",k=",k);
++ }
++
++ if( std::toupper(transB) == 'N' )
++ {
++ if( BLDim < Max(k,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",k=",k);
++ }
++ else
++ {
++ if( BLDim < Max(n,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",n=",n);
++ }
++
++ if( CLDim < Max(m,1) )
++ LogicError("CLDim was too small: CLDim=",CLDim,",m=",m);
++ )
++ const char fixedTransA = ( std::toupper(transA) == 'C' ? 'T' : transA );
++ const char fixedTransB = ( std::toupper(transB) == 'C' ? 'T' : transB );
++
++ const mpi::Comm comm;
++ const Int commRank = mpi::Rank( comm );
++ if (commRank == 0) {
++ //printf("calling cublas Sgemm: m %d n %d k %d\n", m, n, k);
++ }
++
++ BlasInt rowA, colA, rowB, colB, rowC, colC;
++ // device memory size for A, B and C
++ BlasInt sizeA, sizeB, sizeC;
++ float *devA=NULL, *devB=NULL, *devC=NULL;
++
++ rowA = fixedTransA == 'T' ? k : m;
++ colA = fixedTransA == 'T' ? m : k;
++ rowB = fixedTransB == 'T' ? n : k;
++ colB = fixedTransB == 'T' ? k : n;
++ rowC = m;
++ colC = n;
++ sizeA = rowA * colA;
++ sizeB = rowB * colB;
++ sizeC = rowC * colC;
++
++ cublasStatus stat;
++
++#if USE_CUB
++ CubDebugExit(g_allocator.DeviceAllocate((void**)&devA,
++ sizeof(float) * (sizeA+sizeB+sizeC) ));
++#else
++ stat = cublasAlloc(sizeA+sizeB+sizeC, sizeof(float), (void **) &devA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("Alloc A,B,C error\n"); }
++#endif
++
++ devB = devA + sizeA;
++ devC = devB + sizeB;
++
++ // copy matrix A, B and C to device
++ stat = cublasSetMatrix(rowA, colA, sizeof(float), A, ALDim, devA, rowA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix A error\n"); }
++
++ stat = cublasSetMatrix(rowB, colB, sizeof(float), B, BLDim, devB, rowB);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix B error\n"); }
++
++ if (beta != 0.0)
++ {
++ stat = cublasSetMatrix(rowC, colC, sizeof(float), C, CLDim, devC, rowC);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix C error\n"); }
++ }
++
++ // cublas<t>gemm
++ cublasSgemm
++ ( fixedTransA, fixedTransB, m, n, k,
++ alpha, devA, rowA, devB, rowB, beta, devC, rowC );
++
++ // copy matrix C to host
++ stat = cublasGetMatrix(rowC, colC, sizeof(float), devC, rowC, C, CLDim);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("GetMatrix C error\n"); }
++
++ // free
++#if USE_CUB
++ CubDebugExit(g_allocator.DeviceFree(devA));
++#else
++ cublasFree(devA);
++#endif
++ //printf("CUBLAS float done ...\n");
++}
++
++void Gemm
++( char transA, char transB,
++ BlasInt m, BlasInt n, BlasInt k,
++ const double& alpha,
++ const double* A, BlasInt ALDim,
++ const double* B, BlasInt BLDim,
++ const double& beta,
++ double* C, BlasInt CLDim )
++{
++ EL_DEBUG_CSE
++ EL_DEBUG_ONLY(
++ if( std::toupper(transA) == 'N' )
++ {
++ if( ALDim < Max(m,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",m=",m);
++ }
++ else
++ {
++ if( ALDim < Max(k,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",k=",k);
++ }
++
++ if( std::toupper(transB) == 'N' )
++ {
++ if( BLDim < Max(k,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",k=",k);
++ }
++ else
++ {
++ if( BLDim < Max(n,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",n=",n);
++ }
++
++ if( CLDim < Max(m,1) )
++ LogicError("CLDim was too small: CLDim=",CLDim,",m=",m);
++ )
++ const char fixedTransA = ( std::toupper(transA) == 'C' ? 'T' : transA );
++ const char fixedTransB = ( std::toupper(transB) == 'C' ? 'T' : transB );
++
++ const mpi::Comm comm;
++ const Int commRank = mpi::Rank( comm );
++ if (commRank == 0) {
++ //printf("calling cublas Dgemm: m %d n %d k %d\n", m, n, k);
++ }
++
++ BlasInt rowA, colA, rowB, colB, rowC, colC;
++ // device memory size for A, B and C
++ BlasInt sizeA, sizeB, sizeC;
++ double *devA=NULL, *devB=NULL, *devC=NULL;
++
++ rowA = fixedTransA == 'T' ? k : m;
++ colA = fixedTransA == 'T' ? m : k;
++ rowB = fixedTransB == 'T' ? n : k;
++ colB = fixedTransB == 'T' ? k : n;
++ rowC = m;
++ colC = n;
++ sizeA = rowA * colA;
++ sizeB = rowB * colB;
++ sizeC = rowC * colC;
++
++ cublasStatus stat;
++
++#if USE_CUB
++ CubDebugExit(g_allocator.DeviceAllocate((void**)&devA,
++ sizeof(double) * (sizeA+sizeB+sizeC) ));
++#else
++ stat = cublasAlloc(sizeA+sizeB+sizeC, sizeof(double), (void **) &devA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("Alloc A,B,C error\n"); }
++#endif
++
++ devB = devA + sizeA;
++ devC = devB + sizeB;
++
++ // copy matrix A, B and C to device
++ stat = cublasSetMatrix(rowA, colA, sizeof(double), A, ALDim, devA, rowA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix A error\n"); }
++
++ stat = cublasSetMatrix(rowB, colB, sizeof(double), B, BLDim, devB, rowB);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix B error\n"); }
++
++ if (beta != 0.0)
++ {
++ stat = cublasSetMatrix(rowC, colC, sizeof(double), C, CLDim, devC, rowC);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix C error\n"); }
++ }
++
++ // cublas<t>gemm
++ cublasDgemm
++ ( fixedTransA, fixedTransB, m, n, k,
++ alpha, devA, rowA, devB, rowB, beta, devC, rowC );
++
++ // copy matrix C to host
++ stat = cublasGetMatrix(rowC, colC, sizeof(double), devC, rowC, C, CLDim);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("GetMatrix C error\n"); }
++
++ // free
++#if USE_CUB
++ CubDebugExit(g_allocator.DeviceFree(devA));
++#else
++ cublasFree(devA);
++#endif
++ //printf("CUBLAS double done ...\n");
++}
++
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const scomplex& alpha,
++ const scomplex* A, BlasInt ALDim,
++ const scomplex* B, BlasInt BLDim,
++ const scomplex& beta,
++ scomplex* C, BlasInt CLDim )
++{
++ EL_DEBUG_CSE
++ EL_DEBUG_ONLY(
++ if( std::toupper(transA) == 'N' )
++ {
++ if( ALDim < Max(m,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",m=",m);
++ }
++ else
++ {
++ if( ALDim < Max(k,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",k=",k);
++ }
++
++ if( std::toupper(transB) == 'N' )
++ {
++ if( BLDim < Max(k,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",k=",k);
++ }
++ else
++ {
++ if( BLDim < Max(n,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",n=",n);
++ }
++
++ if( CLDim < Max(m,1) )
++ LogicError("CLDim was too small: CLDim=",CLDim,",m=",m);
++ )
++
++ const char fixedTransA = transA;
++ const char fixedTransB = transB;
++
++ const mpi::Comm comm;
++ const Int commRank = mpi::Rank( comm );
++ if (commRank == 0) {
++ //printf("calling cublas Cgemm: m %d n %d k %d\n", m, n, k);
++ }
++
++ BlasInt rowA, colA, rowB, colB, rowC, colC;
++ // device memory size for A, B and C
++ BlasInt sizeA, sizeB, sizeC;
++ cuComplex *devA=NULL, *devB=NULL, *devC=NULL;
++
++ rowA = fixedTransA == 'T' ? k : m;
++ colA = fixedTransA == 'T' ? m : k;
++ rowB = fixedTransB == 'T' ? n : k;
++ colB = fixedTransB == 'T' ? k : n;
++ rowC = m;
++ colC = n;
++ sizeA = rowA * colA;
++ sizeB = rowB * colB;
++ sizeC = rowC * colC;
++
++ cublasStatus stat;
++ stat = cublasAlloc(sizeA+sizeB+sizeC, sizeof(cuComplex), (void **) &devA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("Alloc A,B,C error\n"); }
++
++ devB = devA + sizeA;
++ devC = devB + sizeB;
++
++ // copy matrix A, B and C to device
++ stat = cublasSetMatrix(rowA, colA, sizeof(cuComplex), A, ALDim, devA, rowA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix A error\n"); }
++
++ stat = cublasSetMatrix(rowB, colB, sizeof(cuComplex), B, BLDim, devB, rowB);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix B error\n"); }
++
++ if (beta.real() != 0.0 || beta.imag() != 0.0)
++ {
++ stat = cublasSetMatrix(rowC, colC, sizeof(cuComplex), C, CLDim, devC, rowC);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix C error\n"); }
++ }
++
++ // cublas<t>gemm
++ cublasCgemm
++ ( fixedTransA, fixedTransB, m, n, k,
++ *((cuComplex*) &alpha), devA, rowA, devB, rowB, *((cuComplex*) &beta), devC, rowC );
++
++ // copy matrix C to host
++ stat = cublasGetMatrix(rowC, colC, sizeof(cuComplex), devC, rowC, C, CLDim);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("GetMatrix C error\n"); }
++
++ // free
++ cublasFree(devA);
++}
++
++void Gemm
++( char transA, char transB, BlasInt m, BlasInt n, BlasInt k,
++ const dcomplex& alpha,
++ const dcomplex* A, BlasInt ALDim,
++ const dcomplex* B, BlasInt BLDim,
++ const dcomplex& beta,
++ dcomplex* C, BlasInt CLDim )
++{
++ EL_DEBUG_CSE
++ EL_DEBUG_ONLY(
++ if( std::toupper(transA) == 'N' )
++ {
++ if( ALDim < Max(m,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",m=",m);
++ }
++ else
++ {
++ if( ALDim < Max(k,1) )
++ LogicError("ALDim was too small: ALDim=",ALDim,",k=",k);
++ }
++
++ if( std::toupper(transB) == 'N' )
++ {
++ if( BLDim < Max(k,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",k=",k);
++ }
++ else
++ {
++ if( BLDim < Max(n,1) )
++ LogicError("BLDim was too small: BLDim=",BLDim,",n=",n);
++ }
++
++ if( CLDim < Max(m,1) )
++ LogicError("CLDim was too small: CLDim=",CLDim,",m=",m);
++ )
++
++ const char fixedTransA = transA;
++ const char fixedTransB = transB;
++
++ const mpi::Comm comm;
++ const Int commRank = mpi::Rank( comm );
++ if (commRank == 0) {
++ //printf("calling cublas Zgemm: m %d n %d k %d\n", m, n, k);
++ }
++
++ BlasInt rowA, colA, rowB, colB, rowC, colC;
++ // device memory size for A, B and C
++ BlasInt sizeA, sizeB, sizeC;
++ cuDoubleComplex *devA=NULL, *devB=NULL, *devC=NULL;
++
++ rowA = fixedTransA == 'T' ? k : m;
++ colA = fixedTransA == 'T' ? m : k;
++ rowB = fixedTransB == 'T' ? n : k;
++ colB = fixedTransB == 'T' ? k : n;
++ rowC = m;
++ colC = n;
++ sizeA = rowA * colA;
++ sizeB = rowB * colB;
++ sizeC = rowC * colC;
++
++ cublasStatus stat;
++ stat = cublasAlloc(sizeA+sizeB+sizeC, sizeof(cuDoubleComplex), (void **) &devA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("Alloc A,B,C error\n"); }
++
++ devB = devA + sizeA;
++ devC = devB + sizeB;
++
++ // copy matrix A, B and C to device
++ stat = cublasSetMatrix(rowA, colA, sizeof(cuDoubleComplex), A, ALDim, devA, rowA);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix A error\n"); }
++
++ stat = cublasSetMatrix(rowB, colB, sizeof(cuDoubleComplex), B, BLDim, devB, rowB);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix B error\n"); }
++
++ if (beta.real() != 0.0 || beta.imag() != 0.0)
++ {
++ stat = cublasSetMatrix(rowC, colC, sizeof(cuDoubleComplex), C, CLDim, devC, rowC);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("SetMatrix C error\n"); }
++ }
++
++ cublasZgemm
++ ( fixedTransA, fixedTransB, m, n, k,
++ *((cuDoubleComplex*) &alpha), devA, rowA, devB, rowB, *((cuDoubleComplex*) &beta),
++ devC, rowC );
++
++ // copy matrix C to host
++ stat = cublasGetMatrix(rowC, colC, sizeof(cuDoubleComplex), devC, rowC, C, CLDim);
++ if (stat != CUBLAS_STATUS_SUCCESS) { RuntimeError("GetMatrix C error\n"); }
++
++ // free
++ cublasFree(devA);
++}
++
++} // namespace cublas
++} // namespace El
++
++#endif
++
diff --git a/var/spack/repos/builtin/packages/elemental/package.py b/var/spack/repos/builtin/packages/elemental/package.py
new file mode 100644
index 0000000000..14e376628c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/elemental/package.py
@@ -0,0 +1,172 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import os
+from spack import *
+from spack.spec import UnsupportedCompilerError
+
+
+class Elemental(CMakePackage):
+ """Elemental: Distributed-memory dense and sparse-direct linear algebra
+ and optimization library."""
+
+ homepage = "http://libelemental.org"
+ url = "https://github.com/elemental/Elemental/archive/v0.87.6.tar.gz"
+
+ version('develop', git='https://github.com/elemental/Elemental.git', branch='master')
+ version('0.87.7', '6c1e7442021c59a36049e37ea69b8075')
+ version('0.87.6', '9fd29783d45b0a0e27c0df85f548abe9')
+
+ variant('shared', default=True,
+ description='Enables the build of shared libraries')
+ variant('hybrid', default=True,
+ description='Make use of OpenMP within MPI packing/unpacking')
+ variant('openmp_blas', default=False,
+ description='Use OpenMP for threading in the BLAS library')
+ variant('c', default=False,
+ description='Build C interface')
+ variant('python', default=False,
+ description='Install Python interface')
+ variant('parmetis', default=False,
+ description='Enable ParMETIS')
+ variant('quad', default=False,
+ description='Enable quad precision')
+ variant('int64', default=False,
+ description='Use 64bit integers')
+ variant('cublas', default=False,
+ description='Enable cuBLAS for local BLAS operations')
+ # When this variant is set remove the normal dependencies since
+ # Elemental has to build BLAS and ScaLAPACK internally
+ variant('int64_blas', default=False,
+ description='Use 64bit integers for BLAS.'
+ ' Requires local build of BLAS library.')
+ variant('scalapack', default=False,
+ description='Build with ScaLAPACK library')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
+ variant('blas', default='openblas', values=('openblas', 'mkl'),
+ description='Enable the use of OpenBlas/MKL')
+ variant('mpfr', default=False,
+ description='Support GNU MPFR\'s'
+ 'arbitrary-precision floating-point arithmetic')
+
+ # Note that #1712 forces us to enumerate the different blas variants
+ depends_on('blas', when='~openmp_blas ~int64_blas')
+ # Hack to forward variant to openblas package
+ # Allow Elemental to build internally when using 8-byte ints
+ depends_on('openblas threads=openmp', when='blas=openblas +openmp_blas ~int64_blas')
+
+ depends_on('intel-mkl', when="blas=mkl ~openmp_blas ~int64_blas")
+ depends_on('intel-mkl threads=openmp', when='blas=mkl +openmp_blas ~int64_blas')
+ depends_on('intel-mkl@2017.1 +openmp +ilp64', when='blas=mkl +openmp_blas +int64_blas')
+
+ # Note that this forces us to use OpenBLAS until #1712 is fixed
+ depends_on('lapack', when='blas=openblas ~openmp_blas')
+ depends_on('metis')
+ depends_on('metis +int64', when='+int64')
+ depends_on('mpi')
+ # Allow Elemental to build internally when using 8-byte ints
+ depends_on('scalapack', when='+scalapack ~int64_blas')
+ extends('python', when='+python')
+ depends_on('python@:2.8', when='+python')
+ depends_on('gmp', when='+mpfr')
+ depends_on('mpc', when='+mpfr')
+ depends_on('mpfr', when='+mpfr')
+
+ patch('elemental_cublas.patch', when='+cublas')
+ patch('cmake_0.87.7.patch', when='@0.87.7')
+
+ @property
+ def libs(self):
+ shared = True if '+shared' in self.spec else False
+ return find_libraries(
+ 'libEl', root=self.prefix, shared=shared, recurse=True
+ )
+
+ def cmake_args(self):
+ spec = self.spec
+
+ if '@:0.87.7' in spec and '%intel@:17.0.2' in spec:
+ raise UnsupportedCompilerError(
+ "Elemental {0} has a known bug with compiler: {1} {2}".format(
+ spec.version, spec.compiler.name, spec.compiler.version))
+
+ args = [
+ '-DCMAKE_INSTALL_MESSAGE:STRING=LAZY',
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
+ '-DEL_PREFER_OPENBLAS:BOOL=TRUE',
+ '-DEL_DISABLE_SCALAPACK:BOOL=%s' % ('~scalapack' in spec),
+ '-DBUILD_SHARED_LIBS:BOOL=%s' % ('+shared' in spec),
+ '-DEL_HYBRID:BOOL=%s' % ('+hybrid' in spec),
+ '-DEL_C_INTERFACE:BOOL=%s' % ('+c' in spec),
+ '-DINSTALL_PYTHON_PACKAGE:BOOL=%s' % ('+python' in spec),
+ '-DEL_DISABLE_PARMETIS:BOOL=%s' % ('~parmetis' in spec),
+ '-DEL_DISABLE_QUAD:BOOL=%s' % ('~quad' in spec),
+ '-DEL_USE_64BIT_INTS:BOOL=%s' % ('+int64' in spec),
+ '-DEL_USE_64BIT_BLAS_INTS:BOOL=%s' % ('+int64_blas' in spec),
+ '-DEL_DISABLE_MPFR:BOOL=%s' % ('~mpfr' in spec)]
+
+ if self.spec.satisfies('%intel'):
+ ifort = env['SPACK_F77']
+ intel_bin = os.path.dirname(ifort)
+ intel_root = os.path.dirname(intel_bin)
+ libfortran = LibraryList('{0}/lib/intel64/libifcoremt.{1}'
+ .format(intel_root, dso_suffix))
+ elif self.spec.satisfies('%gcc'):
+ # see <stage_folder>/debian/rules as an example:
+ mpif77 = Executable(spec['mpi'].mpif77)
+ libfortran = LibraryList(mpif77('--print-file-name',
+ 'libgfortran.%s' % dso_suffix,
+ output=str))
+ if libfortran:
+ args.append('-DGFORTRAN_LIB=%s' % libfortran.libraries[0])
+
+ # If using 64bit int BLAS libraries, elemental has to build
+ # them internally
+ if '+int64_blas' in spec:
+ args.extend(['-DEL_BLAS_SUFFIX:STRING={0}'.format((
+ '_64_' if '+int64_blas' in spec else '_')),
+ '-DCUSTOM_BLAS_SUFFIX:BOOL=TRUE']),
+ if '+scalapack' in spec:
+ args.extend(['-DEL_LAPACK_SUFFIX:STRING={0}'.format((
+ '_64_' if '+int64_blas' in spec else '_')),
+ '-DCUSTOM_LAPACK_SUFFIX:BOOL=TRUE']),
+ else:
+ math_libs = (spec['lapack'].libs +
+ spec['blas'].libs)
+
+ if '+scalapack' in spec:
+ math_libs = spec['scalapack'].libs + math_libs
+
+ args.extend([
+ '-DMATH_LIBS:STRING={0}'.format(math_libs.ld_flags)])
+
+ if '+python' in spec:
+ args.extend([
+ '-DPYTHON_SITE_PACKAGES:STRING={0}'.format(site_packages_dir)])
+
+ return args
diff --git a/var/spack/repos/builtin/packages/elfutils/package.py b/var/spack/repos/builtin/packages/elfutils/package.py
index ef8c2433c9..2db5d71d3a 100644
--- a/var/spack/repos/builtin/packages/elfutils/package.py
+++ b/var/spack/repos/builtin/packages/elfutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Elfutils(Package):
+class Elfutils(AutotoolsPackage):
"""elfutils is a collection of various binary tools such as
eu-objdump, eu-readelf, and other utilities that allow you to
inspect and manipulate ELF files. Refer to Table 5.Tools Included
@@ -35,16 +35,23 @@ class Elfutils(Package):
homepage = "https://fedorahosted.org/elfutils/"
- version('0.163',
- git='git://git.fedorahosted.org/git/elfutils.git',
- tag='elfutils-0.163')
+ url = "https://sourceware.org/elfutils/ftp/0.168/elfutils-0.168.tar.bz2"
+ list_url = "https://sourceware.org/elfutils/ftp"
+ list_depth = 1
- provides('elf')
+ version('0.170', '03599aee98c9b726c7a732a2dd0245d5')
+ version('0.168', '52adfa40758d0d39e5d5c57689bf38d6')
+ version('0.163', '77ce87f259987d2e54e4d87b86cbee41', preferred=True)
- def install(self, spec, prefix):
- autoreconf = which('autoreconf')
- autoreconf('-if')
+ depends_on('flex', type='build')
+ depends_on('bison', type='build')
+ depends_on('gettext')
- configure('--prefix=%s' % prefix, '--enable-maintainer-mode')
- make()
- make("install")
+ provides('elf@1')
+
+ def configure_args(self):
+ # configure doesn't use LIBS correctly
+ gettext_lib = self.spec['gettext'].prefix.lib,
+ return [
+ 'LDFLAGS=-Wl,--no-as-needed -L%s -lintl' % gettext_lib,
+ '--enable-maintainer-mode']
diff --git a/var/spack/repos/builtin/packages/elk/package.py b/var/spack/repos/builtin/packages/elk/package.py
index acaf863935..6abebb4174 100644
--- a/var/spack/repos/builtin/packages/elk/package.py
+++ b/var/spack/repos/builtin/packages/elk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,11 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import spack
from spack import *
-class Elk(Package):
+class Elk(MakefilePackage):
'''An all-electron full-potential linearised augmented-plane wave
(FP-LAPW) code with many advanced features.'''
@@ -60,7 +59,7 @@ class Elk(Package):
# Cannot be built in parallel
parallel = False
- def configure(self, spec):
+ def edit(self, spec, prefix):
# Dictionary of configuration options
config = {
'MAKE': 'make',
@@ -90,9 +89,9 @@ class Elk(Package):
blas = 'blas.a'
lapack = 'lapack.a'
if '+blas' in spec:
- blas = spec['blas'].blas_libs.joined()
+ blas = spec['blas'].libs.joined()
if '+lapack' in spec:
- lapack = spec['lapack'].lapack_libs.joined()
+ lapack = spec['lapack'].libs.joined()
# lapack must come before blas
config['LIB_LPK'] = ' '.join([lapack, blas])
@@ -110,8 +109,8 @@ class Elk(Package):
config['F90'] = spec['mpi'].mpifc
config['F77'] = spec['mpi'].mpif77
else:
- config['F90'] = join_path(spack.build_env_path, 'f90')
- config['F77'] = join_path(spack.build_env_path, 'f77')
+ config['F90'] = spack_fc
+ config['F77'] = spack_f77
config['SRC_MPI'] = 'mpi_stub.f90'
# OpenMP support
@@ -141,14 +140,8 @@ class Elk(Package):
inc.write('{0} = {1}\n'.format(key, config[key]))
def install(self, spec, prefix):
- # Elk only provides an interactive setup script
- self.configure(spec)
-
- make()
- make('test')
-
# The Elk Makefile does not provide an install target
- mkdirp(prefix.bin)
+ mkdir(prefix.bin)
install('src/elk', prefix.bin)
install('src/eos/eos', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/elpa/package.py b/var/spack/repos/builtin/packages/elpa/package.py
index b433bf40b0..3761f26cc0 100644
--- a/var/spack/repos/builtin/packages/elpa/package.py
+++ b/var/spack/repos/builtin/packages/elpa/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,24 +26,16 @@
from spack import *
-class Elpa(Package):
- """
- Eigenvalue solvers for Petaflop-Applications (ELPA)
- """
+class Elpa(AutotoolsPackage):
+ """Eigenvalue solvers for Petaflop-Applications (ELPA)"""
homepage = 'http://elpa.mpcdf.mpg.de/'
url = 'http://elpa.mpcdf.mpg.de/elpa-2015.11.001.tar.gz'
- version(
- '2016.05.003',
- '88a9f3f3bfb63e16509dd1be089dcf2c',
- url='http://elpa.mpcdf.mpg.de/html/Releases/2016.05.003/elpa-2016.05.003.tar.gz'
- )
- version(
- '2015.11.001',
- 'de0f35b7ee7c971fd0dca35c900b87e6',
- url='http://elpa.mpcdf.mpg.de/elpa-2015.11.001.tar.gz'
- )
+ version('2016.11.001.pre', '5656fd066cf0dcd071dbcaf20a639b37')
+ version('2016.05.004', 'c0dd3a53055536fc3a2a221e78d8b376', preferred=True)
+ version('2016.05.003', '88a9f3f3bfb63e16509dd1be089dcf2c')
+ version('2015.11.001', 'de0f35b7ee7c971fd0dca35c900b87e6')
variant('openmp', default=False, description='Activates OpenMP support')
@@ -52,30 +44,39 @@ class Elpa(Package):
depends_on('lapack')
depends_on('scalapack')
- def install(self, spec, prefix):
-
- options = [
- 'CC={0}'.format(self.spec['mpi'].mpicc),
- 'FC={0}'.format(self.spec['mpi'].mpifc),
- 'CXX={0}'.format(self.spec['mpi'].mpicxx),
- 'FCFLAGS={0}'.format(
- spec['lapack'].lapack_libs.joined()
- ),
- 'LDFLAGS={0}'.format(
- spec['lapack'].lapack_libs.joined()
- ),
- 'SCALAPACK_FCFLAGS={0}'.format(
- spec['scalapack'].scalapack_libs.joined()
- ),
- 'SCALAPACK_LDFLAGS={0}'.format(
- spec['scalapack'].scalapack_libs.joined()
- ),
- '--prefix={0}'.format(self.prefix)
- ]
-
- if '+openmp' in spec:
- options.append("--enable-openmp")
+ def url_for_version(self, version):
+ t = 'http://elpa.mpcdf.mpg.de/html/Releases/{0}/elpa-{0}.tar.gz'
+ if version < Version('2016.05.003'):
+ t = 'http://elpa.mpcdf.mpg.de/elpa-{0}.tar.gz'
+ return t.format(str(version))
+
+ # override default implementation which returns static lib
+ @property
+ def libs(self):
+
+ libname = 'libelpa_openmp' if '+openmp' in self.spec else 'libelpa'
+
+ return find_libraries(
+ libname, root=self.prefix, shared=True, recurse=True
+ )
+
+ build_directory = 'spack-build'
- configure(*options)
- make()
- make("install")
+ def setup_environment(self, spack_env, run_env):
+ # TODO: set optimum flags for platform+compiler combo, see
+ # https://github.com/hfp/xconfigure/tree/master/elpa
+ spec = self.spec
+
+ spack_env.set('CC', spec['mpi'].mpicc)
+ spack_env.set('FC', spec['mpi'].mpifc)
+ spack_env.set('CXX', spec['mpi'].mpicxx)
+
+ spack_env.append_flags('LDFLAGS', spec['lapack'].libs.search_flags)
+ spack_env.append_flags('LIBS', spec['lapack'].libs.link_flags)
+ spack_env.set('SCALAPACK_LDFLAGS', spec['scalapack'].libs.joined())
+
+ def configure_args(self):
+ options = []
+ if '+openmp' in self.spec:
+ options.append("--enable-openmp")
+ return options
diff --git a/var/spack/repos/builtin/packages/emacs/package.py b/var/spack/repos/builtin/packages/emacs/package.py
index 1f9caee24c..4b0d7a9689 100644
--- a/var/spack/repos/builtin/packages/emacs/package.py
+++ b/var/spack/repos/builtin/packages/emacs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,29 @@
from spack import *
-class Emacs(Package):
+class Emacs(AutotoolsPackage):
"""The Emacs programmable text editor."""
homepage = "https://www.gnu.org/software/emacs"
url = "http://ftp.gnu.org/gnu/emacs/emacs-24.5.tar.gz"
+ version('25.3', '74ddd373dc52ac05ca7a8c63b1ddbf58')
+ version('25.2', '0a36d1cdbba6024d4dbbac027f87995f')
version('25.1', '95c12e6a9afdf0dcbdd7d2efa26ca42c')
version('24.5', 'd74b597503a68105e61b5b9f6d065b44')
variant('X', default=False, description="Enable an X toolkit")
- variant('toolkit', default='gtk',
- description="Select an X toolkit (gtk, athena)")
+ variant(
+ 'toolkit',
+ default='gtk',
+ values=('gtk', 'athena'),
+ description="Select an X toolkit (gtk, athena)"
+ )
+
+ depends_on('pkg-config@0.9.0:', type='build')
depends_on('ncurses')
+ depends_on('zlib')
depends_on('libtiff', when='+X')
depends_on('libpng', when='+X')
depends_on('libxpm', when='+X')
@@ -47,13 +56,11 @@ class Emacs(Package):
depends_on('libxaw', when='+X toolkit=athena')
depends_on('gtkplus+X', when='+X toolkit=gtk')
- def install(self, spec, prefix):
- args = []
+ def configure_args(self):
+ spec = self.spec
+
toolkit = spec.variants['toolkit'].value
if '+X' in spec:
- if toolkit not in ('gtk', 'athena'):
- raise InstallError("toolkit must be in (gtk, athena), not %s" %
- toolkit)
args = [
'--with-x',
'--with-x-toolkit={0}'.format(toolkit)
@@ -61,7 +68,4 @@ class Emacs(Package):
else:
args = ['--without-x']
- configure('--prefix={0}'.format(prefix), *args)
-
- make()
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/emboss/package.py b/var/spack/repos/builtin/packages/emboss/package.py
new file mode 100644
index 0000000000..fe3f18a0dc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/emboss/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Emboss(AutotoolsPackage):
+ """EMBOSS is a free Open Source software analysis package specially
+ developed for the needs of the molecular biology (e.g. EMBnet) user
+ community"""
+
+ homepage = "http://emboss.sourceforge.net/"
+ url = "ftp://emboss.open-bio.org/pub/EMBOSS/EMBOSS-6.6.0.tar.gz"
+
+ version('6.6.0', 'cc3fca80cb0618deb10fa0d29fe90e4b')
+
+ depends_on('libxpm')
+ depends_on('libgd')
+ depends_on('postgresql')
diff --git a/var/spack/repos/builtin/packages/encodings/package.py b/var/spack/repos/builtin/packages/encodings/package.py
index 67b21a6e07..f356b052fc 100644
--- a/var/spack/repos/builtin/packages/encodings/package.py
+++ b/var/spack/repos/builtin/packages/encodings/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/environment-modules/package.py b/var/spack/repos/builtin/packages/environment-modules/package.py
index 11ddb12876..ed84cea0a9 100644
--- a/var/spack/repos/builtin/packages/environment-modules/package.py
+++ b/var/spack/repos/builtin/packages/environment-modules/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,6 +35,8 @@ class EnvironmentModules(Package):
version('3.2.10', '8b097fdcb90c514d7540bb55a3cb90fb')
+ variant('X', default=True, description='Build with X functionality')
+
# Dependencies:
depends_on('tcl', type=('build', 'link', 'run'))
@@ -75,6 +77,9 @@ class EnvironmentModules(Package):
'CPPFLAGS=' + ' '.join(cpp_flags)
]
+ if '~X' in spec:
+ config_args = ['--without-x'] + config_args
+
configure(*config_args)
make()
make('install')
diff --git a/var/spack/repos/builtin/packages/es/package.py b/var/spack/repos/builtin/packages/es/package.py
new file mode 100644
index 0000000000..6a73488e8f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/es/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Es(AutotoolsPackage):
+
+ """Es is an extensible shell. The language was derived from the Plan 9
+ shell, rc, and was influenced by functional programming languages,
+ such as Scheme, and the Tcl embeddable programming language. This
+ implementation is derived from Byron Rakitzis's public domain
+ implementation of rc."""
+
+ homepage = "http://wryun.github.io/es-shell/"
+ url = "https://github.com/wryun/es-shell/releases/download/v0.9.1/es-0.9.1.tar.gz"
+
+ version('0.9.1', 'bf4db55b47bcc99892468b2e0aec0c9e')
+
+ depends_on('readline')
diff --git a/var/spack/repos/builtin/packages/esmf/gcc.patch b/var/spack/repos/builtin/packages/esmf/gcc.patch
new file mode 100644
index 0000000000..4b349b271f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/esmf/gcc.patch
@@ -0,0 +1,26 @@
+From 3706bf758012daebadef83d6575c477aeff9c89b Mon Sep 17 00:00:00 2001
+From: Walter Spector <wws@sgi.com>
+Date: Fri, 29 Apr 2016 12:57:16 -0700
+Subject: [PATCH] Fix a file open test in the Moab I/O code that gcc 6.1
+ noticed.
+
+---
+ src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp b/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
+index 1c44057..89e5f23 100644
+--- a/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
++++ b/src/Infrastructure/Mesh/src/Moab/io/ReadABAQUS.cpp
+@@ -105,7 +105,7 @@ void ReadABAQUS::reset()
+ ReadABAQUS::~ReadABAQUS()
+ {
+ mdbImpl->release_interface(readMeshIface);
+- if (NULL != abFile)
++ if (abFile.is_open())
+ abFile.close();
+ }
+
+--
+2.7.4
+
diff --git a/var/spack/repos/builtin/packages/esmf/mvapich2.patch b/var/spack/repos/builtin/packages/esmf/mvapich2.patch
new file mode 100644
index 0000000000..8352faae44
--- /dev/null
+++ b/var/spack/repos/builtin/packages/esmf/mvapich2.patch
@@ -0,0 +1,225 @@
+From 34de0ccf556ba75d35c9687dae5d9f666a1b2a18 Mon Sep 17 00:00:00 2001
+From: Walter Spector <wws@sgi.com>
+Date: Tue, 22 Nov 2016 10:57:53 -0800
+Subject: [PATCH] Detect and use libmpifort when available in mvaphich2
+ configurations.
+
+---
+ build_config/Darwin.absoft.default/build_rules.mk | 1 +
+ build_config/Darwin.g95.default/build_rules.mk | 1 +
+ build_config/Darwin.gfortran.default/build_rules.mk | 1 +
+ build_config/Darwin.gfortranclang.default/build_rules.mk | 1 +
+ build_config/Darwin.intel.default/build_rules.mk | 1 +
+ build_config/Darwin.nag.default/build_rules.mk | 1 +
+ build_config/Linux.absoft.default/build_rules.mk | 1 +
+ build_config/Linux.g95.default/build_rules.mk | 1 +
+ build_config/Linux.gfortran.default/build_rules.mk | 1 +
+ build_config/Linux.gfortranclang.default/build_rules.mk | 1 +
+ build_config/Linux.intel.default/build_rules.mk | 1 +
+ build_config/Linux.intelgcc.default/build_rules.mk | 1 +
+ build_config/Linux.lahey.default/build_rules.mk | 1 +
+ build_config/Linux.nag.default/build_rules.mk | 1 +
+ build_config/Linux.pgi.default/build_rules.mk | 1 +
+ scripts/libs.mvapich2f90 | 10 ++++++++++
+ 16 files changed, 25 insertions(+)
+ create mode 100755 scripts/libs.mvapich2f90
+
+diff --git a/build_config/Darwin.absoft.default/build_rules.mk b/build_config/Darwin.absoft.default/build_rules.mk
+index 059ff82..88a95fe 100644
+--- a/build_config/Darwin.absoft.default/build_rules.mk
++++ b/build_config/Darwin.absoft.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Darwin.g95.default/build_rules.mk b/build_config/Darwin.g95.default/build_rules.mk
+index 9789b26..a7bf89c 100644
+--- a/build_config/Darwin.g95.default/build_rules.mk
++++ b/build_config/Darwin.g95.default/build_rules.mk
+@@ -54,6 +54,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Darwin.gfortran.default/build_rules.mk b/build_config/Darwin.gfortran.default/build_rules.mk
+index 96a2a4f..2e05248 100644
+--- a/build_config/Darwin.gfortran.default/build_rules.mk
++++ b/build_config/Darwin.gfortran.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Darwin.gfortranclang.default/build_rules.mk b/build_config/Darwin.gfortranclang.default/build_rules.mk
+index da52f08..cf90636 100644
+--- a/build_config/Darwin.gfortranclang.default/build_rules.mk
++++ b/build_config/Darwin.gfortranclang.default/build_rules.mk
+@@ -56,6 +56,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Darwin.intel.default/build_rules.mk b/build_config/Darwin.intel.default/build_rules.mk
+index f6593f1..b851691 100644
+--- a/build_config/Darwin.intel.default/build_rules.mk
++++ b/build_config/Darwin.intel.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Darwin.nag.default/build_rules.mk b/build_config/Darwin.nag.default/build_rules.mk
+index 4ee8689..1dd172d 100644
+--- a/build_config/Darwin.nag.default/build_rules.mk
++++ b/build_config/Darwin.nag.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.absoft.default/build_rules.mk b/build_config/Linux.absoft.default/build_rules.mk
+index 7a2314e..43231c9 100644
+--- a/build_config/Linux.absoft.default/build_rules.mk
++++ b/build_config/Linux.absoft.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.g95.default/build_rules.mk b/build_config/Linux.g95.default/build_rules.mk
+index 5f45593..5d71e59 100644
+--- a/build_config/Linux.g95.default/build_rules.mk
++++ b/build_config/Linux.g95.default/build_rules.mk
+@@ -54,6 +54,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.gfortran.default/build_rules.mk b/build_config/Linux.gfortran.default/build_rules.mk
+index 47b55de..2954eab 100644
+--- a/build_config/Linux.gfortran.default/build_rules.mk
++++ b/build_config/Linux.gfortran.default/build_rules.mk
+@@ -61,6 +61,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.gfortranclang.default/build_rules.mk b/build_config/Linux.gfortranclang.default/build_rules.mk
+index 4c58349..6a68841 100644
+--- a/build_config/Linux.gfortranclang.default/build_rules.mk
++++ b/build_config/Linux.gfortranclang.default/build_rules.mk
+@@ -64,6 +64,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.intel.default/build_rules.mk b/build_config/Linux.intel.default/build_rules.mk
+index abb2873..55dd61a 100644
+--- a/build_config/Linux.intel.default/build_rules.mk
++++ b/build_config/Linux.intel.default/build_rules.mk
+@@ -60,6 +60,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.intelgcc.default/build_rules.mk b/build_config/Linux.intelgcc.default/build_rules.mk
+index 7c0e5c9..135c822 100644
+--- a/build_config/Linux.intelgcc.default/build_rules.mk
++++ b/build_config/Linux.intelgcc.default/build_rules.mk
+@@ -60,6 +60,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.lahey.default/build_rules.mk b/build_config/Linux.lahey.default/build_rules.mk
+index 9959bda..7a83264 100644
+--- a/build_config/Linux.lahey.default/build_rules.mk
++++ b/build_config/Linux.lahey.default/build_rules.mk
+@@ -57,6 +57,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ ESMF_F90DEFAULT = mpif90
+ ESMF_F90LINKERDEFAULT = mpicxx
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.nag.default/build_rules.mk b/build_config/Linux.nag.default/build_rules.mk
+index 0fd6435..41a7e60 100644
+--- a/build_config/Linux.nag.default/build_rules.mk
++++ b/build_config/Linux.nag.default/build_rules.mk
+@@ -53,6 +53,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/build_config/Linux.pgi.default/build_rules.mk b/build_config/Linux.pgi.default/build_rules.mk
+index f6380b1..052a1cb 100644
+--- a/build_config/Linux.pgi.default/build_rules.mk
++++ b/build_config/Linux.pgi.default/build_rules.mk
+@@ -80,6 +80,7 @@ ifeq ($(ESMF_COMM),mvapich2)
+ # Mvapich2 ---------------------------------------------------
+ ESMF_F90DEFAULT = mpif90
+ ESMF_CXXDEFAULT = mpicxx
++ESMF_CXXLINKLIBS += $(shell $(ESMF_DIR)/scripts/libs.mvapich2f90)
+ ESMF_MPIRUNDEFAULT = mpirun $(ESMF_MPILAUNCHOPTIONS)
+ ESMF_MPIMPMDRUNDEFAULT = mpiexec $(ESMF_MPILAUNCHOPTIONS)
+ else
+diff --git a/scripts/libs.mvapich2f90 b/scripts/libs.mvapich2f90
+new file mode 100755
+index 0000000..e4b6f27
+--- /dev/null
++++ b/scripts/libs.mvapich2f90
+@@ -0,0 +1,10 @@
++#!/bin/sh
++# this scripts determines the correct MVAPICH2 Fortran bindings library to
++# use when mpicxx is used for linking. If libmpifort, use it.
++PATHEXE=`which mpicxx`
++MVAPICH2_LIBDIR=`dirname ${PATHEXE}`/../lib*
++ls -1 ${MVAPICH2_LIBDIR} | grep mpifort > /dev/null 2>&1
++if [ $? = 0 ]; then
++ echo -lmpifort;
++fi
++
+--
+2.7.4
+
diff --git a/var/spack/repos/builtin/packages/esmf/package.py b/var/spack/repos/builtin/packages/esmf/package.py
new file mode 100644
index 0000000000..394e316751
--- /dev/null
+++ b/var/spack/repos/builtin/packages/esmf/package.py
@@ -0,0 +1,256 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Esmf(MakefilePackage):
+ """The Earth System Modeling Framework (ESMF) is high-performance, flexible
+ software infrastructure for building and coupling weather, climate, and
+ related Earth science applications. The ESMF defines an architecture for
+ composing complex, coupled modeling systems and includes data structures
+ and utilities for developing individual models."""
+
+ homepage = "https://www.earthsystemcog.org/projects/esmf/"
+ url = "http://www.earthsystemmodeling.org/esmf_releases/non_public/ESMF_7_0_1/esmf_7_0_1_src.tar.gz"
+
+ version('7.0.1', 'd3316ea79b032b8fb0cd40e5868a0261')
+
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('lapack', default=True, description='Build with LAPACK support')
+ variant('netcdf', default=True, description='Build with NetCDF support')
+ variant('pnetcdf', default=True, description='Build with pNetCDF support')
+ variant('xerces', default=True, description='Build with Xerces support')
+ variant('pio', default=True, description='Enable ParallelIO support')
+ variant('debug', default=False, description='Make a debuggable version of the library')
+
+ # Required dependencies
+ depends_on('zlib')
+ depends_on('libxml2')
+
+ # Optional dependencies
+ depends_on('mpi', when='+mpi')
+ depends_on('lapack@3:', when='+lapack')
+ depends_on('netcdf@3.6:', when='+netcdf')
+ depends_on('netcdf-fortran@3.6:', when='+netcdf')
+ depends_on('parallel-netcdf@1.2.0:', when='+pnetcdf')
+ depends_on('xerces-c@3.1.0:', when='+xerces')
+
+ # Testing dependencies
+ # depends_on('perl', type='test') # TODO: Add a test deptype
+
+ # Make esmf build with newer gcc versions
+ # https://sourceforge.net/p/esmf/esmf/ci/3706bf758012daebadef83d6575c477aeff9c89b/
+ patch('gcc.patch', when='@:7.0.99 %gcc@6:')
+
+ # Fix undefined reference errors with mvapich2
+ # https://sourceforge.net/p/esmf/esmf/ci/34de0ccf556ba75d35c9687dae5d9f666a1b2a18/
+ patch('mvapich2.patch', when='@:7.0.99')
+
+ # Make script from mvapich2.patch executable
+ @run_before('build')
+ @when('@:7.0.99')
+ def chmod_scripts(self):
+ chmod = which('chmod')
+ chmod('+x', 'scripts/libs.mvapich2f90')
+
+ def url_for_version(self, version):
+ return "http://www.earthsystemmodeling.org/esmf_releases/non_public/ESMF_{0}/esmf_{0}_src.tar.gz".format(version.underscored)
+
+ def edit(self, spec, prefix):
+ # Installation instructions can be found at:
+ # http://www.earthsystemmodeling.org/esmf_releases/last_built/ESMF_usrdoc/node9.html
+
+ # Unset any environment variables that may influence the installation.
+ for var in os.environ:
+ if var.startswith('ESMF_'):
+ os.environ.pop(var)
+
+ ######################################
+ # Build and Installation Directories #
+ ######################################
+
+ # The environment variable ESMF_DIR must be set to the full pathname
+ # of the top level ESMF directory before building the framework.
+ os.environ['ESMF_DIR'] = os.getcwd()
+
+ # This variable specifies the prefix of the installation path used
+ # with the install target.
+ os.environ['ESMF_INSTALL_PREFIX'] = prefix
+
+ # Installation subdirectories default to:
+ # bin/binO/Linux.gfortran.64.default.default
+ os.environ['ESMF_INSTALL_BINDIR'] = 'bin'
+ os.environ['ESMF_INSTALL_LIBDIR'] = 'lib'
+ os.environ['ESMF_INSTALL_MODDIR'] = 'mod'
+
+ ############
+ # Compiler #
+ ############
+
+ # ESMF_COMPILER must be set to select which Fortran and
+ # C++ compilers are being used to build the ESMF library.
+ if self.compiler.name == 'gcc':
+ os.environ['ESMF_COMPILER'] = 'gfortran'
+ elif self.compiler.name == 'intel':
+ os.environ['ESMF_COMPILER'] = 'intel'
+ elif self.compiler.name == 'clang':
+ os.environ['ESMF_COMPILER'] = 'gfortranclang'
+ elif self.compiler.name == 'nag':
+ os.environ['ESMF_COMPILER'] = 'nag'
+ elif self.compiler.name == 'pgi':
+ os.environ['ESMF_COMPILER'] = 'pgi'
+ else:
+ msg = "The compiler you are building with, "
+ msg += "'{0}', is not supported by ESMF."
+ raise InstallError(msg.format(self.compiler.name))
+
+ if '+mpi' in spec:
+ os.environ['ESMF_CXX'] = spec['mpi'].mpicxx
+ os.environ['ESMF_F90'] = spec['mpi'].mpifc
+ else:
+ os.environ['ESMF_CXX'] = os.environ['CXX']
+ os.environ['ESMF_F90'] = os.environ['FC']
+
+ # This environment variable controls the build option.
+ if '+debug' in spec:
+ # Build a debuggable version of the library.
+ os.environ['ESMF_BOPT'] = 'g'
+ else:
+ # Build an optimized version of the library.
+ os.environ['ESMF_BOPT'] = 'O'
+
+ #######
+ # MPI #
+ #######
+
+ # ESMF_COMM must be set to indicate which MPI implementation
+ # is used to build the ESMF library.
+ if '+mpi' in spec:
+ if '^mvapich2' in spec:
+ os.environ['ESMF_COMM'] = 'mvapich2'
+ elif '^mpich' in spec:
+ # FIXME: mpich or mpich2?
+ os.environ['ESMF_COMM'] = 'mpich2'
+ elif '^openmpi' in spec:
+ os.environ['ESMF_COMM'] = 'openmpi'
+ elif '^intel-parallel-studio+mpi' in spec:
+ os.environ['ESMF_COMM'] = 'intelmpi'
+ else:
+ # Force use of the single-processor MPI-bypass library.
+ os.environ['ESMF_COMM'] = 'mpiuni'
+
+ ##########
+ # LAPACK #
+ ##########
+
+ if '+lapack' in spec:
+ # A system-dependent external LAPACK/BLAS installation is used
+ # to satisfy the external dependencies of the LAPACK-dependent
+ # ESMF code.
+ os.environ['ESMF_LAPACK'] = 'system'
+
+ # FIXME: determine whether or not we need to set this
+ # Specifies the path where the LAPACK library is located.
+ # os.environ['ESMF_LAPACK_LIBPATH'] = spec['lapack'].prefix.lib
+
+ # Specifies the linker directive needed to link the LAPACK library
+ # to the application.
+ os.environ['ESMF_LAPACK_LIBS'] = spec['lapack'].libs.link_flags # noqa
+ else:
+ # Disables LAPACK-dependent code.
+ os.environ['ESMF_LAPACK'] = 'OFF'
+
+ ##########
+ # NetCDF #
+ ##########
+
+ if '+netcdf' in spec:
+ # ESMF provides the ability to read Grid and Mesh data in
+ # NetCDF format.
+ if spec.satisfies('^netcdf@4.2:'):
+ # ESMF_NETCDF_LIBS will be set to "-lnetcdff -lnetcdf".
+ # This option is useful for systems which have the Fortran
+ # and C bindings archived in seperate library files.
+ os.environ['ESMF_NETCDF'] = 'split'
+ else:
+ # ESMF_NETCDF_LIBS will be set to "-lnetcdf".
+ # This option is useful when the Fortran and C bindings
+ # are archived together in the same library file.
+ os.environ['ESMF_NETCDF'] = 'standard'
+
+ # FIXME: determine whether or not we need to set these.
+ # ESMF_NETCDF_INCLUDE
+ # ESMF_NETCDF_LIBPATH
+
+ ###################
+ # Parallel-NetCDF #
+ ###################
+
+ if '+pnetcdf' in spec:
+ # ESMF provides the ability to write Mesh weights
+ # using Parallel-NetCDF.
+
+ # When defined, enables the use of Parallel-NetCDF.
+ # ESMF_PNETCDF_LIBS will be set to "-lpnetcdf".
+ os.environ['ESMF_PNETCDF'] = 'standard'
+
+ # FIXME: determine whether or not we need to set these.
+ # ESMF_PNETCDF_INCLUDE
+ # ESMF_PNETCDF_LIBPATH
+
+ ##############
+ # ParallelIO #
+ ##############
+
+ if '+pio' in spec and '+mpi' in spec:
+ # ESMF provides the ability to read and write data in both binary
+ # and NetCDF formats through ParallelIO (PIO), a third-party IO
+ # software library that is integrated in the ESMF library.
+
+ # PIO-dependent features will be enabled and will use the
+ # PIO library that is included and built with ESMF.
+ os.environ['ESMF_PIO'] = 'internal'
+ else:
+ # Disables PIO-dependent code.
+ os.environ['ESMF_PIO'] = 'OFF'
+
+ ##########
+ # XERCES #
+ ##########
+
+ if '+xerces' in spec:
+ # ESMF provides the ability to read Attribute data in
+ # XML file format via the XERCES C++ library.
+
+ # ESMF_XERCES_LIBS will be set to "-lxerces-c".
+ os.environ['ESMF_XERCES'] = 'standard'
+
+ # FIXME: determine if the following are needed
+ # ESMF_XERCES_INCLUDE
+ # ESMF_XERCES_LIBPATH
+
+ def check(self):
+ make('check', parallel=False)
diff --git a/var/spack/repos/builtin/packages/espresso/dspev_drv_elpa.patch b/var/spack/repos/builtin/packages/espresso/dspev_drv_elpa.patch
new file mode 100644
index 0000000000..153bcf2ef5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/espresso/dspev_drv_elpa.patch
@@ -0,0 +1,42 @@
+diff -ruN LAXlib-orig/dspev_drv.f90 LAXlib/dspev_drv.f90
+--- a/LAXlib/dspev_drv.f90 2017-06-12 15:00:46.157372185 +0200
++++ b/LAXlib/dspev_drv.f90 2017-06-12 15:01:19.937371580 +0200
+@@ -708,11 +708,11 @@
+
+ #if defined(__ELPA_2016)
+ ! -> ELPA 2016.11.001_pre
+- ierr = elpa_get_communicators(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+- success = solve_evp_real_1stage(n, n, s, lds, w, vv, lds,SIZE(s,2),nb ,mpi_comm_rows, mpi_comm_cols, ortho_comm)
++ !ierr = elpa_get_communicators(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
++ !success = solve_evp_real_1stage(n, n, s, lds, w, vv, lds,SIZE(s,2),nb ,mpi_comm_rows, mpi_comm_cols, ortho_comm)
+ ! -> ELPA 2016.05.003
+- !ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+- !success = solve_evp_real_1stage(n, n, s, lds, w, vv, lds,SIZE(s,2),nb ,mpi_comm_rows, mpi_comm_cols)
++ ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
++ success = solve_evp_real_1stage(n, n, s, lds, w, vv, lds,SIZE(s,2),nb ,mpi_comm_rows, mpi_comm_cols)
+ #elif defined(__ELPA_2015)
+ ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+ ierr = solve_evp_real(n, n, s, lds, w, vv, lds,SIZE(s,2),nb ,mpi_comm_rows, mpi_comm_cols)
+diff -ruN LAXlib-orig/zhpev_drv.f90 LAXlib/zhpev_drv.f90
+--- a/LAXlib/zhpev_drv.f90 2017-06-12 15:00:46.157372185 +0200
++++ b/LAXlib/zhpev_drv.f90 2017-06-12 15:02:09.309370696 +0200
+@@ -1519,13 +1519,13 @@
+
+ #if defined(__ELPA_2016)
+ ! -> ELPA 2016.11.001_pre
+- ierr = elpa_get_communicators(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+- success = solve_evp_complex_1stage_double(n, n, h, size(h,1), w, v, size(h,1), size(h,2), nb, &
+- mpi_comm_rows, mpi_comm_cols, ortho_comm)
++ !ierr = elpa_get_communicators(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
++ !success = solve_evp_complex_1stage_double(n, n, h, size(h,1), w, v, size(h,1), size(h,2), nb, &
++ ! mpi_comm_rows, mpi_comm_cols, ortho_comm)
+ ! -> ELPA 2016.05.003
+- !ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+- !success = solve_evp_complex(n, n, h, size(h,1), w, v, size(h,1), size(h,2), nb, &
+- ! mpi_comm_rows, mpi_comm_cols)
++ ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
++ success = solve_evp_complex(n, n, h, size(h,1), w, v, size(h,1), size(h,2), nb, &
++ mpi_comm_rows, mpi_comm_cols)
+ #elif defined(__ELPA_2015)
+ ierr = get_elpa_row_col_comms(ortho_comm, my_prow, my_pcol,mpi_comm_rows, mpi_comm_cols)
+ ierr = solve_evp_complex(n, n, h, size(h,1), w, v, size(h,1), size(h,2), nb, &
diff --git a/var/spack/repos/builtin/packages/espresso/package.py b/var/spack/repos/builtin/packages/espresso/package.py
index d2c825513c..23014710a1 100644
--- a/var/spack/repos/builtin/packages/espresso/package.py
+++ b/var/spack/repos/builtin/packages/espresso/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,21 +22,29 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import glob
+import os.path
+
from spack import *
-import os
class Espresso(Package):
- """QE is an integrated suite of Open-Source computer codes for
- electronic-structure calculations and materials modeling at
- the nanoscale. It is based on density-functional theory, plane
- waves, and pseudopotentials.
+ """Quantum-ESPRESSO is an integrated suite of Open-Source computer codes
+ for electronic-structure calculations and materials modeling at the
+ nanoscale. It is based on density-functional theory, plane waves, and
+ pseudopotentials.
"""
homepage = 'http://quantum-espresso.org'
url = 'http://www.qe-forge.org/gf/download/frsrelease/204/912/espresso-5.3.0.tar.gz'
version(
+ '6.1.0',
+ 'db398edcad76e085f8c8a3f6ecb7aaab',
+ url='http://www.qe-forge.org/gf/download/frsrelease/240/1075/qe-6.1.tar.gz'
+ )
+
+ version(
'5.4.0',
'8bb78181b39bd084ae5cb7a512c1cfe7',
url='http://www.qe-forge.org/gf/download/frsrelease/211/968/espresso-5.4.0.tar.gz'
@@ -48,60 +56,109 @@ class Espresso(Package):
variant('scalapack', default=True, description='Enables scalapack support')
variant('elpa', default=True, description='Uses elpa as an eigenvalue solver')
+ # Support for HDF5 has been added starting in version 6.1.0 and is
+ # still experimental, therefore we default to False for the variant
+ variant('hdf5', default=False, description='Builds with HDF5 support')
+
depends_on('blas')
depends_on('lapack')
-
depends_on('mpi', when='+mpi')
- depends_on('fftw~mpi', when='~mpi')
- depends_on('fftw+mpi', when='+mpi')
- # TODO : + mpi needed to avoid false dependencies installation
depends_on('scalapack', when='+scalapack+mpi')
+ depends_on('fftw+mpi', when='+mpi')
+ depends_on('fftw~mpi', when='~mpi')
+ depends_on('elpa+openmp', when='+elpa+openmp')
+ depends_on('elpa~openmp', when='+elpa~openmp')
+ depends_on('hdf5', when='+hdf5')
+
+ patch('dspev_drv_elpa.patch', when='@6.1 ^elpa@2016.05.004')
+ patch('dspev_drv_elpa.patch', when='@6.1 ^elpa@2016.05.003')
+
+ # We can't ask for scalapack or elpa if we don't want MPI
+ conflicts(
+ '+scalapack',
+ when='~mpi',
+ msg='scalapack is a parallel library and needs MPI support'
+ )
+
+ conflicts(
+ '+elpa',
+ when='~mpi',
+ msg='elpa is a parallel library and needs MPI support'
+ )
+
+ # Elpa is formally supported by @:5.4.0, but QE configure searches
+ # for it in the wrong folders (or tries to download it within
+ # the build directory). Instead of patching Elpa to provide the
+ # folder QE expects as a link, we issue a conflict here.
+ conflicts('+elpa', when='@:5.4.0')
+ conflicts('+hdf5', when='@:5.4.0')
+
# Spurious problems running in parallel the Makefile
- # generated by qe configure
+ # generated by the configure
parallel = False
- def check_variants(self, spec):
- error = 'you cannot ask for \'+{variant}\' when \'+mpi\' is not active'
- if '+scalapack' in spec and '~mpi' in spec:
- raise RuntimeError(error.format(variant='scalapack'))
- if '+elpa' in spec and ('~mpi' in spec or '~scalapack' in spec):
- raise RuntimeError(error.format(variant='elpa'))
-
def install(self, spec, prefix):
- from glob import glob
- self.check_variants(spec)
- options = ['-prefix=%s' % prefix.bin]
+ prefix_path = prefix.bin if '@:5.4.0' in spec else prefix
+ options = ['-prefix={0}'.format(prefix_path)]
if '+mpi' in spec:
- options.append('--enable-parallel')
+ options.append('--enable-parallel=yes')
+ else:
+ options.append('--enable-parallel=no')
if '+openmp' in spec:
options.append('--enable-openmp')
if '+scalapack' in spec:
- options.append('--with-scalapack=yes')
+ scalapack_option = 'intel' if '^intel-mkl' in spec else 'yes'
+ options.append('--with-scalapack={0}'.format(scalapack_option))
if '+elpa' in spec:
- options.append('--with-elpa=yes')
+
+ # Spec for elpa
+ elpa = spec['elpa']
+
+ # Find where the Fortran module resides
+ elpa_module = find(elpa.prefix, 'elpa.mod')
+
+ # Compute the include directory from there: versions
+ # of espresso prior to 6.1 requires -I in front of the directory
+ elpa_include = '' if '@6.1:' in spec else '-I'
+ elpa_include += os.path.dirname(elpa_module[0])
+
+ options.extend([
+ '--with-elpa-include={0}'.format(elpa_include),
+ '--with-elpa-lib={0}'.format(elpa.libs[0])
+ ])
+
+ if '+hdf5' in spec:
+ options.append('--with-hdf5={0}'.format(spec['hdf5'].prefix))
# Add a list of directories to search
search_list = []
for dependency_spec in spec.dependencies():
- search_list.extend([dependency_spec.prefix.lib,
- dependency_spec.prefix.lib64])
+ search_list.extend([
+ dependency_spec.prefix.lib,
+ dependency_spec.prefix.lib64
+ ])
search_list = " ".join(search_list)
- options.append('LIBDIRS=%s' % search_list)
- options.append('F90=%s' % os.environ['FC'])
+
+ options.extend([
+ 'LIBDIRS={0}'.format(search_list),
+ 'F90={0}'.format(env['SPACK_FC']),
+ 'CC={0}'.format(env['SPACK_CC'])
+ ])
configure(*options)
+
make('all')
- if spec.satisfies('platform=darwin'):
+ if 'platform=darwin' in spec:
mkdirp(prefix.bin)
- for filename in glob("bin/*.x"):
+ for filename in glob.glob("bin/*.x"):
install(filename, prefix.bin)
else:
make('install')
diff --git a/var/spack/repos/builtin/packages/etsf-io/package.py b/var/spack/repos/builtin/packages/etsf-io/package.py
index c1e6f2eded..dc0dac415f 100644
--- a/var/spack/repos/builtin/packages/etsf-io/package.py
+++ b/var/spack/repos/builtin/packages/etsf-io/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/everytrace-example/package.py b/var/spack/repos/builtin/packages/everytrace-example/package.py
index 76b437a38a..cedcd684fc 100644
--- a/var/spack/repos/builtin/packages/everytrace-example/package.py
+++ b/var/spack/repos/builtin/packages/everytrace-example/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,5 +38,5 @@ class EverytraceExample(CMakePackage):
# Currently the only MPI this everytrace works with.
depends_on('openmpi')
- def setup_environment(self, spack_env, env):
- env.prepend_path('PATH', join_path(self.prefix, 'bin'))
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', join_path(self.prefix, 'bin'))
diff --git a/var/spack/repos/builtin/packages/everytrace/package.py b/var/spack/repos/builtin/packages/everytrace/package.py
index d884c7b165..96813672ad 100644
--- a/var/spack/repos/builtin/packages/everytrace/package.py
+++ b/var/spack/repos/builtin/packages/everytrace/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -47,5 +47,5 @@ class Everytrace(CMakePackage):
'-DUSE_MPI=%s' % ('YES' if '+mpi' in spec else 'NO'),
'-DUSE_FORTRAN=%s' % ('YES' if '+fortran' in spec else 'NO')]
- def setup_environment(self, spack_env, env):
- env.prepend_path('PATH', join_path(self.prefix, 'bin'))
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', join_path(self.prefix, 'bin'))
diff --git a/var/spack/repos/builtin/packages/evieext/package.py b/var/spack/repos/builtin/packages/evieext/package.py
index afc0245f50..a88764516e 100644
--- a/var/spack/repos/builtin/packages/evieext/package.py
+++ b/var/spack/repos/builtin/packages/evieext/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Evieext(Package):
+class Evieext(AutotoolsPackage):
"""Extended Visual Information Extension (XEVIE).
This extension defines a protocol for a client to determine information
@@ -38,8 +38,3 @@ class Evieext(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/exabayes/package.py b/var/spack/repos/builtin/packages/exabayes/package.py
new file mode 100644
index 0000000000..1529261397
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exabayes/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Exabayes(AutotoolsPackage):
+ """ExaBayes is a software package for Bayesian tree inference. It is
+ particularly suitable for large-scale analyses on computer clusters."""
+
+ homepage = "https://sco.h-its.org/exelixis/web/software/exabayes/"
+ url = "https://sco.h-its.org/exelixis/resource/download/software/exabayes-1.5.tar.gz"
+
+ version('1.5', '6a734777b8f8eff0a520306500c8c419')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+
+ depends_on('mpi', when='+mpi')
+
+ # ExaBayes manual states the program succesfully compiles with GCC, version
+ # 4.6 or greater, and Clang, version 3.2 or greater. The build fails when
+ # GCC 7.1.0 is used.
+ conflicts('%gcc@:4.5.4, 7.1.0:')
+ conflicts('%clang@:3.1')
+ conflicts('^intel-mpi', when='+mpi')
+ conflicts('^intel-parallel-studio+mpi', when='+mpi')
+ conflicts('^mvapich2', when='+mpi')
+ conflicts('^spectrum-mpi', when='+mpi')
+
+ def configure_args(self):
+ args = []
+ if '+mpi' in self.spec:
+ args.append('--enable-mpi')
+ else:
+ args.append('--disable-mpi')
+ return args
diff --git a/var/spack/repos/builtin/packages/exampm/package.py b/var/spack/repos/builtin/packages/exampm/package.py
new file mode 100644
index 0000000000..eba2fbc442
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exampm/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Exampm(CMakePackage):
+ """Exascale Material Point Method (MPM) Mini-App"""
+
+ homepage = "https://github.com/ECP-copa/ExaMPM"
+ url = "https://github.com/ECP-copa/ExaMPM"
+
+ version('develop', git='https://github.com/ECP-copa/ExaMPM',
+ branch='master')
+
+ tags = ['proxy-app']
diff --git a/var/spack/repos/builtin/packages/exasp2/package.py b/var/spack/repos/builtin/packages/exasp2/package.py
new file mode 100644
index 0000000000..aac5419893
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exasp2/package.py
@@ -0,0 +1,94 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Exasp2(MakefilePackage):
+ """ExaSP2 is a reference implementation of typical linear algebra algorithms
+ and workloads for a quantum molecular dynamics (QMD) electronic structure
+ code. The algorithm is based on a recursive second-order Fermi-Operator
+ expansion method (SP2) and is tailored for density functional based
+ tight-binding calculations of material systems. The SP2 algorithm variants
+ are part of the Los Alamos Transferable Tight-binding for Energetics
+ (LATTE) code, based on a matrix expansion of the Fermi operator in a
+ recursive series of generalized matrix-matrix multiplications. It is
+ created and maintained by Co-Design Center for Particle Applications
+ (CoPA). The code is intended to serve as a vehicle for co-design by
+ allowing others to extend and/or reimplement as needed to test performance
+ of new architectures, programming models, etc."""
+
+ tags = ['proxy-app']
+
+ homepage = "https://github.com/ECP-copa/ExaSP2"
+
+ version('develop', git='https://github.com/ECP-copa/ExaSP2',
+ branch='master')
+
+ variant('mpi', default=True, description='Build With MPI Support')
+
+ depends_on('bml')
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('mpi', when='+mpi')
+ depends_on('bml@1.2.3:+mpi', when='+mpi')
+
+ build_directory = 'src'
+
+ @property
+ def build_targets(self):
+ targets = []
+ spec = self.spec
+ if '+mpi' in spec:
+ targets.append('PARALLEL=MPI')
+ targets.append('MPICC={0}'.format(spec['mpi'].mpicc))
+ targets.append('MPI_LIB=-L' + spec['mpi'].prefix.lib + ' -lmpi')
+ targets.append('MPI_INCLUDE=-I' + spec['mpi'].prefix.include)
+ else:
+ targets.append('PARALLEL=NONE')
+ # NOTE: no blas except for mkl has been properly tested. OpenBlas was
+ # briefly but not rigoruously tested. Using generic blas approach to
+ # meet Spack requirements
+ targets.append('BLAS=GENERIC_SPACKBLAS')
+ math_libs = str(spec['lapack'].libs)
+ math_libs += ' ' + str(spec['lapack'].libs)
+ targets.append('SPACKBLASLIBFLAGS=' + math_libs)
+ math_includes = spec['lapack'].prefix.include
+ math_includes += " -I" + spec['blas'].prefix.include
+ targets.append('SPACKBLASINCLUDES=' + math_includes)
+ # And BML
+ bmlLibDirs = spec['bml'].libs.directories[0]
+ targets.append('BML_PATH=' + bmlLibDirs)
+ targets.append('--file=Makefile.vanilla')
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ mkdir(prefix.doc)
+ if '+mpi' in self.spec:
+ install('bin/ExaSP2-parallel', prefix.bin)
+ else:
+ install('bin/ExaSP2-serial', prefix.bin)
+ install('LICENSE.md', prefix.doc)
+ install('README.md', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/exmcutils/package.py b/var/spack/repos/builtin/packages/exmcutils/package.py
new file mode 100644
index 0000000000..02010deaf3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/exmcutils/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Exmcutils(AutotoolsPackage):
+ """ExM C-Utils: Generic C utility library for ADLB/X and Swift/T"""
+
+ homepage = 'http://swift-lang.org/Swift-T'
+ url = 'http://swift-lang.github.io/swift-t-downloads/exmcutils-0.5.3.tar.gz'
+
+ version('0.5.3', '0e3ed6cc2991c684cd8f08db45c99a39')
+
+ # This package has no dependencies.
diff --git a/var/spack/repos/builtin/packages/exodusii/cmake-exodus.patch b/var/spack/repos/builtin/packages/exodusii/cmake-exodus.patch
deleted file mode 100644
index 014381de88..0000000000
--- a/var/spack/repos/builtin/packages/exodusii/cmake-exodus.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff --git a/cmake-exodus b/cmake-exodus
-index 67ccd34..9b749e3 100755
---- a/cmake-exodus
-+++ b/cmake-exodus
-@@ -1,3 +1,4 @@
-+#!/bin/bash
- EXTRA_ARGS=$@
-
- ### The following assumes you are building in a subdirectory of ACCESS Root
diff --git a/var/spack/repos/builtin/packages/exodusii/package.py b/var/spack/repos/builtin/packages/exodusii/package.py
index 67024673b2..d74137533c 100644
--- a/var/spack/repos/builtin/packages/exodusii/package.py
+++ b/var/spack/repos/builtin/packages/exodusii/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,11 +27,8 @@ from spack import *
# TODO: Add support for a C++11 enabled installation that filters out the
# TODO: "C++11-Disabled" flag (but only if the spec compiler supports C++11).
-# TODO: Use variant forwarding to forward the 'mpi' variant to the direct
-# TODO: dependencies 'hdf5' and 'netcdf'.
-
-class Exodusii(Package):
+class Exodusii(CMakePackage):
"""Exodus II is a C++/Fortran library developed to store and retrieve
data for finite element analyses. It's used for preprocessing
(problem definition), postprocessing (results visualization), and
@@ -52,18 +49,25 @@ class Exodusii(Package):
depends_on('mpi', when='+mpi')
# https://github.com/gsjaardema/seacas/blob/master/NetCDF-Mapping.md
- depends_on('netcdf maxdims=65536 maxvars=524288')
- depends_on('hdf5+shared')
+ depends_on('netcdf+mpi maxdims=65536 maxvars=524288', when='+mpi')
+ depends_on('netcdf~mpi maxdims=65536 maxvars=524288', when='~mpi')
+ depends_on('hdf5+shared+mpi', when='+mpi')
+ depends_on('hdf5+shared~mpi', when='~mpi')
- patch('cmake-exodus.patch')
+ def cmake_args(self):
+ spec = self.spec
- def install(self, spec, prefix):
cc_path = spec['mpi'].mpicc if '+mpi' in spec else self.compiler.cc
cxx_path = spec['mpi'].mpicxx if '+mpi' in spec else self.compiler.cxx
- config_args = std_cmake_args[:]
- config_args.extend([
+ options = [
# General Flags #
+ '-DSEACASProj_ENABLE_SEACASExodus=ON',
+ '-DSEACASProj_ENABLE_TESTS=ON',
+ '-DBUILD_SHARED_LIBS:BOOL=ON',
+ '-DTPL_ENABLE_Netcdf:BOOL=ON',
+ '-DHDF5_NO_SYSTEM_PATHS=ON',
+ '-DSEACASProj_SKIP_FORTRANCINTERFACE_VERIFY_TEST:BOOL=ON',
'-DSEACASProj_ENABLE_CXX11:BOOL=OFF',
'-DSEACASProj_ENABLE_Zoltan:BOOL=OFF',
'-DHDF5_ROOT:PATH={0}'.format(spec['hdf5'].prefix),
@@ -73,14 +77,6 @@ class Exodusii(Package):
'-DTPL_ENABLE_MPI={0}'.format('ON' if '+mpi' in spec else 'OFF'),
'-DCMAKE_C_COMPILER={0}'.format(cc_path),
'-DCMAKE_CXX_COMPILER={0}'.format(cxx_path),
- ])
-
- build_directory = join_path(self.stage.source_path, 'spack-build')
- source_directory = self.stage.source_path
-
- with working_dir(build_directory, create=True):
- mcmake = Executable(join_path(source_directory, 'cmake-exodus'))
- mcmake(*config_args)
+ ]
- make()
- make('install')
+ return options
diff --git a/var/spack/repos/builtin/packages/exonerate/package.py b/var/spack/repos/builtin/packages/exonerate/package.py
index 7921e64058..2dae693b72 100644
--- a/var/spack/repos/builtin/packages/exonerate/package.py
+++ b/var/spack/repos/builtin/packages/exonerate/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class Exonerate(Package):
"""Pairwise sequence alignment of DNA and proteins"""
homepage = "http://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate"
- url = "http://ftp.ebi.ac.uk/pub/software/vertebrategenomics/exonerate/exonerate-2.2.0.tar.gz"
+ url = "http://ftp.ebi.ac.uk/pub/software/vertebrategenomics/exonerate/exonerate-2.4.0.tar.gz"
version('2.4.0', '126fbade003b80b663a1d530c56f1904')
diff --git a/var/spack/repos/builtin/packages/expat/package.py b/var/spack/repos/builtin/packages/expat/package.py
index 13ac816ea5..a4ca544e57 100644
--- a/var/spack/repos/builtin/packages/expat/package.py
+++ b/var/spack/repos/builtin/packages/expat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,11 +23,33 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
class Expat(AutotoolsPackage):
"""Expat is an XML parser library written in C."""
+
homepage = "http://expat.sourceforge.net/"
- url = "http://downloads.sourceforge.net/project/expat/expat/2.2.0/expat-2.2.0.tar.bz2"
+ url = "https://sourceforge.net/projects/expat/files/expat/2.2.2/expat-2.2.2.tar.bz2"
+
+ # Version 2.2.2 introduced a requirement for a high quality
+ # entropy source. "Older" linux systems (aka CentOS 7) do not
+ # support get_random so we'll provide a high quality source via
+ # libbsd.
+ # There's no need for it in earlier versions, so 'conflict' if
+ # someone's asking for an older version and also libbsd.
+ # In order to install an older version, you'll need to add
+ # `~libbsd`.
+ variant('libbsd', default=sys.platform != 'darwin',
+ description="Use libbsd (for high quality randomness)")
+ depends_on('libbsd', when="@2.2.1:+libbsd")
+ version('2.2.2', '1ede9a41223c78528b8c5d23e69a2667')
version('2.2.0', '2f47841c829facb346eb6e3fab5212e2')
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if '+libbsd' in spec and '@2.2.1:' in spec:
+ args = ['--with-libbsd']
+ return args
diff --git a/var/spack/repos/builtin/packages/expect/expect_detect_tcl_private_header_os_x_mountain_lion.patch b/var/spack/repos/builtin/packages/expect/expect_detect_tcl_private_header_os_x_mountain_lion.patch
new file mode 100644
index 0000000000..31720eb743
--- /dev/null
+++ b/var/spack/repos/builtin/packages/expect/expect_detect_tcl_private_header_os_x_mountain_lion.patch
@@ -0,0 +1,23 @@
+Fix Tcl private header detection on macOS
+
+https://sourceforge.net/p/expect/patches/17/
+
+diff -Naur expect5.45.orig/tclconfig/tcl.m4 expect5.45/tclconfig/tcl.m4
+--- expect5.45.orig/tclconfig/tcl.m4 2010-11-09 11:42:10.000000000 -0800
++++ expect5.45/tclconfig/tcl.m4 2013-09-23 00:10:00.000000000 -0700
+@@ -3389,9 +3389,12 @@
+ # the framework's Headers and PrivateHeaders directories
+ case ${TCL_DEFS} in
+ *TCL_FRAMEWORK*)
+- if test -d "${TCL_BIN_DIR}/Headers" -a \
+- -d "${TCL_BIN_DIR}/PrivateHeaders"; then
+- TCL_INCLUDES="-I\"${TCL_BIN_DIR}/Headers\" -I\"${TCL_BIN_DIR}/PrivateHeaders\" ${TCL_INCLUDES}"
++ if test -d "${TCL_BIN_DIR}/Headers"; then
++ if test -d "${TCL_BIN_DIR}/PrivateHeaders"; then
++ TCL_INCLUDES="-I\"${TCL_BIN_DIR}/Headers\" -I\"${TCL_BIN_DIR}/PrivateHeaders\" ${TCL_INCLUDES}"
++ elif test -d "${TCL_BIN_DIR}/Headers/tcl-private"; then
++ TCL_INCLUDES="-I\"${TCL_BIN_DIR}/Headers\" -I\"${TCL_BIN_DIR}/Headers/tcl-private\" ${TCL_INCLUDES}"
++ fi
+ else
+ TCL_INCLUDES="${TCL_INCLUDES} ${TCL_INCLUDE_SPEC} `echo "${TCL_INCLUDE_SPEC}" | sed -e 's/Headers/PrivateHeaders/'`"
+ fi
diff --git a/var/spack/repos/builtin/packages/expect/package.py b/var/spack/repos/builtin/packages/expect/package.py
new file mode 100644
index 0000000000..786539d025
--- /dev/null
+++ b/var/spack/repos/builtin/packages/expect/package.py
@@ -0,0 +1,79 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+import os
+
+
+class Expect(AutotoolsPackage):
+ """Expect is a tool for automating interactive applications such as
+ telnet, ftp, passwd, fsck, rlogin, tip, etc."""
+
+ homepage = "http://expect.sourceforge.net/"
+ url = "https://sourceforge.net/projects/expect/files/Expect/5.45/expect5.45.tar.gz/download"
+
+ version('5.45', '44e1a4f4c877e9ddc5a542dfa7ecc92b')
+
+ depends_on('tcl')
+
+ depends_on('automake', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ force_autoreconf = True
+
+ patch('expect_detect_tcl_private_header_os_x_mountain_lion.patch', when='@5.45')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ # Without this, expect binary and library are not installed
+ '--exec-prefix={0}'.format(self.prefix),
+ '--enable-threads',
+ '--enable-shared',
+ '--enable-64bit',
+ '--with-tcl={0}'.format(spec['tcl'].prefix.lib),
+ '--with-tclinclude={0}'.format(spec['tcl'].prefix.include),
+ ]
+
+ return args
+
+ @run_after('install')
+ def symlink_library(self):
+ """Expect installs libraries into:
+
+ lib/expect5.45/libexpect5.45.so
+
+ Create a symlink so that the library can be found in lib."""
+
+ target = join_path(self.prefix.lib, 'expect*', 'libexpect*')
+ target = glob.glob(target)[0]
+
+ link_name = os.path.basename(target)
+ link_name = join_path(self.prefix.lib, link_name)
+
+ symlink(target, link_name)
diff --git a/var/spack/repos/builtin/packages/extrae/package.py b/var/spack/repos/builtin/packages/extrae/package.py
index cb20a8109e..a13963655b 100644
--- a/var/spack/repos/builtin/packages/extrae/package.py
+++ b/var/spack/repos/builtin/packages/extrae/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -52,9 +52,9 @@ class Extrae(Package):
instrument the MPI programin model, and the following parallel
programming models either alone or in conjunction with MPI :
OpenMP, CUDA, OpenCL, pthread, OmpSs"""
- homepage = "http://www.bsc.es/computer-sciences/extrae"
- url = "http://www.bsc.es/ssl/apps/performanceTools/files/extrae-3.3.0.tar.bz2"
- version('3.3.0', 'f46e3f1a6086b5b3ac41c9585b42952d')
+ homepage = "https://tools.bsc.es/extrae"
+ url = "https://ftp.tools.bsc.es/extrae/extrae-3.4.1-src.tar.bz2"
+ version('3.4.1', '69001f5cfac46e445d61eeb567bc8844')
depends_on("mpi")
depends_on("dyninst")
@@ -62,8 +62,12 @@ class Extrae(Package):
depends_on("boost")
depends_on("libdwarf")
depends_on("papi")
- depends_on("libelf")
+ depends_on("elf", type="link")
depends_on("libxml2")
+
+ # gettext dependency added to find -lintl
+ # https://www.gnu.org/software/gettext/FAQ.html#integrating_undefined
+ depends_on("gettext")
depends_on("binutils+libiberty")
def install(self, spec, prefix):
@@ -74,6 +78,16 @@ class Extrae(Package):
elif 'mvapich2' in spec:
mpi = spec['mvapich2']
+ extra_config_args = []
+
+ # This was added due to configure failure
+ # https://www.gnu.org/software/gettext/FAQ.html#integrating_undefined
+ extra_config_args.append('LDFLAGS=-lintl')
+
+ if spec.satisfies("^dyninst@9.3.0:"):
+ make.add_default_arg('CXXFLAGS=-std=c++11')
+ extra_config_args.append('CXXFLAGS=-std=c++11')
+
configure("--prefix=%s" % prefix,
"--with-mpi=%s" % mpi.prefix,
"--with-unwind=%s" % spec['libunwind'].prefix,
@@ -83,10 +97,11 @@ class Extrae(Package):
"--with-papi=%s" % spec['papi'].prefix,
"--with-dyninst-headers=%s" % spec[
'dyninst'].prefix.include,
- "--with-elf=%s" % spec['libelf'].prefix,
+ "--with-elf=%s" % spec['elf'].prefix,
"--with-xml-prefix=%s" % spec['libxml2'].prefix,
"--with-binutils=%s" % spec['binutils'].prefix,
- "--with-dyninst-libs=%s" % spec['dyninst'].prefix.lib)
+ "--with-dyninst-libs=%s" % spec['dyninst'].prefix.lib,
+ *extra_config_args)
make()
make("install", parallel=False)
diff --git a/var/spack/repos/builtin/packages/exuberant-ctags/package.py b/var/spack/repos/builtin/packages/exuberant-ctags/package.py
index 10be30ab8b..4a4f56e270 100644
--- a/var/spack/repos/builtin/packages/exuberant-ctags/package.py
+++ b/var/spack/repos/builtin/packages/exuberant-ctags/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,9 @@
from spack import *
-class ExuberantCtags(Package):
+class ExuberantCtags(AutotoolsPackage):
"""The canonical ctags generator"""
homepage = "ctags.sourceforge.net"
url = "http://downloads.sourceforge.net/project/ctags/ctags/5.8/ctags-5.8.tar.gz"
version('5.8', 'c00f82ecdcc357434731913e5b48630d')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/f90cache/package.py b/var/spack/repos/builtin/packages/f90cache/package.py
new file mode 100644
index 0000000000..ff18433912
--- /dev/null
+++ b/var/spack/repos/builtin/packages/f90cache/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class F90cache(AutotoolsPackage):
+ """f90cache is a compiler cache. It acts as a caching pre-processor to
+ Fortran compilers, using the -E compiler switch and a hash to detect
+ when a compilation can be satisfied from cache. This often results in a
+ great speedup in common compilations.
+ """
+ homepage = "https://perso.univ-rennes1.fr/edouard.canot/f90cache/"
+ url = "https://perso.univ-rennes1.fr/edouard.canot/f90cache/f90cache-0.99.tar.bz2"
+
+ version('0.99', 'e4767ae876203ed4f3e118e22204cdec')
diff --git a/var/spack/repos/builtin/packages/falcon/package.py b/var/spack/repos/builtin/packages/falcon/package.py
new file mode 100644
index 0000000000..d2ca55d443
--- /dev/null
+++ b/var/spack/repos/builtin/packages/falcon/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Falcon(PythonPackage):
+ """Falcon: a set of tools for fast aligning long reads for consensus
+ and assembly.
+
+ The Falcon tool kit is a set of simple code collection which I use
+ for studying efficient assembly algorithm for haploid and diploid genomes.
+ It has some back-end code implemented in C for speed and some simple
+ front-end written in Python for convenience."""
+
+ homepage = "https://github.com/PacificBiosciences/FALCON"
+ url = "https://github.com/PacificBiosciences/FALCON.git"
+
+ version('2017-05-30',
+ git='https://github.com/PacificBiosciences/FALCON.git',
+ commit='86cec6157291679095ea6080b0cde6561eccc041')
+
+ depends_on('py-setuptools', type='run')
+ depends_on('py-pypeflow', type='run')
+ depends_on('py-networkx@1.7:1.10', type=['build', 'run'])
+ depends_on('pacbio-dazz-db', type='run')
+ depends_on('pacbio-daligner', type='run')
+ depends_on('pacbio-dextractor', type='run')
+ depends_on('pacbio-damasker', type='run')
diff --git a/var/spack/repos/builtin/packages/farmhash/CMakeLists.txt b/var/spack/repos/builtin/packages/farmhash/CMakeLists.txt
new file mode 100644
index 0000000000..0286f29ad0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/farmhash/CMakeLists.txt
@@ -0,0 +1,25 @@
+cmake_minimum_required(VERSION 2.8.3)
+
+project(farmhash)
+
+set(FARMHASH_SRCS
+ "src/farmhash.h"
+ "src/farmhash.cc"
+)
+
+set(FARMHASH_INCLUDES
+ "src/farmhash.h"
+)
+
+include_directories("${CMAKE_CURRENT_SOURCE_DIR}")
+
+add_library(farmhash ${FARMHASH_SRCS})
+add_definitions(-DFARMHASH_NO_BUILTIN_EXPECT)
+
+install(TARGETS farmhash
+ LIBRARY DESTINATION lib COMPONENT RuntimeLibraries
+ ARCHIVE DESTINATION lib COMPONENT Development)
+
+foreach(FARMHASH_INCLUDE ${FARMHASH_INCLUDES})
+ install(FILES ${FARMHASH_INCLUDE} DESTINATION include COMPONENT Development)
+endforeach()
diff --git a/var/spack/repos/builtin/packages/farmhash/package.py b/var/spack/repos/builtin/packages/farmhash/package.py
new file mode 100644
index 0000000000..071a43c1a2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/farmhash/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+from shutil import copyfile
+
+
+class Farmhash(CMakePackage):
+ """
+ FarmHash provides hash functions for strings and other data.
+ """
+
+ homepage = "https://github.com/google/farmhash"
+
+ version('92e897', git='https://github.com/google/farmhash.git',
+ commit='92e897b282426729f4724d91a637596c7e2fe28f')
+
+ def patch(self):
+ copyfile(join_path(os.path.dirname(__file__), "CMakeLists.txt"),
+ "CMakeLists.txt")
diff --git a/var/spack/repos/builtin/packages/fastjar/package.py b/var/spack/repos/builtin/packages/fastjar/package.py
new file mode 100644
index 0000000000..19af359e81
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastjar/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fastjar(AutotoolsPackage):
+ """Fastjar is a version of Sun's 'jar' utility, written entirely in C."""
+
+ homepage = "http://savannah.nongnu.org/projects/fastjar/"
+ url = "http://download.savannah.gnu.org/releases/fastjar/fastjar-0.98.tar.gz"
+
+ version('0.98', 'd2d264d343d4d0e1575832cc1023c3bf')
+
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/fastmath/package.py b/var/spack/repos/builtin/packages/fastmath/package.py
new file mode 100644
index 0000000000..c91289afaa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastmath/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fastmath(Package):
+ """FASTMath is a suite of ~15 numerical libraries frequently used together
+ in various SciDAC and CSE applications. The suite includes discretization
+ libraries for structured, AMR and unstructured grids as well as solver
+ libraries for ODE's, Time Integrators, Iterative, Non-Linear, and Direct
+ Solvers."""
+
+ homepage = "www.fastmath-scidac.org/"
+ url = "https://github.com/citibeth/dummy/tarball/v1.0"
+
+ version('1.0', 'e2b724dfcc31d735897971db91be89ff')
+
+ # BundlePackage
+ depends_on('boxlib dims=3')
+ depends_on('chombo@3.2')
+ depends_on('hypre~internal-superlu')
+ depends_on('mesquite')
+# depends_on('ml-trilinos') # hoping for stripped down install of just ml
+# depends_on('nox-trilinos') # hoping for stripped down install of just nox
+ depends_on('moab')
+ depends_on('mpi')
+ depends_on('arpack-ng')
+ depends_on('petsc')
+ depends_on('phasta')
+ depends_on('pumi')
+ depends_on('sundials')
+ depends_on('superlu-dist')
+ depends_on('trilinos')
+ depends_on('zoltan')
+
+ # Dummy install for now, will be removed when metapackage is available
+ def install(self, spec, prefix):
+ # Prevent the error message
+ # ==> Error: Install failed for fastmath. Nothing was installed!
+ # ==> Error: Installation process had nonzero exit code : 256
+ with open(join_path(spec.prefix, 'bundle-package.txt'), 'w') as out:
+ out.write('This is a bundle\n')
+ out.close()
diff --git a/var/spack/repos/builtin/packages/fastme/package.py b/var/spack/repos/builtin/packages/fastme/package.py
new file mode 100644
index 0000000000..a64cd3163c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastme/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fastme(AutotoolsPackage):
+ """FastME is a distance based phylogeny reconstruction program that
+ works on distance matrices and, as of v2.0, sequence data. """
+
+ homepage = "http://www.atgc-montpellier.fr/fastme/"
+ url = "https://gite.lirmm.fr/atgc/FastME/repository/v2.1.5.1/archive.tar.gz"
+
+ version('2.1.5.1', '1059dcbd320bf4d6dd9328c582dd3d24283295026530fcfb26dbdbe068e3cd1d')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ force_autoreconf = True
diff --git a/var/spack/repos/builtin/packages/fastphase/package.py b/var/spack/repos/builtin/packages/fastphase/package.py
new file mode 100644
index 0000000000..857e13b3bd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastphase/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fastphase(Package):
+ """Software for haplotype reconstruction, and estimating missing genotypes
+ from population data."""
+
+ homepage = "http://stephenslab.uchicago.edu/software.html"
+ url = "http://scheet.org/code/Linuxfp.tar.gz"
+
+ version('2016-03-30', 'b48731eed9b8d0a5a321f970c5c20d8c')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('fastPHASE', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/fastq-screen/package.py b/var/spack/repos/builtin/packages/fastq-screen/package.py
new file mode 100644
index 0000000000..81289a5cb1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastq-screen/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class FastqScreen(Package):
+ """FastQ Screen allows you to screen a library of sequences in FastQ format
+ against a set of sequence databases so you can see if the composition of
+ the library matches with what you expect."""
+
+ homepage = "https://www.bioinformatics.babraham.ac.uk/projects/fastq_screen/"
+ url = "https://www.bioinformatics.babraham.ac.uk/projects/fastq_screen/fastq_screen_v0.11.2.tar.gz"
+
+ version('0.11.2', 'ef79f16ee553aaa0ab2fc14ea11e5473')
+
+ depends_on('perl', type='run')
+ depends_on('perl-gd-graph', type='run')
+ depends_on('bowtie')
+ depends_on('bowtie2')
+ depends_on('bwa')
+ depends_on('samtools')
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/fastqc/package.py b/var/spack/repos/builtin/packages/fastqc/package.py
index e2a1b54210..9d20805907 100644
--- a/var/spack/repos/builtin/packages/fastqc/package.py
+++ b/var/spack/repos/builtin/packages/fastqc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,8 +34,9 @@ class Fastqc(Package):
url = "http://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.11.5.zip"
version('0.11.5', '3524f101c0ab0bae77c7595983170a76')
+ version('0.11.4', '104ff2e0e9aebf5bee1f6b068a059b0d')
- depends_on('jdk', type='run')
+ depends_on('java', type='run')
depends_on('perl') # for fastqc "script", any perl will do
patch('fastqc.patch', level=0)
@@ -53,8 +54,9 @@ class Fastqc(Package):
# In theory the 'run' dependency on 'jdk' above should take
# care of this for me. In practice, it does not.
- def setup_environment(self, spack_env, env):
+ def setup_environment(self, spack_env, run_env):
"""Add <prefix> to the path; the package has a script at the
top level.
"""
- env.prepend_path('PATH', join_path(self.spec['jdk'].prefix, 'bin'))
+ run_env.prepend_path('PATH', join_path(self.spec['java'].prefix,
+ 'bin'))
diff --git a/var/spack/repos/builtin/packages/fastqvalidator/package.py b/var/spack/repos/builtin/packages/fastqvalidator/package.py
new file mode 100644
index 0000000000..d91ea6d0ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fastqvalidator/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fastqvalidator(MakefilePackage):
+ """The fastQValidator validates the format of fastq files."""
+
+ homepage = "http://genome.sph.umich.edu/wiki/FastQValidator"
+ url = "https://github.com/statgen/fastQValidator/archive/v0.1.1a.tar.gz"
+
+ version('2017-01-10', commit='6d619a34749e9d33c34ef0d3e0e87324ca77f320',
+ git='https://github.com/statgen/fastQValidator.git')
+
+ resource(
+ name='libStatGen',
+ git='https://github.com/statgen/libStatGen.git',
+ commit='9db9c23e176a6ce6f421a3c21ccadedca892ac0c'
+ )
+
+ @property
+ def build_targets(self):
+ return ['LIB_PATH_GENERAL={0}'.format(
+ join_path(self.stage.source_path, 'libStatGen'))]
+
+ @property
+ def install_targets(self):
+ return [
+ 'INSTALLDIR={0}'.format(self.prefix.bin),
+ 'LIB_PATH_GENERAL={0}'.format(
+ join_path(self.stage.source_path, 'libStatGen')),
+ 'install'
+ ]
diff --git a/var/spack/repos/builtin/packages/fastx-toolkit/package.py b/var/spack/repos/builtin/packages/fastx-toolkit/package.py
index 04b4d24b39..db9a1e1d6e 100644
--- a/var/spack/repos/builtin/packages/fastx-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/fastx-toolkit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class FastxToolkit(Package):
+class FastxToolkit(AutotoolsPackage):
"""The FASTX-Toolkit is a collection of command line tools for
Short-Reads FASTA/FASTQ files preprocessing."""
@@ -36,8 +36,4 @@ class FastxToolkit(Package):
depends_on('libgtextutils')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
+ conflicts('%gcc@7.1.0:')
diff --git a/var/spack/repos/builtin/packages/fenics/package.py b/var/spack/repos/builtin/packages/fenics/package.py
index 4be94a96b8..d95c826c34 100644
--- a/var/spack/repos/builtin/packages/fenics/package.py
+++ b/var/spack/repos/builtin/packages/fenics/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fenics(Package):
+class Fenics(CMakePackage):
"""FEniCS is organized as a collection of interoperable components
that together form the FEniCS Project. These components include
the problem-solving environment DOLFIN, the form compiler FFC, the
@@ -35,9 +35,10 @@ class Fenics(Package):
homepage = "http://fenicsproject.org/"
url = "https://bitbucket.org/fenics-project/dolfin/downloads/dolfin-1.6.0.tar.gz"
-
base_url = "https://bitbucket.org/fenics-project/{pkg}/downloads/{pkg}-{version}.tar.gz"
+ python_components = ['ufl', 'ffc', 'fiat', 'instant']
+
variant('hdf5', default=True, description='Compile with HDF5')
variant('parmetis', default=True, description='Compile with ParMETIS')
variant('scotch', default=True, description='Compile with Scotch')
@@ -54,8 +55,12 @@ class Fenics(Package):
description='Enables the shared memory support')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
+ variant('doc', default=False,
+ description='Builds the documentation')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo',
+ 'MinSizeRel', 'Developer'))
# not part of spack list for now
# variant('petsc4py', default=True, description='Uses PETSc4py')
@@ -68,7 +73,7 @@ class Fenics(Package):
extends('python')
- depends_on('eigen@3.2.0:', type='build')
+ depends_on('eigen@3.2.0:')
depends_on('boost+filesystem+program_options+system+iostreams+timer+regex+chrono')
depends_on('mpi', when='+mpi')
@@ -88,7 +93,7 @@ class Fenics(Package):
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-sympy', type=('build', 'run'))
depends_on('swig@3.0.3:', type=('build', 'run'))
- depends_on('cmake@2.8.12:', type=('build', 'run'))
+ depends_on('cmake@2.8.12:', type='build')
depends_on('py-setuptools', type='build')
depends_on('py-sphinx@1.0.1:', when='+doc', type='build')
@@ -140,14 +145,10 @@ class Fenics(Package):
def cmake_is_on(self, option):
return 'ON' if option in self.spec else 'OFF'
- def install(self, spec, prefix):
- for package in ['ufl', 'ffc', 'fiat', 'instant']:
- with working_dir(join_path('depends', package)):
- setup_py('install', '--prefix=%s' % prefix)
-
- cmake_args = [
- '-DCMAKE_BUILD_TYPE:STRING={0}'.format(
- 'Debug' if '+debug' in spec else 'RelWithDebInfo'),
+ def cmake_args(self):
+ return [
+ '-DDOLFIN_ENABLE_DOCS:BOOL={0}'.format(
+ self.cmake_is_on('+doc')),
'-DBUILD_SHARED_LIBS:BOOL={0}'.format(
self.cmake_is_on('+shared')),
'-DDOLFIN_SKIP_BUILD_TESTS:BOOL=ON',
@@ -189,10 +190,14 @@ class Fenics(Package):
self.cmake_is_on('zlib')),
]
- cmake_args.extend(std_cmake_args)
-
- with working_dir('build', create=True):
- cmake('..', *cmake_args)
+ @run_after('build')
+ def build_python_components(self):
+ for package in self.python_components:
+ with working_dir(join_path('depends', package)):
+ setup_py('build')
- make()
- make('install')
+ @run_after('install')
+ def install_python_components(self):
+ for package in self.python_components:
+ with working_dir(join_path('depends', package)):
+ setup_py('install', '--prefix={0}'.format(self.prefix))
diff --git a/var/spack/repos/builtin/packages/ferret/package.py b/var/spack/repos/builtin/packages/ferret/package.py
index 15ddfcee16..33a6cfcb92 100644
--- a/var/spack/repos/builtin/packages/ferret/package.py
+++ b/var/spack/repos/builtin/packages/ferret/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,11 +31,10 @@ class Ferret(Package):
"""Ferret is an interactive computer visualization and analysis environment
designed to meet the needs of oceanographers and meteorologists
analyzing large and complex gridded data sets."""
- homepage = "http://ferret.noaa.gov/Ferret/"
- url = "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.tar.gz"
+ homepage = "http://ferret.pmel.noaa.gov/Ferret/home"
+ url = "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.v696.tar.gz"
- version('6.96', '51722027c864369f41bab5751dfff8cc',
- url="ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.tar.gz")
+ version('6.96', '51722027c864369f41bab5751dfff8cc')
depends_on("hdf5~mpi~fortran")
depends_on("netcdf~mpi")
@@ -43,6 +42,10 @@ class Ferret(Package):
depends_on("readline")
depends_on("zlib")
+ def url_for_version(self, version):
+ return "ftp://ftp.pmel.noaa.gov/ferret/pub/source/fer_source.v{0}.tar.gz".format(
+ version.joined)
+
def patch(self):
hdf5_prefix = self.spec['hdf5'].prefix
netcdff_prefix = self.spec['netcdf-fortran'].prefix
@@ -95,7 +98,12 @@ class Ferret(Package):
ln('-sf',
libz_prefix + '/lib',
libz_prefix + '/lib64')
- os.environ['LDFLAGS'] = '-lquadmath'
+
+ if 'LDFLAGS' in env and env['LDFLAGS']:
+ env['LDFLAGS'] += ' ' + '-lquadmath'
+ else:
+ env['LDFLAGS'] = '-lquadmath'
+
with working_dir('FERRET', create=False):
os.environ['LD_X11'] = '-L/usr/lib/X11 -lX11'
os.environ['HOSTTYPE'] = 'x86_64-linux'
diff --git a/var/spack/repos/builtin/packages/ffmpeg/package.py b/var/spack/repos/builtin/packages/ffmpeg/package.py
new file mode 100644
index 0000000000..1a7e3b253b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ffmpeg/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ffmpeg(AutotoolsPackage):
+ """FFmpeg is a complete, cross-platform solution to record,
+ convert and stream audio and video."""
+
+ homepage = "https://ffmpeg.org"
+ url = "http://ffmpeg.org/releases/ffmpeg-3.2.4.tar.bz2"
+
+ version('3.2.4', 'd3ebaacfa36c6e8145373785824265b4')
+
+ variant('shared', default=True,
+ description='build shared libraries')
+
+ depends_on('yasm@1.2.0:')
+
+ def configure_args(self):
+ spec = self.spec
+ config_args = ['--enable-pic']
+
+ if '+shared' in spec:
+ config_args.append('--enable-shared')
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/fftw/package.py b/var/spack/repos/builtin/packages/fftw/package.py
index 838f6ff744..e2fc311166 100644
--- a/var/spack/repos/builtin/packages/fftw/package.py
+++ b/var/spack/repos/builtin/packages/fftw/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fftw(Package):
+class Fftw(AutotoolsPackage):
"""FFTW is a C subroutine library for computing the discrete Fourier
transform (DFT) in one or more dimensions, of arbitrary input
size, and of both real and complex data (as well as of even/odd
@@ -35,17 +35,24 @@ class Fftw(Package):
homepage = "http://www.fftw.org"
url = "http://www.fftw.org/fftw-3.3.4.tar.gz"
+ list_url = "http://www.fftw.org/download.html"
+ version('3.3.6-pl2', '927e481edbb32575397eb3d62535a856')
version('3.3.5', '6cc08a3b9c7ee06fdd5b9eb02e06f569')
version('3.3.4', '2edab8c06b24feeb3b82bbb3ebf3e7b3')
+ version('2.1.5', '8d16a84f3ca02a785ef9eb36249ba433')
- patch('pfft-3.3.5.patch', when="@3.3.5+pfft_patches", level=0)
+ patch('pfft-3.3.5.patch', when="@3.3.5:+pfft_patches", level=0)
patch('pfft-3.3.4.patch', when="@3.3.4+pfft_patches", level=0)
+ patch('pgi-3.3.6-pl2.patch', when="@3.3.6-pl2%pgi", level=0)
variant(
'float', default=True,
description='Produces a single precision version of the library')
variant(
+ 'double', default=True,
+ description='Produces a double precision version of the library')
+ variant(
'long_double', default=True,
description='Produces a long double precision version of the library')
variant(
@@ -61,18 +68,31 @@ class Fftw(Package):
depends_on('mpi', when='+mpi')
depends_on('automake', type='build', when='+pfft_patches')
depends_on('autoconf', type='build', when='+pfft_patches')
+ depends_on('libtool', type='build', when='+pfft_patches')
- # TODO : add support for architecture specific optimizations as soon as
- # targets are supported
+ @property
+ def libs(self):
+ result = find_libraries(['libfftw3'], root=self.prefix, recurse=True)
+ return result
- def install(self, spec, prefix):
+ def autoreconf(self, spec, prefix):
+ if '+pfft_patches' in spec:
+ autoreconf = which('autoreconf')
+ autoreconf('-ifv')
+
+ def configure(self, spec, prefix):
+ # Base options
options = [
'--prefix={0}'.format(prefix),
'--enable-shared',
'--enable-threads'
]
+ if not self.compiler.f77 or not self.compiler.fc:
+ options.append("--disable-fortran")
+ if spec.satisfies('@:2'):
+ options.append('--enable-type-prefix')
- # Add support for OpenMP
+ # Variants that affect every precision
if '+openmp' in spec:
# Note: Apple's Clang does not support OpenMP.
if spec.satisfies('%clang'):
@@ -80,36 +100,76 @@ class Fftw(Package):
if ver.endswith('-apple'):
raise InstallError("Apple's clang does not support OpenMP")
options.append('--enable-openmp')
- if not self.compiler.f77 or not self.compiler.fc:
- options.append("--disable-fortran")
+ if spec.satisfies('@:2'):
+ # TODO: libtool strips CFLAGS, so 2.x libxfftw_threads
+ # isn't linked to the openmp library. Patch Makefile?
+ options.insert(0, 'CFLAGS=' + self.compiler.openmp_flag)
if '+mpi' in spec:
options.append('--enable-mpi')
- if '+pfft_patches' in spec:
- autoreconf = which('autoreconf')
- autoreconf('-ifv')
+ # SIMD support
+ # TODO: add support for more architectures
+ float_options = []
+ double_options = []
+ if 'x86_64' in spec.architecture and spec.satisfies('@3:'):
+ float_options.append('--enable-sse2')
+ double_options.append('--enable-sse2')
- configure(*options)
- make()
- if self.run_tests:
- make("check")
- make("install")
+ configure = Executable('../configure')
+ # Build double/float/long double/quad variants
+ if '+double' in spec:
+ with working_dir('double', create=True):
+ configure(*(options + double_options))
if '+float' in spec:
- configure('--enable-float', *options)
- make()
- if self.run_tests:
+ with working_dir('float', create=True):
+ configure('--enable-float', *(options + float_options))
+ if spec.satisfies('@3:+long_double'):
+ with working_dir('long-double', create=True):
+ configure('--enable-long-double', *options)
+ if spec.satisfies('@3:+quad'):
+ with working_dir('quad', create=True):
+ configure('--enable-quad-precision', *options)
+
+ def build(self, spec, prefix):
+ if '+double' in spec:
+ with working_dir('double'):
+ make()
+ if '+float' in spec:
+ with working_dir('float'):
+ make()
+ if '+long_double' in spec:
+ with working_dir('long-double'):
+ make()
+ if '+quad' in spec:
+ with working_dir('quad'):
+ make()
+
+ def check(self):
+ spec = self.spec
+ if '+double' in spec:
+ with working_dir('double'):
+ make("check")
+ if '+float' in spec:
+ with working_dir('float'):
make("check")
- make("install")
if '+long_double' in spec:
- configure('--enable-long-double', *options)
- make()
- if self.run_tests:
+ with working_dir('long-double'):
make("check")
- make("install")
if '+quad' in spec:
- configure('--enable-quad-precision', *options)
- make()
- if self.run_tests:
+ with working_dir('quad'):
make("check")
- make("install")
+
+ def install(self, spec, prefix):
+ if '+double' in spec:
+ with working_dir('double'):
+ make("install")
+ if '+float' in spec:
+ with working_dir('float'):
+ make("install")
+ if '+long_double' in spec:
+ with working_dir('long-double'):
+ make("install")
+ if '+quad' in spec:
+ with working_dir('quad'):
+ make("install")
diff --git a/var/spack/repos/builtin/packages/fftw/pgi-3.3.6-pl2.patch b/var/spack/repos/builtin/packages/fftw/pgi-3.3.6-pl2.patch
new file mode 100644
index 0000000000..1822db1231
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fftw/pgi-3.3.6-pl2.patch
@@ -0,0 +1,121 @@
+--- configure 2017-01-27 16:08:52.000000000 -0500
++++ configure 2017-05-08 22:34:32.358821182 -0400
+@@ -21744,117 +21744,7 @@
+
+ # Various other checks:
+ if test "x$acx_pthread_ok" = xyes; then
+- save_LIBS="$LIBS"
+- LIBS="$PTHREAD_LIBS $LIBS"
+- save_CFLAGS="$CFLAGS"
+- CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
+-
+- # Detect AIX lossage: JOINABLE attribute is called UNDETACHED.
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for joinable pthread attribute" >&5
+-$as_echo_n "checking for joinable pthread attribute... " >&6; }
+- attr_name=unknown
+- for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do
+- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h. */
+-#include <pthread.h>
+-#ifdef F77_DUMMY_MAIN
+-
+-# ifdef __cplusplus
+- extern "C"
+-# endif
+- int F77_DUMMY_MAIN() { return 1; }
+-
+-#endif
+-int
+-main ()
+-{
+-int attr=$attr; return attr;
+- ;
+- return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+- attr_name=$attr; break
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+- conftest$ac_exeext conftest.$ac_ext
+- done
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $attr_name" >&5
+-$as_echo "$attr_name" >&6; }
+- if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then
+-
+-cat >>confdefs.h <<_ACEOF
+-#define PTHREAD_CREATE_JOINABLE $attr_name
+-_ACEOF
+-
+- fi
+-
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking if more special flags are required for pthreads" >&5
+-$as_echo_n "checking if more special flags are required for pthreads... " >&6; }
+- flag=no
+- case "${host_cpu}-${host_os}" in
+- *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";;
+- *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";;
+- esac
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${flag}" >&5
+-$as_echo "${flag}" >&6; }
+- if test "x$flag" != xno; then
+- PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS"
+- fi
+-
+- LIBS="$save_LIBS"
+- CFLAGS="$save_CFLAGS"
+-
+- # More AIX lossage: must compile with xlc_r or cc_r
+- if test x"$GCC" != xyes; then
+- for ac_prog in xlc_r cc_r
+-do
+- # Extract the first word of "$ac_prog", so it can be a program name with args.
+-set dummy $ac_prog; ac_word=$2
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+-$as_echo_n "checking for $ac_word... " >&6; }
+-if ${ac_cv_prog_PTHREAD_CC+:} false; then :
+- $as_echo_n "(cached) " >&6
+-else
+- if test -n "$PTHREAD_CC"; then
+- ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test.
+-else
+-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+-for as_dir in $PATH
+-do
+- IFS=$as_save_IFS
+- test -z "$as_dir" && as_dir=.
+- for ac_exec_ext in '' $ac_executable_extensions; do
+- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+- ac_cv_prog_PTHREAD_CC="$ac_prog"
+- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+- break 2
+- fi
+-done
+- done
+-IFS=$as_save_IFS
+-
+-fi
+-fi
+-PTHREAD_CC=$ac_cv_prog_PTHREAD_CC
+-if test -n "$PTHREAD_CC"; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PTHREAD_CC" >&5
+-$as_echo "$PTHREAD_CC" >&6; }
+-else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+-$as_echo "no" >&6; }
+-fi
+-
+-
+- test -n "$PTHREAD_CC" && break
+-done
+-test -n "$PTHREAD_CC" || PTHREAD_CC="${CC}"
+-
+- else
+- PTHREAD_CC=$CC
+- fi
+-else
+- PTHREAD_CC="$CC"
++ PTHREAD_CC="$CC"
+ fi
+
+
diff --git a/var/spack/repos/builtin/packages/fimpute/package.py b/var/spack/repos/builtin/packages/fimpute/package.py
new file mode 100644
index 0000000000..177ba05640
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fimpute/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fimpute(Package):
+ """FImpute uses an overlapping sliding window approach to efficiently
+ exploit relationships or haplotype similarities between target and
+ reference individuals."""
+
+ homepage = "http://www.aps.uoguelph.ca/~msargol/fimpute/"
+ url = "http://www.aps.uoguelph.ca/~msargol/fimpute/FImpute_Linux.zip"
+
+ version('2014-01', 'df934a25c76dabef7d7afcb5b8058d98')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('FImpute', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/findutils/package.py b/var/spack/repos/builtin/packages/findutils/package.py
new file mode 100644
index 0000000000..3abd8e2728
--- /dev/null
+++ b/var/spack/repos/builtin/packages/findutils/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Findutils(AutotoolsPackage):
+ """The GNU Find Utilities are the basic directory searching
+ utilities of the GNU operating system."""
+
+ homepage = "https://www.gnu.org/software/findutils/"
+ url = "http://ftpmirror.gnu.org/findutils/findutils-4.6.0.tar.gz"
+
+ version('4.6.0', '9936aa8009438ce185bea2694a997fc1')
+ version('4.4.2', '351cc4adb07d54877fa15f75fb77d39f')
+ version('4.4.1', '5883f569dc021eee765f330bb7a3782d')
+ version('4.4.0', '49e769ac4382fae6f104f99d54d0a112')
+ version('4.2.33', 'b7e35aa175778c84942b1fee4144988b')
+ version('4.2.32', 'aaa6beeb41a6f04963dff58f24a55b96')
+ version('4.2.31', 'a0e31a0f18a49709bf5a449867c8049a')
+ version('4.2.30', 'c35ff6502e0b3514c99089cb5d333c25')
+ version('4.2.29', '24e76434ca74ba3c2c6ad621eb64e1ff')
+ version('4.2.28', 'f5fb3349354ee3d94fceb81dab5c71fd')
+ version('4.2.27', 'f1e0ddf09f28f8102ff3b90f3b5bc920')
+ version('4.2.26', '9ac4e62937b1fdc4eb643d1d4bf117d3')
+ version('4.2.25', 'e92fef6714ffa9972f28a1a423066921')
+ version('4.2.23', 'ecaff8b060e8d69c10eb2391a8032e26')
+ version('4.2.20', '7c8e12165b221dd67a19c00d780437a4')
+ version('4.2.18', '8aac2498435f3f1882678fb9ebda5c34')
+ version('4.2.15', 'a881b15aa7170aea045bf35cc92d48e7')
+ version('4.1.20', 'e90ce7222daadeb8616b8db461e17cbc')
+ version('4.1', '3ea8fe58ef5386da75f6c707713aa059')
diff --git a/var/spack/repos/builtin/packages/fio/package.py b/var/spack/repos/builtin/packages/fio/package.py
new file mode 100644
index 0000000000..1119961ad0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fio/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fio(AutotoolsPackage):
+ """Flexible I/O Tester."""
+
+ homepage = "https://github.com/axboe/fio"
+ url = "https://github.com/axboe/fio/archive/fio-2.19.tar.gz"
+
+ version('2.19', '67125b60210a4daa689a4626fc66c612')
+
+ variant('gui', default=False, description='Enable building of gtk gfio')
+ variant('doc', default=False, description='Generate documentation')
+
+ depends_on('gtkplus@2.18:', when='+gui')
+ depends_on('cairo', when='+gui')
+
+ depends_on('py-sphinx', type='build', when='+doc')
+
+ def configure_args(self):
+ config_args = []
+
+ if '+gui' in self.spec:
+ config_args.append('--enable-gfio')
+
+ return config_args
+
+ @run_after('build')
+ def build_docs(self):
+ if '+doc' in self.spec:
+ make('-C', 'doc', 'html')
+ make('-C', 'doc', 'man')
diff --git a/var/spack/repos/builtin/packages/fish/package.py b/var/spack/repos/builtin/packages/fish/package.py
index fb784b7571..922aca5eb8 100644
--- a/var/spack/repos/builtin/packages/fish/package.py
+++ b/var/spack/repos/builtin/packages/fish/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fish(Package):
+class Fish(AutotoolsPackage):
"""fish is a smart and user-friendly command line shell for OS X, Linux, and
the rest of the family.
"""
@@ -34,10 +34,6 @@ class Fish(Package):
url = "http://fishshell.com/files/2.2.0/fish-2.2.0.tar.gz"
list_url = "http://fishshell.com/"
- version('2.2.0', 'a76339fd14ce2ec229283c53e805faac48c3e99d9e3ede9d82c0554acfc7b77a')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
+ depends_on('ncurses')
- make()
- make("install")
+ version('2.2.0', 'a76339fd14ce2ec229283c53e805faac48c3e99d9e3ede9d82c0554acfc7b77a')
diff --git a/var/spack/repos/builtin/packages/fixesproto/package.py b/var/spack/repos/builtin/packages/fixesproto/package.py
index 64852b40e2..b98437b9ff 100644
--- a/var/spack/repos/builtin/packages/fixesproto/package.py
+++ b/var/spack/repos/builtin/packages/fixesproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fixesproto(Package):
+class Fixesproto(AutotoolsPackage):
"""X Fixes Extension.
The extension makes changes to many areas of the protocol to resolve
@@ -39,8 +39,3 @@ class Fixesproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/flac/package.py b/var/spack/repos/builtin/packages/flac/package.py
new file mode 100644
index 0000000000..2b95a5a6f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flac/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Flac(AutotoolsPackage):
+ """Encoder/decoder for the Free Lossless Audio Codec"""
+
+ homepage = "https://xiph.org/flac/index.html"
+ url = "http://downloads.xiph.org/releases/flac/flac-1.3.2.tar.xz"
+
+ version('1.3.2', '454f1bfa3f93cc708098d7890d0499bd')
+ version('1.3.1', 'b9922c9a0378c88d3e901b234f852698')
+ version('1.3.0', '13b5c214cee8373464d3d65dee362cdd')
+
+ depends_on('libvorbis')
+ depends_on('id3lib')
diff --git a/var/spack/repos/builtin/packages/flang/package.py b/var/spack/repos/builtin/packages/flang/package.py
new file mode 100644
index 0000000000..fb84e9841d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flang/package.py
@@ -0,0 +1,82 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import os
+
+
+class Flang(CMakePackage):
+ """Flang is a Fortran compiler targeting LLVM."""
+ homepage = "https://github.com/flang-compiler/flang"
+ url = "https://github.com/flang-compiler/flang/flecsi/tarball/v1.0"
+
+ version('develop', git='https://github.com/flang-compiler/flang', branch='master')
+
+ depends_on(
+ "llvm+clang@4.0.1,5.0.0",
+ patches=[
+ patch('https://github.com/llvm-mirror/clang/pull/33.diff',
+ sha256='e46d7ab305e5e95c51f4656d9b52058143cd85d859b312b3c80e93a02d54b4a5',
+ when='@4.0.1', level=1, working_dir='tools/clang'),
+ patch('https://github.com/llvm-mirror/clang/pull/35.diff',
+ sha256='7f39555783993f78b75c380ca5ef167c1d8b88cc75c6542f6c94e0b6acfb7c5d',
+ when='@5.0.0', level=1, working_dir='tools/clang')
+ ]
+ )
+
+ def cmake_args(self):
+ options = [
+ '-DWITH_WERROR=OFF',
+ '-DCMAKE_C_COMPILER=%s' % os.path.join(
+ self.spec['llvm'].prefix.bin, 'clang'),
+ '-DCMAKE_CXX_COMPILER=%s' % os.path.join(
+ self.spec['llvm'].prefix.bin, 'clang++'),
+ '-DCMAKE_Fortran_COMPILER=%s' % os.path.join(
+ self.spec['llvm'].prefix.bin, 'flang'),
+ '-DFLANG_LIBOMP=%s' % find_libraries(
+ 'libomp', root=self.spec['llvm'].prefix.lib)
+ ]
+
+ return options
+
+ @run_after('install')
+ def post_install(self):
+ # we are installing flang in a path different from llvm, so we
+ # create a wrapper with -L for e.g. libflangrti.so and -I for
+ # e.g. iso_c_binding.mod. -B is needed to help flang to find
+ # flang1 and flang2. rpath_arg is needed so that executables
+ # generated by flang can find libflang later.
+ flang = os.path.join(self.spec.prefix.bin, 'flang')
+ with open(flang, 'w') as out:
+ out.write('#!/bin/bash\n')
+ out.write(
+ '{0} -I{1} -L{2} {3}{4} -B{5} "$@"\n'.format(
+ os.path.join(self.spec['llvm'].prefix.bin, 'flang'),
+ self.prefix.include, self.prefix.lib,
+ self.compiler.fc_rpath_arg, self.prefix.lib,
+ self.spec.prefix.bin))
+ out.close()
+ chmod = which('chmod')
+ chmod('+x', flang)
diff --git a/var/spack/repos/builtin/packages/flann/package.py b/var/spack/repos/builtin/packages/flann/package.py
new file mode 100644
index 0000000000..1ed996bd51
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flann/package.py
@@ -0,0 +1,149 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Flann(CMakePackage):
+ """FLANN is a library for performing fast approximate nearest neighbor
+ searches in high dimensional spaces. It contains a collection of
+ algorithms we found to work best for nearest neighbor search and a system
+ for automatically choosing the best algorithm and optimum parameters
+ depending on the dataset.
+
+ FLANN is written in C++ and contains bindings for the following languages:
+ C, MATLAB and Python.
+ """
+
+ homepage = "http://www.cs.ubc.ca/research/flann/"
+ url = "https://github.com/mariusmuja/flann/archive/1.9.1.tar.gz"
+
+ version('1.9.1', '73adef1c7bf8e8b978987e7860926ea6')
+ version('1.8.5', '02a81640b1e9c11796a0413976dc11f5')
+ version('1.8.4', '774b74580e3cbc5b0d45c6ec345a64ae')
+ version('1.8.1', '1f51500e172f5e11fbda05f033858eb6')
+ version('1.8.0', '473150f592c2997e32d5ce31fd3c19a2')
+
+ def url_for_version(self, version):
+ if version > Version('1.8.1'):
+ return "https://github.com/mariusmuja/flann/archive/{0}.tar.gz".format(version)
+ else:
+ return "https://github.com/mariusmuja/flann/archive/{0}-src.tar.gz".format(version)
+
+ # Options available in the CMakeLists.txt
+ # Language bindings
+ variant("python", default=False,
+ description="Build the Python bindings. "
+ "Module: pyflann.")
+ extends('python', when='+python')
+ variant("matlab", default=False, description="Build the Matlab bindings.")
+ # default to true for C because it's a C++ library, nothing extra needed
+ variant("c", default=True, description="Build the C bindings.")
+
+ # Must build C bindings for Python / Matlab
+ conflicts("+python", when="~c")
+ conflicts("+matlab", when="~c")
+
+ # Additional options
+ variant("cuda", default=False, description="Build the CUDA library.")
+ variant("examples", default=False, description="Build the examples.")
+ variant("doc", default=False, description="Build the documentation.")
+ variant("openmp", default=True, description="Use OpenMP multi-threading.")
+ # mpi and hdf5 are the bread and butter of this library, use 'em
+ variant("mpi", default=True, description="Use MPI.")
+ variant("hdf5", default=True, description="Enable HDF5 support.")
+
+ # Dependencies
+ extends("python", when="+python")
+ depends_on("py-numpy", when="+python", type=("build", "run"))
+ depends_on("matlab", when="+matlab", type=("build", "run"))
+ depends_on("cuda", when="+cuda")
+ depends_on("mpi", when="+mpi")
+ depends_on("hdf5", when="+hdf5")
+ # HDF5_IS_PARALLEL actually comes from hdf5+mpi
+ # https://github.com/mariusmuja/flann/blob/06a49513138009d19a1f4e0ace67fbff13270c69/CMakeLists.txt#L108-L112
+ depends_on("boost+mpi+system+serialization+thread", when="+mpi ^hdf5+mpi")
+
+ # Doc deps
+ depends_on("latex", when="+doc")
+
+ # Example uses hdf5.
+ depends_on("hdf5", when="+examples")
+
+ def patch(self):
+ # Fix up the python setup.py call inside the install(CODE
+ filter_file("setup.py install",
+ 'setup.py --no-user-cfg install --prefix=\\"{0}\\"'.format(
+ self.prefix
+ ),
+ "src/python/CMakeLists.txt")
+ # Fix the install location so that spack activate works
+ if '+python' in self.spec:
+ filter_file("share/flann/python",
+ site_packages_dir,
+ "src/python/CMakeLists.txt")
+ # Hack. Don't install setup.py
+ filter_file("install( FILES",
+ "# install( FILES",
+ "src/python/CMakeLists.txt", string=True)
+
+ # TODO: revisit after https://github.com/spack/spack/issues/1279
+ # depends_on('hdf5', type='test')
+ # depends_on('gtest', type='test')
+
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+
+ # Language bindings. Many default to true in CMakeLists, bypass all
+ c_bind = "ON" if "+c" in spec else "OFF"
+ args.append("-DBUILD_C_BINDINGS:BOOL={0}".format(c_bind))
+
+ py_bind = "ON" if "+python" in spec else "OFF"
+ args.append("-DBUILD_PYTHON_BINDINGS:BOOL={0}".format(py_bind))
+
+ mat_bind = "ON" if "+matlab" in spec else "OFF"
+ args.append("-DBUILD_MATLAB_BINDINGS:BOOL={0}".format(mat_bind))
+
+ # Extra options
+ cuda_lib = "ON" if "+cuda" in spec else "OFF"
+ args.append("-DBUILD_CUDA_LIB:BOOL={0}".format(cuda_lib))
+
+ examples = "ON" if "+examples" in spec else "OFF"
+ args.append("-DBUILD_EXAMPLES:BOOL={0}".format(examples))
+
+ use_openmp = "ON" if "+openmp" in spec else "OFF"
+ args.append("-DUSE_OPENMP:BOOL={0}".format(use_openmp))
+
+ use_mpi = "ON" if "+mpi" in spec else "OFF"
+ args.append("-DUSE_MPI:BOOL={0}".format(use_mpi))
+
+ # Configure the proper python executable
+ if "+python" in spec:
+ args.append(
+ "-DPYTHON_EXECUTABLE={0}".format(spec["python"].command.path)
+ )
+
+ return args
diff --git a/var/spack/repos/builtin/packages/flash/package.py b/var/spack/repos/builtin/packages/flash/package.py
new file mode 100644
index 0000000000..6c918feb1a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flash/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Flash(MakefilePackage):
+ """FLASH (Fast Length Adjustment of SHort reads) is a very
+ fast and accurate software tool to merge paired-end reads
+ from next-generation sequencing experiments."""
+
+ homepage = "https://ccb.jhu.edu/software/FLASH/"
+ url = "https://sourceforge.net/projects/flashpage/files/FLASH-1.2.11.tar.gz"
+
+ version('1.2.11', 'e4d355023a766afaaab2d62f912b605c')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('flash', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/flecsale/package.py b/var/spack/repos/builtin/packages/flecsale/package.py
new file mode 100644
index 0000000000..1160ea642e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flecsale/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Flecsale(CMakePackage):
+ """Flecsale is an ALE code based on FleCSI"""
+ homepage = "https://github.com/laristra/flecsale"
+ url = "https://github.com/laristra/flecsale/tarball/v1.0"
+
+ version('develop', git='https://github.com/laristra/flecsale', branch='master', submodules=True)
+
+ variant('mpi', default=True,
+ description='Build on top of mpi conduit for mpi inoperability')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on("flecsi~mpi", when='~mpi')
+ depends_on("flecsi+mpi", when='+mpi')
+ depends_on("python")
+ depends_on("openssl")
+
+ def cmake_args(self):
+ options = [
+ '-DENABLE_UNIT_TESTS=ON'
+ '-DENABLE_OPENSSL=ON'
+ '-DENABLE_PYTHON=ON'
+ ]
+
+ if '+mpi' in self.spec:
+ options.extend([
+ '-DENABLE_MPI=ON',
+ '-DFLECSI_RUNTIME_MODEL=mpilegion'
+ ])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/flecsi/package.py b/var/spack/repos/builtin/packages/flecsi/package.py
new file mode 100644
index 0000000000..049b28d15d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/flecsi/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Flecsi(CMakePackage):
+ """FleCSI is a compile-time configurable framework designed to support
+ multi-physics application development. As such, FleCSI attempts to
+ provide a very general set of infrastructure design patterns that can
+ be specialized and extended to suit the needs of a broad variety of
+ solver and data requirements. Current support includes multi-dimensional
+ mesh topology, mesh geometry, and mesh adjacency information,
+ n-dimensional hashed-tree data structures, graph partitioning
+ interfaces,and dependency closures.
+ """
+ homepage = "http://flecsi.lanl.gov/"
+ url = "https://github.com/laristra/flecsi/tarball/v1.0"
+
+ version('develop', git='https://github.com/laristra/flecsi', branch='master', submodules=True)
+
+ variant('mpi', default=True,
+ description='Build on top of mpi conduit for mpi inoperability')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on("legion+shared", when='~mpi')
+ depends_on("legion+shared+mpi", when='+mpi')
+
+ def cmake_args(self):
+ options = ['-DENABLE_UNIT_TESTS=ON']
+
+ if '+mpi' in self.spec:
+ options.extend([
+ '-DENABLE_MPI=ON',
+ ])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/flex/package.py b/var/spack/repos/builtin/packages/flex/package.py
index 23b3c8b21a..8d5ffe11c3 100644
--- a/var/spack/repos/builtin/packages/flex/package.py
+++ b/var/spack/repos/builtin/packages/flex/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import os
class Flex(AutotoolsPackage):
@@ -31,19 +32,23 @@ class Flex(AutotoolsPackage):
homepage = "https://github.com/westes/flex"
url = "https://github.com/westes/flex/releases/download/v2.6.1/flex-2.6.1.tar.gz"
- # Problematic version:
+ version('2.6.4', '2882e3179748cc9f9c23ec593d6adc8d')
+ version('2.6.3', 'a5f65570cd9107ec8a8ec88f17b31bb1')
+ # Avoid flex '2.6.2' (major bug)
# See issue #2554; https://github.com/westes/flex/issues/113
- # version('2.6.2', 'cc6d76c333db7653d5caf423a3335239')
version('2.6.1', '05bcd8fb629e0ae130311e8a6106fa82')
version('2.6.0', '760be2ee9433e822b6eb65318311c19d')
version('2.5.39', '5865e76ac69c05699f476515592750d7')
+ variant('lex', default=True,
+ description="Provide symlinks for lex and libl")
+
depends_on('bison', type='build')
depends_on('gettext@0.19:', type='build')
depends_on('help2man', type='build')
# Older tarballs don't come with a configure script
- depends_on('m4', type='build', when='@:2.6.0')
+ depends_on('m4', type='build')
depends_on('autoconf', type='build', when='@:2.6.0')
depends_on('automake', type='build', when='@:2.6.0')
depends_on('libtool', type='build', when='@:2.6.0')
@@ -61,10 +66,19 @@ class Flex(AutotoolsPackage):
return url
- def autoreconf(self, spec, prefix):
- pass
+ @run_after('install')
+ def symlink_lex(self):
+ """Install symlinks for lex compatibility."""
+ if self.spec.satisfies('+lex'):
+ dso = dso_suffix
+ for dir, flex, lex in \
+ ((self.prefix.bin, 'flex', 'lex'),
+ (self.prefix.lib, 'libfl.a', 'libl.a'),
+ (self.prefix.lib, 'libfl.' + dso, 'libl.' + dso),
+ (self.prefix.lib64, 'libfl.a', 'libl.a'),
+ (self.prefix.lib64, 'libfl.' + dso, 'libl.' + dso)):
- @when('@:2.6.0')
- def autoreconf(self, spec, prefix):
- libtoolize('--install', '--force')
- autoreconf('--install', '--force')
+ if os.path.isdir(dir):
+ with working_dir(dir):
+ if (os.path.isfile(flex) and not os.path.lexists(lex)):
+ symlink(flex, lex)
diff --git a/var/spack/repos/builtin/packages/flint/package.py b/var/spack/repos/builtin/packages/flint/package.py
index c39b17db2c..630a57c9bd 100644
--- a/var/spack/repos/builtin/packages/flint/package.py
+++ b/var/spack/repos/builtin/packages/flint/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/fltk/package.py b/var/spack/repos/builtin/packages/fltk/package.py
index f29b64b02b..62fe84bb44 100644
--- a/var/spack/repos/builtin/packages/fltk/package.py
+++ b/var/spack/repos/builtin/packages/fltk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/flux/package.py b/var/spack/repos/builtin/packages/flux/package.py
index 7abd9f46bd..6bca4c541c 100644
--- a/var/spack/repos/builtin/packages/flux/package.py
+++ b/var/spack/repos/builtin/packages/flux/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,38 +30,51 @@ class Flux(AutotoolsPackage):
""" A next-generation resource manager (pre-alpha) """
homepage = "https://github.com/flux-framework/flux-core"
- url = "https://github.com/flux-framework/flux-core/releases/download/v0.6.0/flux-core-0.6.0.tar.gz"
+ url = "https://github.com/flux-framework/flux-core/releases/download/v0.8.0/flux-core-0.8.0.tar.gz"
- version('0.6.0', md5='d44a0f719744771d168edd205bd8e74e')
+ version('0.8.0', md5='9ee12974a8b2ab9a30533f69826f3bec')
version('master', branch='master',
git='https://github.com/flux-framework/flux-core')
variant('docs', default=True, description='Build flux manpages')
- # Also needs autotools, but should use the system version if available
depends_on("zeromq@4.0.4:")
depends_on("czmq@2.2:")
depends_on("hwloc")
depends_on("lua@5.1:5.1.99")
+ depends_on("lua-luaposix")
depends_on("munge")
- depends_on("libjson-c")
- depends_on("libxslt")
+ depends_on("libuuid")
depends_on("python")
- depends_on("py-cffi")
+ depends_on("py-cffi", type=('build', 'run'))
depends_on("jansson")
depends_on("asciidoc", type='build', when="+docs")
+ # Need autotools when building on master:
depends_on("autoconf", type='build', when='@master')
depends_on("automake", type='build', when='@master')
depends_on("libtool", type='build', when='@master')
+ def setup():
+ pass
+
+ @when('@master')
+ def setup(self):
+ # Allow git-describe to get last tag so flux-version works:
+ git = which('git')
+ git('pull', '--depth=50', '--tags')
+
def autoreconf(self, spec, prefix):
+ self.setup()
if os.path.exists('autogen.sh'):
# Bootstrap with autotools
bash = which('bash')
bash('./autogen.sh')
- bash('./autogen.sh') # yes, twice, intentionally
+
+ def setup_environment(self, spack_env, run_env):
+ # Ensure ./fluxometer.lua can be found during flux's make check
+ spack_env.append_path('LUA_PATH', './?.lua', separator=';')
def configure_args(self):
return ['--disable-docs'] if '+docs' not in self.spec else []
diff --git a/var/spack/repos/builtin/packages/fmt/package.py b/var/spack/repos/builtin/packages/fmt/package.py
new file mode 100644
index 0000000000..78b4bfd664
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fmt/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fmt(CMakePackage):
+ """fmt (formerly cppformat) is an open-source formatting library.
+ It can be used as a safe alternative to printf or as a fast alternative
+ to C++ IOStreams."""
+
+ homepage = "http://fmtlib.net/latest/index.html"
+ url = "https://github.com/fmtlib/fmt/releases/download/4.0.0/fmt-4.0.0.zip"
+
+ version('4.0.0', '605b5abee11b83195191234f4f414cf1')
+ version('3.0.2', 'b190a7b8f2a5e522ee70cf339a53d3b2')
+ version('3.0.1', '14505463b838befe1513b09cae112715')
+ version('3.0.0', 'c099561e70fa194bb03b3fd5de2d3fd0')
+
+ depends_on('cmake@2.8.12:', type='build')
+
+ def cmake_args(self):
+ return [
+ '-DCMAKE_C_FLAGS={0}'.format(self.compiler.pic_flag),
+ '-DCMAKE_CXX_FLAGS={0}'.format(self.compiler.pic_flag),
+ ]
diff --git a/var/spack/repos/builtin/packages/foam-extend/package.py b/var/spack/repos/builtin/packages/foam-extend/package.py
index 67397a5b72..c6861da8d3 100644
--- a/var/spack/repos/builtin/packages/foam-extend/package.py
+++ b/var/spack/repos/builtin/packages/foam-extend/package.py
@@ -1,14 +1,16 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
+# License
+# -------
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
@@ -21,225 +23,173 @@
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# Legal Notice
+# ------------
+# OPENFOAM is a trademark owned by OpenCFD Ltd
+# (producer and distributor of the OpenFOAM software via www.openfoam.com).
+# The trademark information must remain visible and unadulterated in this
+# file and via the "spack info" and comply with the term set by
+# http://openfoam.com/legal/trademark-policy.php
+#
+# This file is not part of OpenFOAM, nor does it constitute a component of an
+# OpenFOAM distribution.
+#
##############################################################################
-from spack import *
-from spack.environment import *
-
-import multiprocessing
+#
+# Notes
+# - mpi handling: WM_MPLIB=USER and provide wmake rules for special purpose
+# 'USER and 'USERMPI' mpi implementations.
+# The choice of 'USER' vs 'USERMPI' may change in the future.
+#
+# Changes
+# 2017-03-28 Mark Olesen <mark.olesen@esi-group.com>
+# - avoid installing intermediate targets.
+# - reworked to mirror the openfoam-com package.
+# If changes are needed here, consider if they need applying there too.
+#
+# Known issues
+# - Combining +parmgridgen with +float32 probably won't work.
+#
+##############################################################################
+import glob
+import re
+import shutil
import os
+from spack import *
+from spack.pkg.builtin.openfoam_com import OpenfoamArch
+from spack.pkg.builtin.openfoam_com import add_extra_files
+from spack.pkg.builtin.openfoam_com import write_environ
+from spack.pkg.builtin.openfoam_com import rewrite_environ_files
+
class FoamExtend(Package):
- """The foam-extend project is a fork of the OpenFOAM open source library
- for Computational Fluid Dynamics (CFD)."""
+ """The Extend Project is a fork of the OpenFOAM opensource library
+ for Computational Fluid Dynamics (CFD).
+ This offering is not approved or endorsed by OpenCFD Ltd,
+ producer and distributor of the OpenFOAM software via www.openfoam.com,
+ and owner of the OPENFOAM trademark.
+ """
homepage = "http://www.extend-project.de/"
+ version('4.0', git='http://git.code.sf.net/p/foam-extend/foam-extend-4.0')
version('3.2', git='http://git.code.sf.net/p/foam-extend/foam-extend-3.2')
version('3.1', git='http://git.code.sf.net/p/foam-extend/foam-extend-3.1')
version('3.0', git='http://git.code.sf.net/p/foam-extend/foam-extend-3.0')
- variant('paraview', default=False, description='Enable ParaFOAM')
- variant(
- 'scotch', default=True,
- description='Activate Scotch as a possible decomposition library')
- variant(
- 'ptscotch', default=True,
- description='Activate PT-Scotch as a possible decomposition library')
- variant(
- 'metis', default=True,
- description='Activate Metis as a possible decomposition library')
- variant(
- 'parmetis', default=True,
- description='Activate Parmetis as a possible decomposition library')
- variant(
- 'parmgridgen', default=True,
- description='Activate Parmgridgen support')
- variant(
- 'source', default=True,
- description='Installs also the source folder')
-
- supported_compilers = {'clang': 'Clang', 'gcc': 'Gcc', 'intel': 'Icc'}
-
+ # variant('int64', default=False,
+ # description='Compile with 64-bit label')
+ variant('float32', default=False,
+ description='Compile with 32-bit scalar (single-precision)')
+ variant('paraview', default=False,
+ description='Build paraview plugins (eg, paraFoam)')
+ variant('scotch', default=True,
+ description='With scotch for decomposition')
+ variant('ptscotch', default=True,
+ description='With ptscotch for decomposition')
+ variant('metis', default=True,
+ description='With metis for decomposition')
+ variant('parmetis', default=True,
+ description='With parmetis for decomposition')
+ variant('parmgridgen', default=True,
+ description='With parmgridgen support')
+ variant('source', default=True,
+ description='Install library/application sources and tutorials')
+
+ provides('openfoam')
depends_on('mpi')
depends_on('python')
- depends_on('flex')
depends_on('zlib')
+ depends_on('flex', type='build')
depends_on('cmake', type='build')
- depends_on('scotch ~ metis', when='~ptscotch+scotch')
- depends_on('scotch ~ metis + mpi', when='+ptscotch')
- depends_on('metis@5:', when='+metis')
- depends_on('parmetis', when='+parmetis')
- depends_on('parmgridgen', when='+parmgridgen')
-
- depends_on('paraview', when='+paraview')
-
- def set_arch(self):
- (sysname, nodename, release, version, machine) = os.uname()
-
- if self.compiler.name not in self.supported_compilers:
- raise RuntimeError('{0} is not a supported compiler \
- to compile OpenFOAM'.format(self.compiler.name))
-
- foam_compiler = self.supported_compilers[self.compiler.name]
- if sysname == 'Linux':
- arch = 'linux'
- if foam_compiler == 'Clang':
- raise RuntimeError('OS, compiler combination not\
- supported ({0} {1})'.format(sysname, foam_compiler))
- elif sysname == 'Darwin':
- if machine == 'x86_64':
- arch = 'darwinIntel'
- if foam_compiler == 'Icc':
- raise RuntimeError('OS, compiler combination not\
- supported ({0} {1})'.format(sysname, foam_compiler))
- else:
- raise RuntimeError('{0} {1} is not a \
- supported architecture'.format(sysname, machine))
+ depends_on('scotch~metis', when='~ptscotch+scotch')
+ depends_on('scotch~metis+mpi', when='+ptscotch')
+ depends_on('metis@5:', when='+metis')
+ depends_on('parmetis', when='+parmetis')
+ # mgridgen is statically linked
+ depends_on('parmgridgen', when='+parmgridgen', type='build')
+ depends_on('paraview@:5.0.1', when='+paraview')
- return (arch, foam_compiler)
+ # General patches
+ common = ['spack-Allwmake', 'README-spack']
+ assets = []
- def get_openfoam_environment(self):
- return EnvironmentModifications.from_sourcing_files(
- join_path(self.stage.source_path,
- 'etc/bashrc'))
+ # Some user config settings
+ config = {
+ 'label-size': False, # <- No int32/int64 support
+ 'mplib': 'USERMPI', # USER | USERMPI
+ }
- def patch(self):
- # change names to match the package and not the one patch in
- # the Third-Party of foam-extend
- if '+parmgridgen' in self.spec:
- filter_file(r'-lMGridGen',
- r'-lmgrid',
- 'src/dbns/Make/options')
+ # The openfoam architecture, compiler information etc
+ _foam_arch = None
- filter_file(
- r'-lMGridGen',
- r'-lmgrid',
- 'src/fvAgglomerationMethods/MGridGenGamgAgglomeration/Make/options') # noqa: E501
-
- # Get the wmake arch and compiler
- (arch, foam_compiler) = self.set_arch()
-
- prefs_dict = {
- 'compilerInstall': 'System',
- 'WM_COMPILER': foam_compiler,
- 'WM_ARCH_OPTION': '64',
- 'WM_PRECISION_OPTION': 'DP',
- 'WM_COMPILE_OPTION': 'SPACKOpt',
- 'WM_MPLIB': 'SPACK',
-
- 'CMAKE_DIR': self.spec['cmake'].prefix,
- 'CMAKE_BIN_DIR': self.spec['cmake'].prefix.bin,
- 'PYTHON_DIR': self.spec['python'].prefix,
- 'PYTHON_BIN_DIR': self.spec['python'].prefix.bin,
-
- 'FLEX_SYSTEM': 1,
- 'FLEX_DIR': self.spec['flex'].prefix,
-
- 'BISON_SYSTEM': 1,
- 'BISON_DIR': self.spec['flex'].prefix,
-
- 'ZLIB_SYSTEM': 1,
- 'ZLIB_DIR': self.spec['zlib'].prefix,
- }
+ # Content for etc/prefs.{csh,sh}
+ etc_prefs = {}
- if '+scotch' in self.spec or '+ptscotch' in self.spec:
- prefs_dict['SCOTCH_SYSTEM'] = 1
- prefs_dict['SCOTCH_DIR'] = self.spec['scotch'].prefix
- prefs_dict['SCOTCH_BIN_DIR'] = self.spec['scotch'].prefix.bin
- prefs_dict['SCOTCH_LIB_DIR'] = self.spec['scotch'].prefix.lib
- prefs_dict['SCOTCH_INCLUDE_DIR'] = \
- self.spec['scotch'].prefix.include
-
- if '+metis' in self.spec:
- prefs_dict['METIS_SYSTEM'] = 1
- prefs_dict['METIS_DIR'] = self.spec['metis'].prefix
- prefs_dict['METIS_BIN_DIR'] = self.spec['metis'].prefix.bin
- prefs_dict['METIS_LIB_DIR'] = self.spec['metis'].prefix.lib
- prefs_dict['METIS_INCLUDE_DIR'] = self.spec['metis'].prefix.include
-
- if '+parmetis' in self.spec:
- prefs_dict['PARMETIS_SYSTEM'] = 1
- prefs_dict['PARMETIS_DIR'] = self.spec['parmetis'].prefix
- prefs_dict['PARMETIS_BIN_DIR'] = self.spec['parmetis'].prefix.bin
- prefs_dict['PARMETIS_LIB_DIR'] = self.spec['parmetis'].prefix.lib
- prefs_dict['PARMETIS_INCLUDE_DIR'] = \
- self.spec['parmetis'].prefix.include
-
- if '+parmgridgen' in self.spec:
- prefs_dict['PARMGRIDGEN_SYSTEM'] = 1
- prefs_dict['PARMGRIDGEN_DIR'] = self.spec['parmgridgen'].prefix
- prefs_dict['PARMGRIDGEN_BIN_DIR'] = \
- self.spec['parmgridgen'].prefix.bin
- prefs_dict['PARMGRIDGEN_LIB_DIR'] = \
- self.spec['parmgridgen'].prefix.lib
- prefs_dict['PARMGRIDGEN_INCLUDE_DIR'] = \
- self.spec['parmgridgen'].prefix.include
+ # Content for etc/config.{csh,sh}/ files
+ etc_config = {}
- if '+paraview' in self.spec:
- prefs_dict['PARAVIEW_SYSTEM'] = 1
- prefs_dict['PARAVIEW_DIR'] = self.spec['paraview'].prefix
- prefs_dict['PARAVIEW_BIN_DIR'] = self.spec['paraview'].prefix.bin
- prefs_dict['QT_SYSTEM'] = 1
- prefs_dict['QT_DIR'] = self.spec['qt'].prefix
- prefs_dict['QT_BIN_DIR'] = self.spec['qt'].prefix.bin
-
- # write the prefs files to define the configuration needed,
- # only the prefs.sh is used by this script but both are
- # installed for end users
- with working_dir('.'):
- with open("etc/prefs.sh", "w") as fh:
- for key in sorted(prefs_dict):
- fh.write('export {0}={1}\n'.format(key, prefs_dict[key]))
-
- with open("etc/prefs.csh", "w") as fh:
- for key in sorted(prefs_dict):
- fh.write('setenv {0}={1}\n'.format(key, prefs_dict[key]))
-
- # Defining a different mpi and optimisation file to be able to
- # make wmake get spack info with minimum modifications on
- # configurations scripts
- mpi_info = [
- 'PFLAGS = -DOMPI_SKIP_MPICXX -DMPICH_IGNORE_CXX_SEEK',
- 'PINC = -I{0}'.format(self.spec['mpi'].prefix.include),
- 'PLIBS = -L{0} -lmpi'.format(self.spec['mpi'].prefix.lib)
- ]
+ phases = ['configure', 'build', 'install']
+ build_script = './spack-Allwmake' # <- Added by patch() method.
- arch_path = ''.join([arch, prefs_dict['WM_ARCH_OPTION'],
- foam_compiler])
- option_path = ''.join([arch_path,
- prefs_dict['WM_PRECISION_OPTION'],
- prefs_dict['WM_COMPILE_OPTION']])
- rule_path = join_path("wmake", "rules", arch_path)
- build_path = join_path(self.stage.source_path, 'lib', option_path)
- install_path = \
- join_path(self.prefix,
- 'foam-extend-{0}'.format(self.version.up_to(2)),
- option_path)
-
- rpaths_foam = ' '.join([
- '{0}{1}'.format(self.compiler.cxx_rpath_arg,
- install_path),
- '{0}{1}'.format(self.compiler.cxx_rpath_arg,
- build_path)
- ])
-
- compiler_flags = {
- 'DBUG': rpaths_foam,
- 'OPT': '-O3',
- }
+ #
+ # - End of definitions / setup -
+ #
- with working_dir(rule_path):
- with open('mplibSPACK', "w") as fh:
- fh.write('\n'.join(mpi_info))
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('FOAM_INST_DIR', os.path.dirname(self.projectdir)),
+ run_env.set('FOAM_PROJECT_DIR', self.projectdir)
+ run_env.set('WM_PROJECT_DIR', self.projectdir)
+ for d in ['wmake', self.archbin]: # bin already added automatically
+ run_env.prepend_path('PATH', join_path(self.projectdir, d))
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Provide location of the OpenFOAM project.
+ This is identical to the WM_PROJECT_DIR value, but we avoid that
+ variable since it would mask the normal OpenFOAM cleanup of
+ previous versions.
+ """
+ spack_env.set('FOAM_PROJECT_DIR', self.projectdir)
+
+ @property
+ def projectdir(self):
+ """Absolute location of project directory: WM_PROJECT_DIR/"""
+ return self.prefix # <- install directly under prefix
+
+ @property
+ def foam_arch(self):
+ if not self._foam_arch:
+ self._foam_arch = OpenfoamArch(self.spec, **self.config)
+ return self._foam_arch
+
+ @property
+ def archbin(self):
+ """Relative location of architecture-specific executables"""
+ return join_path('applications', 'bin', self.foam_arch)
+
+ @property
+ def archlib(self):
+ """Relative location of architecture-specific libraries"""
+ return join_path('lib', self.foam_arch)
- for comp in ['c', 'c++']:
- with open('{0}SPACKOpt'.format(comp), "w") as fh:
- for key, val in compiler_flags.iteritems():
- fh.write('{0}{1} = {2}\n'.format(comp, key, val))
+ def patch(self):
+ """Adjust OpenFOAM build for spack.
+ Where needed, apply filter as an alternative to normal patching."""
+ add_extra_files(self, self.common, self.assets)
+
+ # Adjust ParMGridGen - this is still a mess
+ files = [
+ 'src/dbns/Make/options',
+ 'src/fvAgglomerationMethods/MGridGenGamgAgglomeration/Make/options' # noqa: E501
+ ]
+ for f in files:
+ filter_file(r'-lMGridGen', r'-lmgrid', f, backup=False)
- _files_to_patch = [
+ # Adjust for flex version check
+ files = [
'src/thermophysicalModels/reactionThermo/chemistryReaders/chemkinReader/chemkinLexer.L', # noqa: E501
'src/surfMesh/surfaceFormats/stl/STLsurfaceFormatASCII.L', # noqa: E501
'src/meshTools/triSurface/triSurface/interfaces/STL/readSTLASCII.L', # noqa: E501
@@ -250,40 +200,188 @@ class FoamExtend(Package):
'applications/utilities/mesh/conversion/fluentMeshToFoam/fluentMeshToFoam.L', # noqa: E501
'applications/utilities/mesh/conversion/fluent3DMeshToElmer/fluent3DMeshToElmer.L' # noqa: E501
]
- for _file in _files_to_patch:
- filter_file(r'#if YY_FLEX_SUBMINOR_VERSION < 34',
- r'#if YY_FLEX_MAJOR_VERSION <= 2 && YY_FLEX_MINOR_VERSION <= 5 && YY_FLEX_SUBMINOR_VERSION < 34', # noqa: E501
- _file)
-
- def setup_environment(self, spack_env, run_env):
- with working_dir(self.stage.path):
- spack_env.set('FOAM_INST_DIR', os.path.abspath('.'))
-
- (arch, foam_compiler) = self.set_arch()
+ for f in files:
+ filter_file(
+ r'#if YY_FLEX_SUBMINOR_VERSION < 34',
+ r'#if YY_FLEX_MAJOR_VERSION <= 2 && YY_FLEX_MINOR_VERSION <= 5 && YY_FLEX_SUBMINOR_VERSION < 34', # noqa: E501
+ f, backup=False)
+
+ def configure(self, spec, prefix):
+ """Make adjustments to the OpenFOAM configuration files in their various
+ locations: etc/bashrc, etc/config.sh/FEATURE and customizations that
+ don't properly fit get placed in the etc/prefs.sh file (similiarly for
+ csh).
+ """
+ # Content for etc/prefs.{csh,sh}
+ self.etc_prefs = {
+ '000': { # Sort first
+ 'compilerInstall': 'System',
+ },
+ '001': {},
+ 'cmake': {
+ 'CMAKE_DIR': spec['cmake'].prefix,
+ 'CMAKE_BIN_DIR': spec['cmake'].prefix.bin,
+ },
+ 'python': {
+ 'PYTHON_DIR': spec['python'].home,
+ 'PYTHON_BIN_DIR': spec['python'].home.bin,
+ },
+ 'flex': {
+ 'FLEX_SYSTEM': 1,
+ 'FLEX_DIR': spec['flex'].prefix,
+ },
+ 'bison': {
+ 'BISON_SYSTEM': 1,
+ 'BISON_DIR': spec['flex'].prefix,
+ },
+ 'zlib': {
+ 'ZLIB_SYSTEM': 1,
+ 'ZLIB_DIR': spec['zlib'].prefix,
+ },
+ }
+ # Adjust configuration via prefs - sort second
+ self.etc_prefs['001'].update(self.foam_arch.foam_dict())
+
+ if '+scotch' in spec or '+ptscotch' in spec:
+ pkg = spec['scotch'].prefix
+ self.etc_prefs['scotch'] = {
+ 'SCOTCH_SYSTEM': 1,
+ 'SCOTCH_DIR': pkg,
+ 'SCOTCH_BIN_DIR': pkg.bin,
+ 'SCOTCH_LIB_DIR': pkg.lib,
+ 'SCOTCH_INCLUDE_DIR': pkg.include,
+ }
+
+ if '+metis' in spec:
+ pkg = spec['metis'].prefix
+ self.etc_prefs['metis'] = {
+ 'METIS_SYSTEM': 1,
+ 'METIS_DIR': pkg,
+ 'METIS_BIN_DIR': pkg.bin,
+ 'METIS_LIB_DIR': pkg.lib,
+ 'METIS_INCLUDE_DIR': pkg.include,
+ }
+
+ if '+parmetis' in spec:
+ pkg = spec['parmetis'].prefix
+ self.etc_prefs['parametis'] = {
+ 'PARMETIS_SYSTEM': 1,
+ 'PARMETIS_DIR': pkg,
+ 'PARMETIS_BIN_DIR': pkg.bin,
+ 'PARMETIS_LIB_DIR': pkg.lib,
+ 'PARMETIS_INCLUDE_DIR': pkg.include,
+ }
+
+ if '+parmgridgen' in spec:
+ pkg = spec['parmgridgen'].prefix
+ self.etc_prefs['parmgridgen'] = {
+ 'PARMGRIDGEN_SYSTEM': 1,
+ 'PARMGRIDGEN_DIR': pkg,
+ 'PARMGRIDGEN_BIN_DIR': pkg.bin,
+ 'PARMGRIDGEN_LIB_DIR': pkg.lib,
+ 'PARMGRIDGEN_INCLUDE_DIR': pkg.include,
+ }
- run_env.set('FOAM_INST_DIR', self.prefix)
+ if '+paraview' in self.spec:
+ self.etc_prefs['paraview'] = {
+ 'PARAVIEW_SYSTEM': 1,
+ 'PARAVIEW_DIR': spec['paraview'].prefix,
+ 'PARAVIEW_BIN_DIR': spec['paraview'].prefix.bin,
+ }
+ self.etc_prefs['qt'] = {
+ 'QT_SYSTEM': 1,
+ 'QT_DIR': spec['qt'].prefix,
+ 'QT_BIN_DIR': spec['qt'].prefix.bin,
+ }
+
+ # Write prefs files according to the configuration.
+ # Only need prefs.sh for building, but install both for end-users
+ write_environ(
+ self.etc_prefs,
+ posix=join_path('etc', 'prefs.sh'),
+ cshell=join_path('etc', 'prefs.csh'))
+
+ def build(self, spec, prefix):
+ """Build using the OpenFOAM Allwmake script, with a wrapper to source
+ its environment first.
+ Only build if the compiler is known to be supported.
+ """
+ self.foam_arch.has_rule(self.stage.source_path)
+ self.foam_arch.create_rules(self.stage.source_path, self)
+
+ args = []
+ if self.parallel: # Build in parallel? - pass via the environment
+ os.environ['WM_NCOMPPROCS'] = str(make_jobs)
+ builder = Executable(self.build_script)
+ builder(*args)
def install(self, spec, prefix):
- env_openfoam = self.get_openfoam_environment()
- env_openfoam.apply_modifications()
+ """Install under the projectdir"""
+ opts = str(self.foam_arch)
+
+ # Fairly ugly since intermediate targets are scattered inside sources
+ appdir = 'applications'
+ projdir = os.path.basename(self.projectdir)
+ mkdirp(self.projectdir, join_path(self.projectdir, appdir))
+ # Filtering: bashrc, cshrc
+ edits = {
+ 'WM_PROJECT_INST_DIR': os.path.dirname(self.projectdir),
+ 'WM_PROJECT_DIR': join_path('$WM_PROJECT_INST_DIR', projdir),
+ }
- if self.parallel:
- os.environ['WM_NCOMPPROCS'] = str(self.make_jobs) \
- if self.make_jobs else str(multiprocessing.cpu_count())
+ # All top-level files, except spack build info and possibly Allwmake
+ if '+source' in spec:
+ ignored = re.compile(r'^spack-.*')
+ else:
+ ignored = re.compile(r'^(Allclean|Allwmake|spack-).*')
- allwmake = Executable('./Allwmake')
- allwmake()
+ files = [
+ f for f in glob.glob("*")
+ if os.path.isfile(f) and not ignored.search(f)
+ ]
+ for f in files:
+ install(f, self.projectdir)
- install_path = \
- join_path(self.prefix,
- 'foam-extend-{0}'.format(self.version.up_to(2)))
+ # Install directories. install applications/bin directly
+ # Install 'etc' before 'bin' (for symlinks)
+ for d in ['etc', 'bin', 'wmake', 'lib', join_path(appdir, 'bin')]:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ symlinks=True)
if '+source' in spec:
- install_tree('src', join_path(install_path, 'src'))
- install_tree('tutorials', join_path(install_path, 'tutorials'))
-
- install_tree('lib', join_path(install_path, 'lib'))
- install_tree('bin', join_path(install_path, 'bin'))
- install_tree('applications', join_path(install_path, 'applications'))
- install_tree('etc', join_path(install_path, 'etc'))
- install_tree('wmake', join_path(install_path, 'wmake'))
+ subitem = join_path(appdir, 'Allwmake')
+ install(subitem, join_path(self.projectdir, subitem))
+
+ ignored = [opts] # Ignore intermediate targets
+ for d in ['src', 'tutorials']:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ ignore=shutil.ignore_patterns(*ignored),
+ symlinks=True)
+
+ for d in ['solvers', 'utilities']:
+ install_tree(
+ join_path(appdir, d),
+ join_path(self.projectdir, appdir, d),
+ ignore=shutil.ignore_patterns(*ignored),
+ symlinks=True)
+
+ etc_dir = join_path(self.projectdir, 'etc')
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path(etc_dir, 'bashrc'),
+ cshell=join_path(etc_dir, 'cshrc'))
+ self.install_links()
+
+ def install_links(self):
+ """Add symlinks into bin/, lib/ (eg, for other applications)"""
+ # Make build log visible - it contains OpenFOAM-specific information
+ with working_dir(self.projectdir):
+ os.symlink(
+ join_path('.spack', 'build.out'),
+ join_path('log.' + str(self.foam_arch)))
+
+# -----------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/folly/package.py b/var/spack/repos/builtin/packages/folly/package.py
new file mode 100644
index 0000000000..9dca4bd6cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/folly/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Folly(AutotoolsPackage):
+ """Folly (acronymed loosely after Facebook Open Source Library) is a
+ library of C++11 components designed with practicality and efficiency
+ in mind.
+
+ Folly contains a variety of core library components used extensively at
+ Facebook. In particular, it's often a dependency of Facebook's other open
+ source C++ efforts and place where those projects can share code.
+ """
+
+ homepage = "https://github.com/facebook/folly"
+ url = "https://github.com/facebook/folly/archive/v2017.06.05.00.tar.gz"
+
+ version('2017.06.05.00', 'a25e8d646702c3e0c1400f591e485a33')
+ version('2016.11.14.00', '88550acdb4d4b331c0ca9922039c8727')
+ version('2016.11.07.00', '2f605b20ad539bccdbfd361daa92081e')
+ version('2016.10.31.00', 'ab3049302792f8470cef64f3a29eedec')
+ version('2016.10.24.00', '0445efb7c16b5c32dfbb173157e54866')
+ version('2016.10.17.00', 'b7e01934a45c5036fab8fdc70e9eaf4d')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('pkg-config', type='build')
+
+ # TODO: folly requires gcc 4.9+ and a version of boost compiled with
+ # TODO: C++14 support (but there's no neat way to check that these
+ # TODO: constraints are met right now)
+ depends_on('boost')
+
+ depends_on('gflags')
+ depends_on('glog')
+ depends_on('double-conversion')
+ depends_on('libevent')
+
+ configure_directory = 'folly'
diff --git a/var/spack/repos/builtin/packages/font-adobe-100dpi/package.py b/var/spack/repos/builtin/packages/font-adobe-100dpi/package.py
index bde6f352da..8efdebb802 100644
--- a/var/spack/repos/builtin/packages/font-adobe-100dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-adobe-100dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-adobe-75dpi/package.py b/var/spack/repos/builtin/packages/font-adobe-75dpi/package.py
index 380fcf363e..0b73bd1b9a 100644
--- a/var/spack/repos/builtin/packages/font-adobe-75dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-adobe-75dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-adobe-utopia-100dpi/package.py b/var/spack/repos/builtin/packages/font-adobe-utopia-100dpi/package.py
index 9782d259b5..7a61e04de5 100644
--- a/var/spack/repos/builtin/packages/font-adobe-utopia-100dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-adobe-utopia-100dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-adobe-utopia-75dpi/package.py b/var/spack/repos/builtin/packages/font-adobe-utopia-75dpi/package.py
index 9b687a7814..dddd546cad 100644
--- a/var/spack/repos/builtin/packages/font-adobe-utopia-75dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-adobe-utopia-75dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-adobe-utopia-type1/package.py b/var/spack/repos/builtin/packages/font-adobe-utopia-type1/package.py
index 14004e9883..0d03c12822 100644
--- a/var/spack/repos/builtin/packages/font-adobe-utopia-type1/package.py
+++ b/var/spack/repos/builtin/packages/font-adobe-utopia-type1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-alias/package.py b/var/spack/repos/builtin/packages/font-alias/package.py
index eb8c79fe2a..15a14bf2cb 100644
--- a/var/spack/repos/builtin/packages/font-alias/package.py
+++ b/var/spack/repos/builtin/packages/font-alias/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-arabic-misc/package.py b/var/spack/repos/builtin/packages/font-arabic-misc/package.py
index 8307d58d6e..20ca7a2df0 100644
--- a/var/spack/repos/builtin/packages/font-arabic-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-arabic-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-100dpi/package.py b/var/spack/repos/builtin/packages/font-bh-100dpi/package.py
index 1d488a6cd9..3472783671 100644
--- a/var/spack/repos/builtin/packages/font-bh-100dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-100dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-75dpi/package.py b/var/spack/repos/builtin/packages/font-bh-75dpi/package.py
index 22420dd887..bb5268208c 100644
--- a/var/spack/repos/builtin/packages/font-bh-75dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-75dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-100dpi/package.py b/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-100dpi/package.py
index 173195a557..6fe18e703b 100644
--- a/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-100dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-100dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-75dpi/package.py b/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-75dpi/package.py
index 9066823bc3..f44596b882 100644
--- a/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-75dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-lucidatypewriter-75dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-ttf/package.py b/var/spack/repos/builtin/packages/font-bh-ttf/package.py
index a10b88d355..83ad928c8b 100644
--- a/var/spack/repos/builtin/packages/font-bh-ttf/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-ttf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bh-type1/package.py b/var/spack/repos/builtin/packages/font-bh-type1/package.py
index fffc2e4095..594efb0460 100644
--- a/var/spack/repos/builtin/packages/font-bh-type1/package.py
+++ b/var/spack/repos/builtin/packages/font-bh-type1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bitstream-100dpi/package.py b/var/spack/repos/builtin/packages/font-bitstream-100dpi/package.py
index e8e11ae627..a5722733da 100644
--- a/var/spack/repos/builtin/packages/font-bitstream-100dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bitstream-100dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bitstream-75dpi/package.py b/var/spack/repos/builtin/packages/font-bitstream-75dpi/package.py
index 5dd033964b..8dcf9dfe2c 100644
--- a/var/spack/repos/builtin/packages/font-bitstream-75dpi/package.py
+++ b/var/spack/repos/builtin/packages/font-bitstream-75dpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bitstream-speedo/package.py b/var/spack/repos/builtin/packages/font-bitstream-speedo/package.py
index e746f241df..e2ae5fea3c 100644
--- a/var/spack/repos/builtin/packages/font-bitstream-speedo/package.py
+++ b/var/spack/repos/builtin/packages/font-bitstream-speedo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-bitstream-type1/package.py b/var/spack/repos/builtin/packages/font-bitstream-type1/package.py
index 65289685c3..c6699b7521 100644
--- a/var/spack/repos/builtin/packages/font-bitstream-type1/package.py
+++ b/var/spack/repos/builtin/packages/font-bitstream-type1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-cronyx-cyrillic/package.py b/var/spack/repos/builtin/packages/font-cronyx-cyrillic/package.py
index 07e1330fe6..829f28ee1e 100644
--- a/var/spack/repos/builtin/packages/font-cronyx-cyrillic/package.py
+++ b/var/spack/repos/builtin/packages/font-cronyx-cyrillic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-cursor-misc/package.py b/var/spack/repos/builtin/packages/font-cursor-misc/package.py
index 6fddc015e3..34479c7fc6 100644
--- a/var/spack/repos/builtin/packages/font-cursor-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-cursor-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-daewoo-misc/package.py b/var/spack/repos/builtin/packages/font-daewoo-misc/package.py
index 3dd3b59b14..9c346c3b8b 100644
--- a/var/spack/repos/builtin/packages/font-daewoo-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-daewoo-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-dec-misc/package.py b/var/spack/repos/builtin/packages/font-dec-misc/package.py
index 035ae3eb15..22c52a95da 100644
--- a/var/spack/repos/builtin/packages/font-dec-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-dec-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-ibm-type1/package.py b/var/spack/repos/builtin/packages/font-ibm-type1/package.py
index 34bbe85cfb..a8d06ef092 100644
--- a/var/spack/repos/builtin/packages/font-ibm-type1/package.py
+++ b/var/spack/repos/builtin/packages/font-ibm-type1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-isas-misc/package.py b/var/spack/repos/builtin/packages/font-isas-misc/package.py
index b0575f8ffc..86353f22ce 100644
--- a/var/spack/repos/builtin/packages/font-isas-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-isas-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-jis-misc/package.py b/var/spack/repos/builtin/packages/font-jis-misc/package.py
index a5bee3fe31..18723cc129 100644
--- a/var/spack/repos/builtin/packages/font-jis-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-jis-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-micro-misc/package.py b/var/spack/repos/builtin/packages/font-micro-misc/package.py
index 930a299beb..664cc158a7 100644
--- a/var/spack/repos/builtin/packages/font-micro-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-micro-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-misc-cyrillic/package.py b/var/spack/repos/builtin/packages/font-misc-cyrillic/package.py
index 4d25552732..52d2e0ca33 100644
--- a/var/spack/repos/builtin/packages/font-misc-cyrillic/package.py
+++ b/var/spack/repos/builtin/packages/font-misc-cyrillic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-misc-ethiopic/package.py b/var/spack/repos/builtin/packages/font-misc-ethiopic/package.py
index 6ccdc4e482..ed10f2ecad 100644
--- a/var/spack/repos/builtin/packages/font-misc-ethiopic/package.py
+++ b/var/spack/repos/builtin/packages/font-misc-ethiopic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-misc-meltho/package.py b/var/spack/repos/builtin/packages/font-misc-meltho/package.py
index eda84e2b32..beef19e00a 100644
--- a/var/spack/repos/builtin/packages/font-misc-meltho/package.py
+++ b/var/spack/repos/builtin/packages/font-misc-meltho/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-misc-misc/package.py b/var/spack/repos/builtin/packages/font-misc-misc/package.py
index c960d18b39..b818cd6a84 100644
--- a/var/spack/repos/builtin/packages/font-misc-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-misc-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-mutt-misc/package.py b/var/spack/repos/builtin/packages/font-mutt-misc/package.py
index a5d4cae060..0f303923b0 100644
--- a/var/spack/repos/builtin/packages/font-mutt-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-mutt-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-schumacher-misc/package.py b/var/spack/repos/builtin/packages/font-schumacher-misc/package.py
index 193fa2691e..66e8002877 100644
--- a/var/spack/repos/builtin/packages/font-schumacher-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-schumacher-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-screen-cyrillic/package.py b/var/spack/repos/builtin/packages/font-screen-cyrillic/package.py
index 5914a3c9de..71c2230d1f 100644
--- a/var/spack/repos/builtin/packages/font-screen-cyrillic/package.py
+++ b/var/spack/repos/builtin/packages/font-screen-cyrillic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-sony-misc/package.py b/var/spack/repos/builtin/packages/font-sony-misc/package.py
index 145ee20971..ccea5883ac 100644
--- a/var/spack/repos/builtin/packages/font-sony-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-sony-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-sun-misc/package.py b/var/spack/repos/builtin/packages/font-sun-misc/package.py
index dcf5b9e217..26e0c935ed 100644
--- a/var/spack/repos/builtin/packages/font-sun-misc/package.py
+++ b/var/spack/repos/builtin/packages/font-sun-misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-util/package.py b/var/spack/repos/builtin/packages/font-util/package.py
index 0b310117c6..4f55412457 100644
--- a/var/spack/repos/builtin/packages/font-util/package.py
+++ b/var/spack/repos/builtin/packages/font-util/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class FontUtil(Package):
+class FontUtil(AutotoolsPackage):
"""X.Org font package creation/installation utilities."""
homepage = "http://cgit.freedesktop.org/xorg/font/util"
@@ -35,9 +35,3 @@ class FontUtil(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/font-winitzki-cyrillic/package.py b/var/spack/repos/builtin/packages/font-winitzki-cyrillic/package.py
index 0af366c742..dade47b7d2 100644
--- a/var/spack/repos/builtin/packages/font-winitzki-cyrillic/package.py
+++ b/var/spack/repos/builtin/packages/font-winitzki-cyrillic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/font-xfree86-type1/package.py b/var/spack/repos/builtin/packages/font-xfree86-type1/package.py
index dceac106a9..2a4dfea233 100644
--- a/var/spack/repos/builtin/packages/font-xfree86-type1/package.py
+++ b/var/spack/repos/builtin/packages/font-xfree86-type1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/fontcacheproto/package.py b/var/spack/repos/builtin/packages/fontcacheproto/package.py
index 77feb87573..94e952de52 100644
--- a/var/spack/repos/builtin/packages/fontcacheproto/package.py
+++ b/var/spack/repos/builtin/packages/fontcacheproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Fontcacheproto(Package):
+class Fontcacheproto(AutotoolsPackage):
"""X.org FontcacheProto protocol headers."""
homepage = "http://cgit.freedesktop.org/xorg/proto/fontcacheproto"
url = "https://www.x.org/archive/individual/proto/fontcacheproto-0.1.3.tar.gz"
version('0.1.3', '5a91ab914ffbfbc856e6fcde52e6f3e3')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/fontconfig/package.py b/var/spack/repos/builtin/packages/fontconfig/package.py
index 4f79bbb6fc..8cfd5c0d54 100644
--- a/var/spack/repos/builtin/packages/fontconfig/package.py
+++ b/var/spack/repos/builtin/packages/fontconfig/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,19 +28,32 @@ from spack import *
class Fontconfig(AutotoolsPackage):
"""Fontconfig is a library for configuring/customizing font access"""
homepage = "http://www.freedesktop.org/wiki/Software/fontconfig/"
- url = "http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.11.1.tar.gz"
+ url = "http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.3.tar.gz"
+ version('2.12.3', 'aca0c734c1a38eb3ba12b2447dd90ab0')
+ version('2.12.1', 'ce55e525c37147eee14cc2de6cc09f6c')
version('2.11.1', 'e75e303b4f7756c2b16203a57ac87eba')
depends_on('freetype')
+ depends_on('gperf', type='build', when='@2.12.2:')
depends_on('libxml2')
depends_on('pkg-config', type='build')
- depends_on('font-util', type='build')
+ depends_on('font-util')
def configure_args(self):
font_path = join_path(self.spec['font-util'].prefix, 'share', 'fonts')
- return ["--prefix={0}".format(self.prefix),
- "--enable-libxml2",
- "--disable-docs",
- "--with-default-fonts={0}".format(font_path)]
+ return [
+ '--enable-libxml2',
+ '--disable-docs',
+ '--with-default-fonts={0}'.format(font_path)
+ ]
+
+ @run_after('install')
+ def system_fonts(self):
+ # point configuration file to system-install fonts
+ # gtk applications were failing to display text without this
+ config_file = join_path(self.prefix, 'etc', 'fonts', 'fonts.conf')
+ filter_file('<dir prefix="xdg">fonts</dir>',
+ '<dir prefix="xdg">fonts</dir><dir>/usr/share/fonts</dir>',
+ config_file)
diff --git a/var/spack/repos/builtin/packages/fontsproto/package.py b/var/spack/repos/builtin/packages/fontsproto/package.py
index c3771e18fa..c243f9de97 100644
--- a/var/spack/repos/builtin/packages/fontsproto/package.py
+++ b/var/spack/repos/builtin/packages/fontsproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fontsproto(Package):
+class Fontsproto(AutotoolsPackage):
"""X Fonts Extension."""
homepage = "http://cgit.freedesktop.org/xorg/proto/fontsproto"
@@ -35,8 +35,3 @@ class Fontsproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/fonttosfnt/package.py b/var/spack/repos/builtin/packages/fonttosfnt/package.py
index 016cab1ac8..145e619c54 100644
--- a/var/spack/repos/builtin/packages/fonttosfnt/package.py
+++ b/var/spack/repos/builtin/packages/fonttosfnt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fonttosfnt(Package):
+class Fonttosfnt(AutotoolsPackage):
"""Wrap a bitmap font in a sfnt (TrueType) wrapper."""
homepage = "http://cgit.freedesktop.org/xorg/app/fonttosfnt"
@@ -39,9 +39,3 @@ class Fonttosfnt(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/fpc/package.py b/var/spack/repos/builtin/packages/fpc/package.py
new file mode 100644
index 0000000000..905aae3314
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fpc/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fpc(Package):
+ """Free Pascal is a 32, 64 and 16 bit professional Pascal compiler."""
+
+ homepage = "https://www.freepascal.org/"
+ url = "https://downloads.sourceforge.net/project/freepascal/Linux/3.0.2/fpc-3.0.2.x86_64-linux.tar"
+
+ version('3.0.2', 'e5721c1843cff301c5b46abfee17c890')
+
+ def install(self, spec, prefix):
+ install = Executable('./install.sh')
+
+ # Questions:
+ #
+ # Install prefix:
+ # Install Textmode IDE (Y/n) ?
+ # Install documentation (Y/n) ?
+ # Install demos (Y/n) ?
+
+ install_answers = ['%s\n' % prefix, 'Y\n', 'Y\n', 'n\n']
+
+ install_answers_filename = 'spack-install.in'
+
+ with open(install_answers_filename, 'w') as f:
+ f.writelines(install_answers)
+
+ with open(install_answers_filename, 'r') as f:
+ install(input=f)
diff --git a/var/spack/repos/builtin/packages/freebayes/package.py b/var/spack/repos/builtin/packages/freebayes/package.py
new file mode 100644
index 0000000000..bd5c2b06a3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/freebayes/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Freebayes(MakefilePackage):
+ """Bayesian haplotype-based genetic polymorphism discovery and
+ genotyping."""
+
+ homepage = "https://github.com/ekg/freebayes"
+
+ version('1.1.0', git='https://github.com/ekg/freebayes.git',
+ commit='39e5e4bcb801556141f2da36aba1df5c5c60701f',
+ submodules=True)
+
+ depends_on('cmake', type='build')
+ depends_on('zlib')
+
+ parallel = False
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ b = prefix.bin
+ makefile.filter('cp bin/freebayes bin/bamleftalign /usr/local/bin/',
+ 'cp bin/freebayes bin/bamleftalign {0}'.format(b))
+
+ @run_before('install')
+ def make_prefix_dot_bin(self):
+ mkdir(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/freetype/package.py b/var/spack/repos/builtin/packages/freetype/package.py
index 4446ba5666..1ad65a9750 100644
--- a/var/spack/repos/builtin/packages/freetype/package.py
+++ b/var/spack/repos/builtin/packages/freetype/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,14 +32,15 @@ class Freetype(AutotoolsPackage):
of most vector and bitmap font formats."""
homepage = "https://www.freetype.org/index.html"
- url = "http://download.savannah.gnu.org/releases/freetype/freetype-2.7.tar.gz"
+ url = "http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.gz"
+ version('2.7.1', '78701bee8d249578d83bb9a2f3aa3616')
version('2.7', '337139e5c7c5bd645fe130608e0fa8b5')
version('2.5.3', 'cafe9f210e45360279c730d27bf071e9')
depends_on('libpng')
depends_on('bzip2')
- depends_on('pkg-config@0.9.0:', type='build')
-
+ depends_on('pkg-config@0.24:', type='build')
+
def configure_args(self):
return ['--with-harfbuzz=no']
diff --git a/var/spack/repos/builtin/packages/fseq/package.py b/var/spack/repos/builtin/packages/fseq/package.py
new file mode 100644
index 0000000000..037aa4f648
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fseq/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Fseq(Package):
+ """F-Seq: A Feature Density Estimator for High-Throughput Sequence Tags"""
+
+ homepage = "http://fureylab.web.unc.edu/software/fseq/"
+ url = "http://fureylab.med.unc.edu/fseq/fseq_1.84.tgz"
+
+ version('1.84', 'f9124ad0f45c60f3a7eb74dde8c945b9')
+
+ depends_on('java', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('lib', prefix.lib)
+ install('mapviewToBed.pl', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/fsl/package.py b/var/spack/repos/builtin/packages/fsl/package.py
new file mode 100644
index 0000000000..2191be1ce3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/fsl/package.py
@@ -0,0 +1,102 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from spack.environment import EnvironmentModifications
+import os
+import distutils.dir_util
+
+
+class Fsl(Package):
+ """FSL is a comprehensive library of analysis tools for FMRI, MRI and DTI
+ brain imaging data.
+
+ Note: A manual download is required for FSL.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://fsl.fmrib.ox.ac.uk"
+ url = "file://{0}/fsl-5.0.10-sources.tar.gz".format(os.getcwd())
+
+ version('5.0.10', '64823172a08aad679833240ba64c8e30')
+
+ depends_on('python', type=('build', 'run'))
+ depends_on('expat')
+ depends_on('libx11')
+ depends_on('mesa-glu')
+ depends_on('zlib')
+ depends_on('libpng')
+ depends_on('boost')
+ depends_on('sqlite')
+
+ conflicts('%gcc@6:', when='@5.0.10')
+
+ def patch(self):
+ # Uncomment lines in source file to allow building from source
+ with working_dir(join_path(self.stage.source_path, 'etc', 'fslconf')):
+ sourced = FileFilter('fsl.sh')
+ sourced.filter('#FSLCONFDIR', 'FSLCONFDIR')
+ sourced.filter('#FSLMACHTYPE', 'FSLMACHTYPE')
+ # Fix error in build script
+ buildscript = FileFilter('build')
+ buildscript.filter('mist-clean', 'mist')
+
+ def install(self, spec, prefix):
+ build = Executable('./build')
+ build()
+
+ distutils.dir_util.copy_tree(".", prefix)
+
+ def setup_environment(self, spack_env, run_env):
+ if not self.stage.source_path:
+ self.stage.fetch()
+ self.stage.expand_archive()
+
+ spack_env.set('FSLDIR', self.stage.source_path)
+
+ # Here, run-time environment variables are being set manually.
+ # Normally these would be added to the modulefile at build-time
+ # by sourcing fsl.sh, but incorrect paths were being set, pointing to
+ # the staging directory rather than the install directory.
+ run_env.set('FSLDIR', self.prefix)
+ run_env.set('FSLOUTPUTTYPE', 'NIFTI_GZ')
+ run_env.set('FSLMULTIFILEQUIT', 'TRUE')
+ run_env.set('FSLTCLSH', self.prefix.bin.fsltclsh)
+ run_env.set('FSLWISH', self.prefix.bin.fslwish)
+ run_env.set('FSLLOCKDIR', '')
+ run_env.set('FSLMACHINELIST', '')
+ run_env.set('FSLREMOTECALL', '')
+ run_env.set('FSLGECUDAQ', 'cuda.q')
+
+ run_env.prepend_path('PATH', self.prefix)
+
+ # Below is for sourcing purposes during building
+ fslsetup = join_path(self.stage.source_path, 'etc', 'fslconf',
+ 'fsl.sh')
+
+ if os.path.isfile(fslsetup):
+ spack_env.extend(EnvironmentModifications.from_sourcing_file(
+ fslsetup))
diff --git a/var/spack/repos/builtin/packages/fslsfonts/package.py b/var/spack/repos/builtin/packages/fslsfonts/package.py
index 6e46bd6b5a..ce5b04f0ee 100644
--- a/var/spack/repos/builtin/packages/fslsfonts/package.py
+++ b/var/spack/repos/builtin/packages/fslsfonts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fslsfonts(Package):
+class Fslsfonts(AutotoolsPackage):
"""fslsfonts produces a list of fonts served by an X font server."""
homepage = "http://cgit.freedesktop.org/xorg/app/fslsfonts"
@@ -38,9 +38,3 @@ class Fslsfonts(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/fstobdf/package.py b/var/spack/repos/builtin/packages/fstobdf/package.py
index 6358e33d2a..dd51473d41 100644
--- a/var/spack/repos/builtin/packages/fstobdf/package.py
+++ b/var/spack/repos/builtin/packages/fstobdf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Fstobdf(Package):
+class Fstobdf(AutotoolsPackage):
"""The fstobdf program reads a font from a font server and prints a BDF
file on the standard output that may be used to recreate the font.
This is useful in testing servers, debugging font metrics, and
@@ -42,9 +42,3 @@ class Fstobdf(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/funhpc/package.py b/var/spack/repos/builtin/packages/funhpc/package.py
new file mode 100644
index 0000000000..26863ae4f4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/funhpc/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Funhpc(CMakePackage):
+ """FunHPC: Functional HPC Programming"""
+ homepage = "https://github.com/eschnett/FunHPC.cxx"
+ url = "https://github.com/eschnett/FunHPC.cxx/archive/version/0.1.0.tar.gz"
+
+ version('1.3.0', '71a1e57c4d882cdf001f29122edf7fc6')
+ version('1.2.0', 'ba2bbeea3091e999b6b85eaeb1b67a83')
+ version('1.1.1', '7b9ef638b02fffe35b75517e8eeff580')
+ version('1.1.0', '897bd968c42cd4f14f86fcf67da70444')
+ version('1.0.0', 'f34e71ccd5548b42672e692c913ba5ee')
+ version('0.1.1', 'f0248710f2de88ed2a595ad40d99997c')
+ version('0.1.0', '00f7dabc08ed1ab77858785ce0809f50')
+ version('develop',
+ git='https://github.com/eschnett/FunHPC.cxx', branch='master')
+
+ variant('pic', default=True,
+ description="Produce position-independent code")
+
+ depends_on('cereal')
+ depends_on('googletest')
+ depends_on('hwloc')
+ depends_on('jemalloc')
+ depends_on('mpi')
+ depends_on('qthreads')
+
+ def cmake_args(self):
+ spec = self.spec
+ options = ["-DGTEST_ROOT=%s" % spec['googletest'].prefix]
+ if '+pic' in spec:
+ options += ["-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true"]
+ return options
+
+ def check(self):
+ with working_dir(self.build_directory):
+ make("test", "CTEST_OUTPUT_ON_FAILURE=1")
diff --git a/var/spack/repos/builtin/packages/gapcloser/package.py b/var/spack/repos/builtin/packages/gapcloser/package.py
new file mode 100644
index 0000000000..b59b46af00
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gapcloser/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gapcloser(Package):
+ """The GapCloser is designed to close the gaps emerging during the
+ scaffolding process"""
+
+ homepage = "https://sourceforge.net/projects/soapdenovo2/files/GapCloser/"
+ url = "https://downloads.sourceforge.net/project/soapdenovo2/GapCloser/bin/r6/GapCloser-bin-v1.12-r6.tgz"
+
+ version('1.12-r6', '42b4e4256bdc9f9f31a391a359256209')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('GapCloser', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/gapfiller/package.py b/var/spack/repos/builtin/packages/gapfiller/package.py
new file mode 100644
index 0000000000..43e6eeaac0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gapfiller/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Gapfiller(Package):
+ """GapFiller is a stand-alone program for closing gaps within
+ pre-assembled scaffolds.
+
+ Note: A manual download is required for GapFiller.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://www.baseclear.com/genomics/bioinformatics/basetools/gapfiller"
+
+ version('1.10', '54d5e2ada131a1305a66e41c0d380382')
+
+ def url_for_version(self, version):
+ return "file://{0}/39GapFiller_v{1}_linux-x86_64.tar.gz".format(
+ os.getcwd(), version.dashed)
+
+ depends_on('perl', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ install_tree('bowtie', prefix.bowtie)
+ install_tree('bwa', prefix.bwa)
+ install('GapFiller.pl', prefix)
diff --git a/var/spack/repos/builtin/packages/gasnet/package.py b/var/spack/repos/builtin/packages/gasnet/package.py
index 12ecd9fd6f..6b8a498671 100644
--- a/var/spack/repos/builtin/packages/gasnet/package.py
+++ b/var/spack/repos/builtin/packages/gasnet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gasnet(Package):
+class Gasnet(AutotoolsPackage):
"""GASNet is a language-independent, low-level networking layer
that provides network-independent, high-performance communication
primitives tailored for implementing parallel global address space
@@ -35,26 +35,49 @@ class Gasnet(Package):
homepage = "http://gasnet.lbl.gov"
url = "http://gasnet.lbl.gov/GASNet-1.24.0.tar.gz"
+ version('1.30.0', '2ddb1d8397d62acfd389095ca8da72f6')
+ version('1.28.2', '6ca0463dc2430570e40646c4d1e97b36')
+ version('1.28.0', 'b44446d951d3d8954aa1570e3556ba61')
version('1.24.0', 'c8afdf48381e8b5a7340bdb32ca0f41a')
- def install(self, spec, prefix):
- # TODO: don't use paths with @ in them.
- change_sed_delimiter('@', ';', 'configure')
+ variant('ibv', default=False, description="Support InfiniBand")
+ variant('mpi', default=True, description="Support MPI")
+ variant('aligned-segments', default=False,
+ description="Requirement to achieve aligned VM segments")
+ variant('pshm', default=True,
+ description="Support inter-process shared memory support")
+ variant('segment-mmap-max', default='16GB',
+ description="Upper bound for mmap-based GASNet segments")
- configure(
- "--prefix=%s" % prefix,
+ conflicts('+aligned-segments', when='+pshm')
+
+ depends_on('mpi', when='+mpi')
+
+ def configure_args(self):
+ args = [
# TODO: factor IB suport out into architecture description.
- "--enable-ibv",
- "--enable-udp",
- "--disable-mpi",
+ "--enable-ibv" if '+ibv' in self.spec else '--disable-ibv',
"--enable-par",
- "--enable-mpi-compat",
+ "--enable-smp",
+ "--enable-udp",
+ "--enable-smp-safe",
"--enable-segment-fast",
- "--disable-aligned-segments",
- # TODO: make option so Legion can request builds with/without this.
- # See the Legion webpage for details on when to/not to use.
- "--disable-pshm",
- "--with-segment-mmap-max=64MB")
-
- make()
- make("install")
+ "--enable-pshm" if '+pshm' in self.spec else "--disable-pshm",
+ "--with-segment-mmap-max={0}".format(
+ self.spec.variants['segment-mmap-max'].value),
+ # for consumers with shared libs
+ "CC=%s %s" % (spack_cc, self.compiler.pic_flag),
+ "CXX=%s %s" % (spack_cxx, self.compiler.pic_flag),
+ ]
+
+ if '+aligned-segments' in self.spec:
+ args.append('--enable-aligned-segments')
+ else:
+ args.append('--disable-aligned-segments')
+
+ if '+mpi' in self.spec:
+ args.extend(['--enable-mpi', '--enable-mpi-compat', "MPI_CC=%s %s"
+ % (self.spec['mpi'].mpicc, self.compiler.pic_flag)])
+ else:
+ args.extend(['--disable-mpi', '--disable-mpi-compat'])
+ return args
diff --git a/var/spack/repos/builtin/packages/gaussian/package.py b/var/spack/repos/builtin/packages/gaussian/package.py
new file mode 100644
index 0000000000..ef8c599b94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gaussian/package.py
@@ -0,0 +1,71 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+import shutil
+
+
+class Gaussian(Package):
+ """Gaussian is a computer program for computational chemistry"""
+
+ homepage = "http://www.gaussian.com/"
+ url = "file://{0}/g09.tgz".format(os.getcwd())
+
+ version('09', '7d4c95b535e68e48af183920df427e4e')
+
+ def install(self, spec, prefix):
+ shutil.copytree(os.getcwd(), prefix.bin)
+ patch_install_files = ['flc',
+ 'linda8.2/opteron-linux/bin/flc',
+ 'linda8.2/opteron-linux/bin/LindaLauncher',
+ 'linda8.2/opteron-linux/bin/ntsnet',
+ 'linda8.2/opteron-linux/bin/pmbuild',
+ 'linda8.2/opteron-linux/bin/vntsnet',
+ 'ntsnet'
+ ]
+ for filename in patch_install_files:
+ if os.path.isfile(filename):
+ filter_file('/mf/frisch/g09', prefix.bin, join_path(prefix.bin,
+ filename), string='True')
+ patch_install_files = ['linda8.2/opteron-linux/bin/ntsnet',
+ 'linda8.2/opteron-linux/bin/vntsnet',
+ ]
+ for filename in patch_install_files:
+ if os.path.isfile(filename):
+ filter_file('/usr/bin/linda', prefix.bin, join_path(prefix.bin,
+ filename), string='True')
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('g09root', self.prefix)
+ run_env.set('GAUSSIANHOME', self.prefix)
+ run_env.set('GAUSS_EXEDIR', self.prefix.bin)
+ run_env.set('G09_BASIS', join_path(self.prefix.bin, 'basis'))
+ run_env.set('GAUSS_LEXEDIR', join_path(self.prefix.bin,
+ 'linda-exe'))
+ run_env.set('GAUSS_ARCHDIR', join_path(self.prefix.bin, 'arch'))
+ run_env.set('GAUSS_BSDDIR', join_path(self.prefix.bin, 'bsd'))
+ run_env.prepend_path('LD_LIBRARY_PATH', join_path(self.prefix.bin,
+ 'linda8.2/opteron-linux/lib'))
+ run_env.prepend_path('LD_LIBRARY_PATH', self.prefix.bin)
diff --git a/var/spack/repos/builtin/packages/gawk/package.py b/var/spack/repos/builtin/packages/gawk/package.py
index fbd0ae53bb..8f9f205ff6 100644
--- a/var/spack/repos/builtin/packages/gawk/package.py
+++ b/var/spack/repos/builtin/packages/gawk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -43,3 +43,13 @@ class Gawk(AutotoolsPackage):
url = "http://ftp.gnu.org/gnu/gawk/gawk-4.1.4.tar.xz"
version('4.1.4', '4e7dbc81163e60fd4f0b52496e7542c9')
+
+ depends_on('gettext')
+ depends_on('libsigsegv')
+ depends_on('readline')
+ depends_on('mpfr')
+ depends_on('gmp')
+
+ provides('awk')
+
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/gblocks/package.py b/var/spack/repos/builtin/packages/gblocks/package.py
new file mode 100644
index 0000000000..7e6401bc6d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gblocks/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gblocks(Package):
+ """Gblocks is a computer program written in ANSI C language that eliminates
+ poorly aligned positions and divergent regions of an alignment of DNA or
+ protein sequences"""
+
+ homepage = "http://molevol.cmima.csic.es/castresana/Gblocks.html"
+ url = "http://molevol.cmima.csic.es/castresana/Gblocks/Gblocks_Linux64_0.91b.tar.Z"
+
+ version('0.91b', 'c2c752ae4cbfda0b8bf09e6662585252')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('Gblocks', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/gcc/darwin/apfs.patch b/var/spack/repos/builtin/packages/gcc/darwin/apfs.patch
new file mode 100644
index 0000000000..d1f9d56667
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gcc/darwin/apfs.patch
@@ -0,0 +1,12 @@
+diff -uNr gcc-7.2.0.orig/libstdc++-v3/include/Makefile.in gcc-7.2.0/libstdc++-v3/include/Makefile.in
+--- gcc-7.2.0.orig/libstdc++-v3/include/Makefile.in 2017-07-25 14:05:07.000000000 -0400
++++ gcc-7.2.0/libstdc++-v3/include/Makefile.in 2017-09-02 12:22:08.000000000 -0400
+@@ -1764,6 +1764,8 @@
+ @GLIBCXX_HOSTED_TRUE@install-data-local: install-headers
+ @GLIBCXX_HOSTED_FALSE@install-data-local: install-freestanding-headers
+
++.NOTPARALLEL: install-headers
++
+ # This is a subset of the full install-headers rule. We only need <ciso646>,
+ # <cstddef>, <cfloat>, <limits>, <climits>, <cstdint>, <cstdlib>, <new>,
+ # <typeinfo>, <exception>, <initializer_list>, <cstdalign>, <cstdarg>,
diff --git a/var/spack/repos/builtin/packages/gcc/darwin/gcc-6.1.0-jit.patch b/var/spack/repos/builtin/packages/gcc/darwin/gcc-6.1.0-jit.patch
new file mode 100644
index 0000000000..8cc4405de4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gcc/darwin/gcc-6.1.0-jit.patch
@@ -0,0 +1,21 @@
+# Fix for libgccjit.so linkage on Darwin
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64089
+# https://github.com/Homebrew/homebrew-core/issues/1872#issuecomment-225625332
+# https://github.com/Homebrew/homebrew-core/issues/1872#issuecomment-225626490
+
+# Stolen from Homebrew:
+# https://raw.githubusercontent.com/Homebrew/formula-patches/e9e0ee09389a54cc4c8fe1c24ebca3cd765ed0ba/gcc/6.1.0-jit.patch
+diff --git a/gcc/jit/Make-lang.in b/gcc/jit/Make-lang.in
+index 44d0750..4df2a9c 100644
+--- a/gcc/jit/Make-lang.in
++++ b/gcc/jit/Make-lang.in
+@@ -85,8 +85,7 @@ $(LIBGCCJIT_FILENAME): $(jit_OBJS) \
+ $(jit_OBJS) libbackend.a libcommon-target.a libcommon.a \
+ $(CPPLIB) $(LIBDECNUMBER) $(LIBS) $(BACKENDLIBS) \
+ $(EXTRA_GCC_OBJS) \
+- -Wl,--version-script=$(srcdir)/jit/libgccjit.map \
+- -Wl,-soname,$(LIBGCCJIT_SONAME)
++ -Wl,-install_name,$(LIBGCCJIT_SONAME)
+
+ $(LIBGCCJIT_SONAME_SYMLINK): $(LIBGCCJIT_FILENAME)
+ ln -sf $(LIBGCCJIT_FILENAME) $(LIBGCCJIT_SONAME_SYMLINK)
diff --git a/var/spack/repos/builtin/packages/gcc/darwin/gcc-7.1.0-headerpad.patch b/var/spack/repos/builtin/packages/gcc/darwin/gcc-7.1.0-headerpad.patch
new file mode 100644
index 0000000000..11ca2d0e4d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gcc/darwin/gcc-7.1.0-headerpad.patch
@@ -0,0 +1,19 @@
+# Use -headerpad_max_install_names in the build,
+# otherwise lto1 load commands cannot be edited on El Capitan
+
+# Stolen from Homebrew:
+# https://raw.githubusercontent.com/Homebrew/formula-patches/32cf103/gcc/7.1.0-headerpad.patch
+
+diff --git a/config/mh-darwin b/config/mh-darwin
+index 148b730..c2318b5 100644
+--- a/config/mh-darwin
++++ b/config/mh-darwin
+@@ -16,7 +16,7 @@ DARWIN_GCC_MDYNAMIC_NO_PIC := \
+ DARWIN_NO_PIE := `case ${host} in *-*-darwin[1][1-9]*) echo -Wl,-no_pie ;; esac;`
+
+ BOOT_CFLAGS += $(DARWIN_MDYNAMIC_NO_PIC)
+-BOOT_LDFLAGS += $(DARWIN_NO_PIE)
++BOOT_LDFLAGS += $(DARWIN_NO_PIE) -Wl,-headerpad_max_install_names
+
+ # Similarly, for cross-compilation.
+ STAGE1_CFLAGS += $(DARWIN_MDYNAMIC_NO_PIC)
diff --git a/var/spack/repos/builtin/packages/gcc/package.py b/var/spack/repos/builtin/packages/gcc/package.py
index 31da068d72..df7060e742 100644
--- a/var/spack/repos/builtin/packages/gcc/package.py
+++ b/var/spack/repos/builtin/packages/gcc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,25 +23,31 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from spack.operating_systems.mac_os import macOS_version
+from llnl.util import tty
-from contextlib import closing
-from glob import glob
+import glob
+import os
+import shutil
import sys
-from os.path import isfile
-class Gcc(Package):
- """The GNU Compiler Collection includes front ends for C, C++,
- Objective-C, Fortran, and Java."""
- homepage = "https://gcc.gnu.org"
+class Gcc(AutotoolsPackage):
+ """The GNU Compiler Collection includes front ends for C, C++, Objective-C,
+ Fortran, Ada, and Go, as well as libraries for these languages."""
- url = "http://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2"
+ homepage = 'https://gcc.gnu.org'
+ url = 'http://ftp.gnu.org/gnu/gcc/gcc-7.1.0/gcc-7.1.0.tar.bz2'
list_url = 'http://ftp.gnu.org/gnu/gcc/'
- list_depth = 2
+ list_depth = 1
+ version('7.2.0', 'ff370482573133a7fcdd96cd2f552292')
+ version('7.1.0', '6bf56a2bca9dac9dbbf8e8d1036964a8')
+ version('6.4.0', '11ba51a0cfb8471927f387c8895fe232')
version('6.3.0', '677a7623c7ef6ab99881bc4e048debb6')
version('6.2.0', '9768625159663b300ae4de2f4745fcc4')
version('6.1.0', '8fb6cb98b8459f5863328380fbf06bd1')
+ version('5.5.0', '0f70424213b4a1113c04ba66ddda0c1f')
version('5.4.0', '4c626ac2a83ef30dfb9260e6f59c2b30')
version('5.3.0', 'c9616fd448f980259c31de613e575719')
version('5.2.0', 'a51bcfeb3da7dd4c623e27207ed43467')
@@ -56,122 +62,231 @@ class Gcc(Package):
version('4.6.4', 'b407a3d1480c11667f293bfb1f17d1a4')
version('4.5.4', '27e459c2566b8209ab064570e1b378f7')
+ # Builds all default languages by default.
+ # Ada, Go, Jit, and Objective-C++ are not default languages.
+ # In that respect, the name 'all' is rather misleading.
+ variant('languages',
+ default='all',
+ values=('all', 'ada', 'brig', 'c', 'c++', 'fortran',
+ 'go', 'java', 'jit', 'lto', 'objc', 'obj-c++'),
+ multi=True,
+ description='Compilers and runtime libraries to build')
variant('binutils',
- default=sys.platform != 'darwin',
- description="Build via binutils")
- variant('gold',
- default=sys.platform != 'darwin',
- description="Build the gold linker plugin for ld-based LTO")
+ default=False,
+ description='Build via binutils')
variant('piclibs',
default=False,
- description="Build PIC versions of libgfortran.a and libstdc++.a")
+ description='Build PIC versions of libgfortran.a and libstdc++.a')
+ variant('strip',
+ default=False,
+ description='Strip executables to reduce installation size')
- depends_on("mpfr")
- depends_on("gmp")
- depends_on("mpc", when='@4.5:')
- depends_on("isl", when='@5.0:')
- depends_on("binutils~libiberty", when='+binutils ~gold')
- depends_on("binutils~libiberty+gold", when='+binutils +gold')
+ # https://gcc.gnu.org/install/prerequisites.html
+ depends_on('gmp@4.3.2:')
+ depends_on('mpfr@2.4.2:')
+ depends_on('mpc@0.8.1:', when='@4.5:')
+ depends_on('isl@0.14', when='@5:5.9')
+ depends_on('isl@0.15:', when='@6:')
+ depends_on('zlib', when='@6:')
+ depends_on('gnat', when='languages=ada')
+ depends_on('binutils~libiberty', when='+binutils')
+ depends_on('zip', type='build', when='languages=java')
+ depends_on('zip', type='build', when='@:6 languages=all')
# TODO: integrate these libraries.
- # depends_on("ppl")
- # depends_on("cloog")
+ # depends_on('ppl')
+ # depends_on('cloog')
+
+ # TODO: Add a 'test' deptype
+ # https://github.com/spack/spack/issues/1279
+ # depends_on('dejagnu@1.4.4', type='test')
+ # depends_on('expect', type='test')
+ # depends_on('tcl', type='test')
+ # depends_on('autogen@5.5.4:', type='test')
+ # depends_on('guile@1.4.1:', type='test')
+
+ # See https://golang.org/doc/install/gccgo#Releases
+ provides('golang', when='languages=go @4.6:')
+ provides('golang@:1', when='languages=go @4.7.1:')
+ provides('golang@:1.1', when='languages=go @4.8:')
+ provides('golang@:1.1.2', when='languages=go @4.8.2:')
+ provides('golang@:1.2', when='languages=go @4.9:')
+ provides('golang@:1.4', when='languages=go @5:')
+ provides('golang@:1.6.1', when='languages=go @6:')
+ provides('golang@:1.8', when='languages=go @7:')
+
+ # For a list of valid languages for a specific release,
+ # run the following command in the GCC source directory:
+ # $ grep ^language= gcc/*/config-lang.in
+ # See https://gcc.gnu.org/install/configure.html
+
+ # Support for processing BRIG 1.0 files was added in GCC 7
+ # BRIG is a binary format for HSAIL:
+ # (Heterogeneous System Architecture Intermediate Language).
+ # See https://gcc.gnu.org/gcc-7/changes.html
+ conflicts('languages=brig', when='@:6')
+
+ # BRIG does not seem to be supported on macOS
+ conflicts('languages=brig', when='platform=darwin')
+
+ # GCC 4.8 added a 'c' language. I'm sure C was always built,
+ # but this is the first version that accepts 'c' as a valid language.
+ conflicts('languages=c', when='@:4.7')
+
+ # GCC 4.6 added support for the Go programming language.
+ # See https://gcc.gnu.org/gcc-4.6/changes.html
+ conflicts('languages=go', when='@:4.5')
+
+ # Go is not supported on macOS
+ conflicts('languages=go', when='platform=darwin')
+
+ # The GCC Java frontend and associated libjava runtime library
+ # have been removed from GCC as of GCC 7.
+ # See https://gcc.gnu.org/gcc-7/changes.html
+ conflicts('languages=java', when='@7:')
+
+ # GCC 5 added the ability to build GCC as a Just-In-Time compiler.
+ # See https://gcc.gnu.org/gcc-5/changes.html
+ conflicts('languages=jit', when='@:4')
+
if sys.platform == 'darwin':
- patch('darwin/gcc-4.9.patch1', when='@4.9.3')
- patch('darwin/gcc-4.9.patch2', when='@4.9.3')
- else:
- provides('golang', when='@4.7.1:')
+ # Fix parallel build on APFS filesystem
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
+ if macOS_version() >= Version('10.13'):
+ patch('darwin/apfs.patch', when='@7.2.0')
+ patch('darwin/gcc-7.1.0-headerpad.patch', when='@5:')
+ patch('darwin/gcc-6.1.0-jit.patch', when='@5:')
+ patch('darwin/gcc-4.9.patch1', when='@4.9.0:4.9.3')
+ patch('darwin/gcc-4.9.patch2', when='@4.9.0:4.9.3')
patch('piclibs.patch', when='+piclibs')
patch('gcc-backport.patch', when='@4.7:4.9.2,5:5.3')
- def install(self, spec, prefix):
- # libjava/configure needs a minor fix to install into spack paths.
- filter_file(r"'@.*@'", "'@[[:alnum:]]*@'", 'libjava/configure',
- string=True)
+ build_directory = 'spack-build'
+
+ def url_for_version(self, version):
+ url = 'http://ftp.gnu.org/gnu/gcc/gcc-{0}/gcc-{0}.tar.{1}'
+ suffix = 'xz'
+
+ if version < Version('6.4.0') or version == Version('7.1.0'):
+ suffix = 'bz2'
- enabled_languages = set(('c', 'c++', 'fortran', 'java', 'objc'))
+ if version == Version('5.5.0'):
+ suffix = 'xz'
- if spec.satisfies("@4.7.1:") and sys.platform != 'darwin' and \
- not (spec.satisfies('@:4.9.3') and 'ppc64le' in spec.architecture):
- enabled_languages.add('go')
+ return url.format(version, suffix)
+
+ def patch(self):
+ spec = self.spec
+ prefix = self.spec.prefix
# Fix a standard header file for OS X Yosemite that
# is GCC incompatible by replacing non-GCC compliant macros
if 'yosemite' in spec.architecture:
- if isfile(r'/usr/include/dispatch/object.h'):
+ if os.path.isfile('/usr/include/dispatch/object.h'):
new_dispatch_dir = join_path(prefix, 'include', 'dispatch')
mkdirp(new_dispatch_dir)
- cp = which('cp')
new_header = join_path(new_dispatch_dir, 'object.h')
- cp(r'/usr/include/dispatch/object.h', new_header)
+ shutil.copyfile('/usr/include/dispatch/object.h', new_header)
filter_file(r'typedef void \(\^dispatch_block_t\)\(void\)',
'typedef void* dispatch_block_t',
new_header)
+ # Use installed libz
+ if self.version >= Version('6'):
+ filter_file('@zlibdir@',
+ '-L{0}'.format(spec['zlib'].prefix.lib),
+ 'gcc/Makefile.in')
+ filter_file('@zlibinc@',
+ '-I{0}'.format(spec['zlib'].prefix.include),
+ 'gcc/Makefile.in')
+
+ def configure_args(self):
+ spec = self.spec
+
# Generic options to compile GCC
- options = ["--prefix=%s" % prefix, "--libdir=%s/lib64" % prefix,
- "--disable-multilib",
- "--enable-languages=" + ','.join(enabled_languages),
- "--with-mpc=%s" % spec['mpc'].prefix, "--with-mpfr=%s" %
- spec['mpfr'].prefix, "--with-gmp=%s" % spec['gmp'].prefix,
- "--enable-lto", "--with-quad"]
+ options = [
+ '--disable-multilib',
+ '--enable-languages={0}'.format(
+ ','.join(spec.variants['languages'].value)),
+ '--with-mpfr={0}'.format(spec['mpfr'].prefix),
+ '--with-gmp={0}'.format(spec['gmp'].prefix),
+ '--enable-lto',
+ '--with-quad'
+ ]
+
+ # Use installed libz
+ if self.version >= Version('6'):
+ options.append('--with-system-zlib')
+
+ # Enabling language "jit" requires --enable-host-shared.
+ if 'languages=jit' in spec:
+ options.append('--enable-host-shared')
+
# Binutils
if spec.satisfies('+binutils'):
- static_bootstrap_flags = "-static-libstdc++ -static-libgcc"
+ static_bootstrap_flags = '-static-libstdc++ -static-libgcc'
binutils_options = [
- "--with-sysroot=/", "--with-stage1-ldflags=%s %s" %
- (self.rpath_args, static_bootstrap_flags),
- "--with-boot-ldflags=%s %s" %
- (self.rpath_args, static_bootstrap_flags), "--with-gnu-ld",
- "--with-ld=%s/bin/ld" % spec['binutils'].prefix,
- "--with-gnu-as",
- "--with-as=%s/bin/as" % spec['binutils'].prefix
+ '--with-sysroot=/',
+ '--with-stage1-ldflags={0} {1}'.format(
+ self.rpath_args, static_bootstrap_flags),
+ '--with-boot-ldflags={0} {1}'.format(
+ self.rpath_args, static_bootstrap_flags),
+ '--with-gnu-ld',
+ '--with-ld={0}/ld'.format(spec['binutils'].prefix.bin),
+ '--with-gnu-as',
+ '--with-as={0}/as'.format(spec['binutils'].prefix.bin),
]
options.extend(binutils_options)
- # Isl
+
+ # MPC
+ if 'mpc' in spec:
+ options.append('--with-mpc={0}'.format(spec['mpc'].prefix))
+
+ # ISL
if 'isl' in spec:
- isl_options = ["--with-isl=%s" % spec['isl'].prefix]
- options.extend(isl_options)
+ options.append('--with-isl={0}'.format(spec['isl'].prefix))
+ # macOS
if sys.platform == 'darwin':
- darwin_options = ["--with-build-config=bootstrap-debug"]
- options.extend(darwin_options)
-
- build_dir = join_path(self.stage.path, 'spack-build')
- configure = Executable(join_path(self.stage.source_path, 'configure'))
- with working_dir(build_dir, create=True):
- # Rest of install is straightforward.
- configure(*options)
- if sys.platform == 'darwin':
- make("bootstrap")
- else:
- make()
- make("install")
-
- self.write_rpath_specs()
+ options.append('--with-build-config=bootstrap-debug')
+
+ return options
+
+ @property
+ def build_targets(self):
+ if sys.platform == 'darwin':
+ return ['bootstrap']
+ return []
+
+ @property
+ def install_targets(self):
+ if '+strip' in self.spec:
+ return ['install-strip']
+ return ['install']
@property
def spec_dir(self):
- # e.g. lib64/gcc/x86_64-unknown-linux-gnu/4.9.2
- spec_dir = glob("%s/lib64/gcc/*/*" % self.prefix)
+ # e.g. lib/gcc/x86_64-unknown-linux-gnu/4.9.2
+ spec_dir = glob.glob('{0}/gcc/*/*'.format(self.prefix.lib))
return spec_dir[0] if spec_dir else None
+ @run_after('install')
def write_rpath_specs(self):
"""Generate a spec file so the linker adds a rpath to the libs
the compiler used to build the executable."""
if not self.spec_dir:
- tty.warn("Could not install specs for %s." %
- self.spec.format('$_$@'))
+ tty.warn('Could not install specs for {0}.'.format(
+ self.spec.format('$_$@')))
return
- gcc = Executable(join_path(self.prefix.bin, 'gcc'))
- lines = gcc('-dumpspecs', output=str).strip().split("\n")
+ gcc = self.spec['gcc'].command
+ lines = gcc('-dumpspecs', output=str).strip().split('\n')
specs_file = join_path(self.spec_dir, 'specs')
- with closing(open(specs_file, 'w')) as out:
+ with open(specs_file, 'w') as out:
for line in lines:
- out.write(line + "\n")
- if line.startswith("*link:"):
- out.write("-rpath %s/lib:%s/lib64 \\\n" %
- (self.prefix, self.prefix))
+ out.write(line + '\n')
+ if line.startswith('*link:'):
+ out.write('-rpath {0}:{1} '.format(
+ self.prefix.lib, self.prefix.lib64))
set_install_permissions(specs_file)
diff --git a/var/spack/repos/builtin/packages/gccmakedep/package.py b/var/spack/repos/builtin/packages/gccmakedep/package.py
index ed2530d89e..a8ece20f43 100644
--- a/var/spack/repos/builtin/packages/gccmakedep/package.py
+++ b/var/spack/repos/builtin/packages/gccmakedep/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gccmakedep(Package):
+class Gccmakedep(AutotoolsPackage):
"""X.org gccmakedep utilities."""
homepage = "https://cgit.freedesktop.org/xorg/util/gccmakedep/"
@@ -34,9 +34,3 @@ class Gccmakedep(Package):
version('1.0.3', '127ddb6131eb4a56fdf6644a63ade788')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/gccxml/darwin-gcc.patch b/var/spack/repos/builtin/packages/gccxml/darwin-gcc.patch
new file mode 100644
index 0000000000..55910cea1a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gccxml/darwin-gcc.patch
@@ -0,0 +1,11 @@
+--- gccxml/GCC/CMakeLists.txt 2017-04-05 11:25:32.000000000 +0200
++++ gccxml/GCC/CMakeLists.txt 2017-04-05 11:25:47.000000000 +0200
+@@ -19,7 +19,7 @@ SET(LIBRARY_OUTPUT_PATH "${GCC_BINARY_DI
+ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_ANSI_CFLAGS}")
+
+ IF(APPLE AND CMAKE_C_COMPILER_ID MATCHES "^(GNU|Clang)$")
+- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -no-cpp-precomp")
++ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+ ENDIF()
+
+ IF(CMAKE_C_COMPILER_ID MATCHES "^(Clang)$")
diff --git a/var/spack/repos/builtin/packages/gccxml/package.py b/var/spack/repos/builtin/packages/gccxml/package.py
new file mode 100644
index 0000000000..d7f75f8631
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gccxml/package.py
@@ -0,0 +1,36 @@
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gccxml(CMakePackage):
+ """gccxml dumps an XML description of C++ source code using an extension of
+ the GCC C++ compiler."""
+
+ homepage = "http://gccxml.github.io"
+ url = "https://github.com/gccxml/gccxml/archive/v0.6.x.tar.gz"
+
+ version('develop', git='https://github.com/gccxml/gccxml.git', branch='master')
+ version('latest', git='https://github.com/gccxml/gccxml.git',
+ commit='3afa8ba5be6866e603dcabe80aff79856b558e24', preferred=True)
+
+ patch('darwin-gcc.patch', when='%gcc platform=darwin')
diff --git a/var/spack/repos/builtin/packages/gconf/package.py b/var/spack/repos/builtin/packages/gconf/package.py
index 3b3abc71ed..395ec2ff44 100644
--- a/var/spack/repos/builtin/packages/gconf/package.py
+++ b/var/spack/repos/builtin/packages/gconf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,11 @@
from spack import *
-class Gconf(Package):
+class Gconf(AutotoolsPackage):
"""GConf is a system for storing application preferences."""
homepage = "https://projects.gnome.org/gconf/"
- url = "ftp://ftp.gnome.org/pub/gnome/sources/GConf/3.2/GConf-3.2.6.tar.xz"
+ url = "http://ftp.gnome.org/pub/gnome/sources/GConf/3.2/GConf-3.2.6.tar.xz"
version('3.2.6', '2b16996d0e4b112856ee5c59130e822c')
@@ -43,9 +43,3 @@ class Gconf(Package):
# gobject-2.0 >= 2.7.0
# dbus-1 >= 1.0.0
# dbus-glib-1 >= 0.74
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/gdal/package.py b/var/spack/repos/builtin/packages/gdal/package.py
index b52b1f1038..044013c88d 100644
--- a/var/spack/repos/builtin/packages/gdal/package.py
+++ b/var/spack/repos/builtin/packages/gdal/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,7 +38,7 @@ class Gdal(Package):
homepage = "http://www.gdal.org/"
url = "http://download.osgeo.org/gdal/2.1.2/gdal-2.1.2.tar.xz"
list_url = "http://download.osgeo.org/gdal/"
- list_depth = 2
+ list_depth = 1
version('2.1.2', 'ae85b78888514c75e813d658cac9478e')
version('2.0.2', '940208e737c87d31a90eaae43d0efd65')
@@ -72,7 +72,7 @@ class Gdal(Package):
args.append("--prefix=%s" % prefix)
args.append("--with-liblzma=yes")
args.append("--with-zlib=%s" % spec['zlib'].prefix)
- args.append("--with-python=%s" % spec['python'].prefix.bin + "/python")
+ args.append("--with-python=%s" % spec['python'].command.path)
args.append("--without-libtool")
if '+geos' in spec:
diff --git a/var/spack/repos/builtin/packages/gdb/package.py b/var/spack/repos/builtin/packages/gdb/package.py
index f90e4e7ff0..dedefe5191 100644
--- a/var/spack/repos/builtin/packages/gdb/package.py
+++ b/var/spack/repos/builtin/packages/gdb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,6 +34,7 @@ class Gdb(Package):
homepage = "https://www.gnu.org/software/gdb"
url = "http://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.gz"
+ version('7.12.1', '06c8f40521ed65fe36ebc2be29b56942')
version('7.11', 'f585059252836a981ea5db9a5f8ce97f')
version('7.10.1', 'b93a2721393e5fa226375b42d567d90b')
version('7.10', 'fa6827ad0fd2be1daa418abb11a54d86')
diff --git a/var/spack/repos/builtin/packages/gdbm/package.py b/var/spack/repos/builtin/packages/gdbm/package.py
new file mode 100644
index 0000000000..1e4a4831b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gdbm/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class Gdbm(AutotoolsPackage):
+ """GNU dbm (or GDBM, for short) is a library of database functions
+ that use extensible hashing and work similar to the standard UNIX dbm.
+ These routines are provided to a programmer needing to create and
+ manipulate a hashed database."""
+
+ homepage = "http://www.gnu.org.ua/software/gdbm/gdbm.html"
+ url = "http://ftp.gnu.org/gnu/gdbm/gdbm-1.13.tar.gz"
+
+ version('1.13', '8929dcda2a8de3fd2367bdbf66769376')
+ version('1.12', '9ce96ff4c99e74295ea19040931c8fb9')
+ version('1.11', '72c832680cf0999caedbe5b265c8c1bd')
+ version('1.10', '88770493c2559dc80b561293e39d3570')
+ version('1.9.1', '59f6e4c4193cb875964ffbe8aa384b58')
+ version('1.9', '1f0e8e6691edd61bdd6b697b8c02528d')
+
+ depends_on("readline")
+
+ def configure_args(self):
+ config_args = [
+ '--enable-libgdbm-compat',
+ 'CC=%s' % spack_cc
+ ]
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
index 4d39086b06..63d24d64c4 100644
--- a/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
+++ b/var/spack/repos/builtin/packages/gdk-pixbuf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,14 +25,16 @@
from spack import *
-class GdkPixbuf(Package):
+class GdkPixbuf(AutotoolsPackage):
"""The Gdk Pixbuf is a toolkit for image loading and pixel buffer
manipulation. It is used by GTK+ 2 and GTK+ 3 to load and
manipulate images. In the past it was distributed as part of
GTK+ 2 but it was split off into a separate package in
preparation for the change to GTK+ 3."""
homepage = "https://developer.gnome.org/gdk-pixbuf/"
- url = "http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.31/gdk-pixbuf-2.31.1.tar.xz"
+ url = "http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.31/gdk-pixbuf-2.31.2.tar.xz"
+ list_url = "http://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/"
+ list_depth = 2
version('2.31.2', '6be6bbc4f356d4b79ab4226860ab8523')
@@ -42,8 +44,10 @@ class GdkPixbuf(Package):
depends_on("jpeg")
depends_on("libpng")
depends_on("libtiff")
+ depends_on("gobject-introspection")
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
+ run_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/geant4/package.py b/var/spack/repos/builtin/packages/geant4/package.py
index 239ef6d586..2b935673c4 100644
--- a/var/spack/repos/builtin/packages/geant4/package.py
+++ b/var/spack/repos/builtin/packages/geant4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,62 +24,73 @@
##############################################################################
from spack import *
+import platform
-class Geant4(Package):
+class Geant4(CMakePackage):
"""Geant4 is a toolkit for the simulation of the passage of particles
through matter. Its areas of application include high energy, nuclear
and accelerator physics, as well as studies in medical and space
science."""
homepage = "http://geant4.cern.ch/"
- url = "http://geant4.cern.ch/support/source/geant4.10.01.p03.tar.gz"
+ url = "http://geant4.cern.ch/support/source/geant4.10.01.p03.tar.gz"
+ version('10.02.p02', '6aae1d0fc743b0edc358c5c8fbe48657')
version('10.02.p01', 'b81f7082a15f6a34b720b6f15c6289cfe4ddbbbdcef0dc52719f71fac95f7f1c')
version('10.01.p03', '4fb4175cc0dabcd517443fbdccd97439')
- variant('qt', default=False, description='Enable Qt support')
+ variant('qt', default=True, description='Enable Qt support')
depends_on('cmake@3.5:', type='build')
+ depends_on("clhep@2.3.1.1~cxx11+cxx14", when="@10.02.p02")
depends_on("clhep@2.3.1.1~cxx11+cxx14", when="@10.02.p01")
depends_on("clhep@2.2.0.4~cxx11+cxx14", when="@10.01.p03")
depends_on("expat")
depends_on("zlib")
+ depends_on("vecgeom")
depends_on("xerces-c")
depends_on("qt@4.8:", when="+qt")
- def install(self, spec, prefix):
- cmake_args = list(std_cmake_args)
- cmake_args.append('-DXERCESC_ROOT_DIR:STRING=%s' %
- spec['xerces-c'].prefix)
- cmake_args.append('-DGEANT4_BUILD_CXXSTD=c++14')
-
- cmake_args += ['-DGEANT4_USE_GDML=ON',
- '-DGEANT4_USE_SYSTEM_EXPAT=ON',
- '-DGEANT4_USE_SYSTEM_ZLIB=ON',
- '-DGEANT4_USE_SYSTEM_CLHEP=ON']
-
- # fixme: turn off data for now and maybe each data set should
- # go into a separate package to cut down on disk usage between
- # different code versions using the same data versions.
- cmake_args.append('-DGEANT4_INSTALL_DATA=OFF')
-
- # http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/InstallationGuide/html/ch02s03.html
- # fixme: likely things that need addressing:
- # -DGEANT4_USE_OPENGL_X11=ON
+ def cmake_args(self):
+ spec = self.spec
+
+ options = [
+ '-DGEANT4_USE_GDML=ON',
+ '-DGEANT4_USE_SYSTEM_CLHEP=ON',
+ '-DGEANT4_USE_G3TOG4=ON',
+ '-DGEANT4_INSTALL_DATA=ON',
+ '-DGEANT4_BUILD_TLS_MODEL=global-dynamic',
+ '-DGEANT4_BUILD_MULTITHREADED=ON',
+ '-DGEANT4_USE_USOLIDS=ON',
+ '-DGEANT4_USE_SYSTEM_EXPAT=ON',
+ '-DGEANT4_USE_SYSTEM_ZLIB=ON',
+ '-DXERCESC_ROOT_DIR:STRING=%s' %
+ spec['xerces-c'].prefix,
+ '-DUSolids_DIR=%s' %
+ join_path(spec['vecgeom'].prefix, 'lib/CMake/USolids')]
+
+ arch = platform.system().lower()
+ if arch is not 'darwin':
+ options.append('-DGEANT4_USE_OPENGL_X11=ON')
+ options.append('-DGEANT4_USE_XM=ON')
+ options.append('-DGEANT4_USE_RAYTRACER_X11=ON')
+
+ if '+cxx11' in spec:
+ options.append('-DGEANT4_BUILD_CXXSTD=c++11')
+ if '+cxx14' or '+cxx1y' in spec:
+ options.append('-DGEANT4_BUILD_CXXSTD=c++14')
if '+qt' in spec:
- cmake_args.append('-DGEANT4_USE_QT=ON')
-
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
+ options.append('-DGEANT4_USE_QT=ON')
+ options.append(
+ '-DQT_QMAKE_EXECUTABLE=%s' %
+ spec['qt'].prefix + '/bin/qmake'
+ )
- with working_dir(build_directory, create=True):
- cmake(source_directory, *cmake_args)
- make()
- make("install")
+ return options
def url_for_version(self, version):
"""Handle Geant4's unusual version string."""
- return "http://geant4.cern.ch/support/source/geant4.%s.tar.gz" % version
+ return ("http://geant4.cern.ch/support/source/geant4.%s.tar.gz" % version)
diff --git a/var/spack/repos/builtin/packages/gearshifft/package.py b/var/spack/repos/builtin/packages/gearshifft/package.py
new file mode 100644
index 0000000000..8b6f5c8a31
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gearshifft/package.py
@@ -0,0 +1,74 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gearshifft(CMakePackage):
+ """Benchmark Suite for Heterogenuous FFT Implementations"""
+
+ homepage = "https://github.com/mpicbg-scicomp/gearshifft"
+ url = "https://github.com/mpicbg-scicomp/gearshifft/archive/v0.2.0.tar.gz"
+
+ version('0.2.1-lw', 'c3208b767b24255b488a83e5d9e517ea')
+
+ variant('cufft', default=True,
+ description='Compile gearshifft_cufft')
+ # variant('clfft', default=True,
+ # description='Compile gearshifft_clfft')
+ variant('fftw', default=True,
+ description='Compile gearshifft_fftw')
+ variant('openmp', default=True,
+ description='use OpenMP parallel fftw libraries')
+ # variant('hcfft', default=True,
+ # description='Not implemented yet')
+
+ # depends_on C++14 compiler, e.g. GCC 5.0+
+ depends_on('cmake@2.8.0:', type='build')
+ depends_on('boost@1.56.0:')
+ depends_on('cuda@8.0:', when='+cufft')
+ # depends_on('opencl@1.2:', when='+clfft')
+ # depends_on('clfft@2.12.0:', when='+clfft')
+ depends_on('fftw@3.3.4:~mpi~openmp', when='+fftw~openmp')
+ depends_on('fftw@3.3.4:~mpi+openmp', when='+fftw+openmp')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DGEARSHIFFT_HCFFT:BOOL=OFF',
+ '-DGEARSHIFFT_FFTW_PTHREADS:BOOL=ON',
+ '-DGEARSHIFFT_CLFFT:BOOL=OFF'
+ ]
+ args.extend([
+ '-DGEARSHIFFT_FFTW:BOOL={0}'.format((
+ 'ON' if '+fftw' in spec else 'OFF')),
+ '-DGEARSHIFFT_FFTW_OPENMP:BOOL={0}'.format((
+ 'ON' if '+openmp' in spec else 'OFF')),
+ '-DGEARSHIFFT_CUFFT:BOOL={0}'.format((
+ 'ON' if '+cufft' in spec else 'OFF'))
+ # '-DGEARSHIFFT_CLFFT:BOOL={0}'.format((
+ # 'ON' if '+clfft' in spec else 'OFF'))
+ ])
+ return args
diff --git a/var/spack/repos/builtin/packages/gemmlowp/package.py b/var/spack/repos/builtin/packages/gemmlowp/package.py
new file mode 100644
index 0000000000..7cd3047716
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gemmlowp/package.py
@@ -0,0 +1,40 @@
+#############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gemmlowp(Package):
+ """Google low-precision matrix multiplication library"""
+
+ homepage = "https://github.com/google/gemmlowp"
+ version('a6f29d9ac', git='https://github.com/google/gemmlowp.git',
+ commit='a6f29d8ac48d63293f845f2253eccbf86bc28321')
+
+ def install(self, spec, prefix):
+ header_directories = ('eight_bit_int_gemm', 'fixedpoint',
+ 'internal', 'meta', 'profiling', 'public')
+
+ for directory in header_directories:
+ install_tree(directory, join_path(prefix.include, directory))
diff --git a/var/spack/repos/builtin/packages/genemark-et/package.py b/var/spack/repos/builtin/packages/genemark-et/package.py
new file mode 100644
index 0000000000..faf5acce6a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genemark-et/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+import glob
+
+
+class GenemarkEt(Package):
+ """Gene Prediction in Bacteria, archaea, Metagenomes and
+ Metatranscriptomes."""
+
+ homepage = "http://topaz.gatech.edu/GeneMark"
+
+ version('4.33', '4ab7d7d3277a685dfb49e11bc5b493c3')
+
+ depends_on('perl', type=('build', 'run'))
+
+ def url_for_version(self, version):
+ return "file://{0}/gm_et_linux_64.tar.gz".format(os.getcwd())
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('gmes_petap'):
+ install_tree('lib', prefix.lib)
+ files = glob.iglob('*')
+ for file in files:
+ if os.path.isfile(file):
+ install(file, prefix.bin)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PERL5LIB', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/genometools/package.py b/var/spack/repos/builtin/packages/genometools/package.py
new file mode 100644
index 0000000000..00f359e6d2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/genometools/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#############################################################################
+from spack import *
+
+
+class Genometools(MakefilePackage):
+ """genometools is a free collection of bioinformatics tools (in the realm
+ of genome informatics) combined into a single binary named gt."""
+
+ homepage = "http://genometools.org/"
+ url = "http://genometools.org/pub/genometools-1.5.9.tar.gz"
+
+ version('1.5.9', 'e400d69092f9f13db09b33f9dea39d2e')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('cairo')
+ depends_on('pango')
+
+ # build fails with gcc 7"
+ conflicts('%gcc@7.1.0:')
+
+ def install(self, spec, prefix):
+ make('install', 'prefix=%s' % prefix)
diff --git a/var/spack/repos/builtin/packages/geos/package.py b/var/spack/repos/builtin/packages/geos/package.py
index 324186cfbc..f74e03ff57 100644
--- a/var/spack/repos/builtin/packages/geos/package.py
+++ b/var/spack/repos/builtin/packages/geos/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -60,9 +60,8 @@ class Geos(Package):
def install(self, spec, prefix):
args = ["--prefix=%s" % prefix]
# if '+python' in spec:
-# os.environ['PYTHON'] = join_path(spec['python'].prefix, 'bin',
-# 'python' if spec['python'].version[:1][0] <= 2 else 'python3')
-# os.environ['SWIG'] = join_path(spec['swig'].prefix, 'bin', 'swig')
+# os.environ['PYTHON'] = spec['python'].command.path
+# os.environ['SWIG'] = spec['swig'].command.path
#
# args.append("--enable-python")
diff --git a/var/spack/repos/builtin/packages/gettext/package.py b/var/spack/repos/builtin/packages/gettext/package.py
index cf260c3f8a..f25f3e7889 100644
--- a/var/spack/repos/builtin/packages/gettext/package.py
+++ b/var/spack/repos/builtin/packages/gettext/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,8 +25,9 @@
from spack import *
-class Gettext(Package):
+class Gettext(AutotoolsPackage):
"""GNU internationalization (i18n) and localization (l10n) library."""
+
homepage = "https://www.gnu.org/software/gettext/"
url = "http://ftpmirror.gnu.org/gettext/gettext-0.19.7.tar.xz"
@@ -60,16 +61,19 @@ class Gettext(Package):
depends_on('libunistring', when='+libunistring')
# depends_on('cvs')
- def install(self, spec, prefix):
+ patch('test-verify-parallel-make-check.patch', when='@:0.19.8.1')
+
+ def configure_args(self):
+ spec = self.spec
+
config_args = [
- '--prefix={0}'.format(prefix),
'--disable-java',
'--disable-csharp',
'--with-included-glib',
'--with-included-gettext',
'--with-included-libcroco',
'--without-emacs',
- '--with-lispdir=%s/emacs/site-lisp/gettext' % prefix.share,
+ '--with-lispdir=%s/emacs/site-lisp/gettext' % self.prefix.share,
'--without-cvs'
]
@@ -97,7 +101,4 @@ class Gettext(Package):
else:
config_args.append('--with-included-libunistring')
- configure(*config_args)
-
- make()
- make("install")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/gettext/test-verify-parallel-make-check.patch b/var/spack/repos/builtin/packages/gettext/test-verify-parallel-make-check.patch
new file mode 100644
index 0000000000..5f5aebcbfd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gettext/test-verify-parallel-make-check.patch
@@ -0,0 +1,61 @@
+2017-04-20 Bruno Haible <bruno@clisp.org>
+
+ verify tests: Fix spurious failure with parallel make.
+ * tests/test-verify.sh: Build test-verify-try.o, not test-verify.o.
+ * tests/test-verify-try.c: New file.
+ Reported by Adam James Stewart <ajstewart@anl.gov>.
+
+diff --git a/gettext-tools/gnulib-tests/test-verify.sh b/gettext-tools/gnulib-tests/test-verify.sh
+index 3e76761..1e75d55 100755
+--- a/gettext-tools/gnulib-tests/test-verify.sh
++++ b/gettext-tools/gnulib-tests/test-verify.sh
+@@ -7,8 +7,9 @@ unset MALLOC_PERTURB_
+
+ # Rather than figure out how to invoke the compiler with the right
+ # include path ourselves, we let make do it:
+-(cd "$initial_cwd_" && rm -f test-verify.o \
+- && $MAKE test-verify.o >/dev/null 2>&1) \
++(cd "$initial_cwd_" \
++ && rm -f test-verify-try.o \
++ && $MAKE test-verify-try.o >/dev/null 2>&1) \
+ || skip_ "cannot compile error-free"
+
+ # Now, prove that we encounter all expected compilation failures:
+@@ -16,8 +17,8 @@ unset MALLOC_PERTURB_
+ : >err
+ for i in 1 2 3 4 5; do
+ (cd "$initial_cwd_"
+- rm -f test-verify.o
+- $MAKE CFLAGS=-DEXP_FAIL=$i test-verify.o) >>out 2>>err \
++ rm -f test-verify-try.o
++ $MAKE CFLAGS=-DEXP_FAIL=$i test-verify-try.o) >>out 2>>err \
+ && { warn_ "compiler didn't detect verification failure $i"; fail=1; }
+ done
+
+diff --git a/gettext-tools/gnulib-tests/test-verify-try.c b/gettext-tools/gnulib-tests/test-verify-try.c
+new file mode 100644
+index 0000000..362fb01
+--- /dev/null
++++ b/tests/test-verify-try.c
+@@ -0,0 +1,21 @@
++/* Test the "verify" module.
++
++ Copyright (C) 2017 Free Software Foundation, Inc.
++
++ This program is free software: you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation; either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program. If not, see <http://www.gnu.org/licenses/>. */
++
++/* This is a separate source file, so that the execution of test-verify.sh
++ does not interfere with the building of the 'test-verify' program. */
++
++#include "test-verify.c"
diff --git a/var/spack/repos/builtin/packages/gflags/package.py b/var/spack/repos/builtin/packages/gflags/package.py
index 7e04c9b682..05a168d6fa 100644
--- a/var/spack/repos/builtin/packages/gflags/package.py
+++ b/var/spack/repos/builtin/packages/gflags/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gflags(Package):
+class Gflags(CMakePackage):
"""The gflags package contains a C++ library that implements
commandline flags processing. It includes built-in support for
standard types such as string and the ability to define flags
@@ -37,11 +37,7 @@ class Gflags(Package):
version('2.1.2', 'ac432de923f9de1e9780b5254884599f')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8.12:', type='build')
- def install(self, spec, prefix):
- cmake("-DCMAKE_INSTALL_PREFIX=" + prefix,
- "-DBUILD_SHARED_LIBS=ON")
- make()
- make("test")
- make("install")
+ def cmake_args(self):
+ return ['-DBUILD_SHARED_LIBS=ON']
diff --git a/var/spack/repos/builtin/packages/ghostscript-fonts/package.py b/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
index 1bf3f857b0..9dc7e8cead 100644
--- a/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
+++ b/var/spack/repos/builtin/packages/ghostscript-fonts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class GhostscriptFonts(Package):
"""Ghostscript Fonts"""
homepage = "http://ghostscript.com/"
- url = "ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/ghostscript-fonts-std-8.11.tar.gz"
+ url = "https://www.imagemagick.org/download/delegates/ghostscript-fonts-std-8.11.tar.gz"
version('8.11', '6865682b095f8c4500c54b285ff05ef6')
diff --git a/var/spack/repos/builtin/packages/ghostscript/package.py b/var/spack/repos/builtin/packages/ghostscript/package.py
index f63ebac0c1..991f77199e 100644
--- a/var/spack/repos/builtin/packages/ghostscript/package.py
+++ b/var/spack/repos/builtin/packages/ghostscript/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,23 +23,59 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import shutil
-class Ghostscript(Package):
+class Ghostscript(AutotoolsPackage):
"""An interpreter for the PostScript language and for PDF."""
homepage = "http://ghostscript.com/"
- url = "http://downloads.ghostscript.com/public/old-gs-releases/ghostscript-9.18.tar.gz"
+ url = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs921/ghostscript-9.21.tar.gz"
+ version('9.21', '5f213281761d2750fcf27476c404d17f')
version('9.18', '33a47567d7a591c00a253caddd12a88a')
- parallel = False
+ depends_on('pkg-config', type='build')
+ depends_on('freetype@2.4.2:')
+ depends_on('jpeg')
+ depends_on('lcms')
+ depends_on('libpng')
depends_on('libtiff')
+ depends_on('zlib')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix),
- '--with-system-libtiff')
+ def url_for_version(self, version):
+ baseurl = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs{0}/ghostscript-{1}.tar.gz"
+ return baseurl.format(version.joined, version.dotted)
+
+ def patch(self):
+ """Ghostscript comes with all of its dependencies vendored.
+ In order to build with Spack versions of these dependencies,
+ we have to remove these vendored dependencies.
+
+ Note that this approach is also recommended by Linux from Scratch:
+ http://www.linuxfromscratch.org/blfs/view/svn/pst/gs.html
+ """
+ directories = ['freetype', 'jpeg', 'lcms2', 'libpng', 'zlib']
+ for directory in directories:
+ shutil.rmtree(directory)
+
+ filter_file('ZLIBDIR=src',
+ 'ZLIBDIR={0}'.format(self.spec['zlib'].prefix.include),
+ 'configure.ac', 'configure',
+ string=True)
+ def configure_args(self):
+ return [
+ '--disable-compile-inits',
+ '--enable-dynamic',
+ '--with-system-libtiff',
+ ]
+
+ def build(self, spec, prefix):
make()
+ make('so')
+
+ def install(self, spec, prefix):
make('install')
+ make('soinstall')
diff --git a/var/spack/repos/builtin/packages/giflib/package.py b/var/spack/repos/builtin/packages/giflib/package.py
index 7082384b9b..3ab0d8453f 100644
--- a/var/spack/repos/builtin/packages/giflib/package.py
+++ b/var/spack/repos/builtin/packages/giflib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Giflib(Package):
+class Giflib(AutotoolsPackage):
"""The GIFLIB project maintains the giflib service library, which has
been pulling images out of GIFs since 1989."""
@@ -33,9 +33,3 @@ class Giflib(Package):
url = "https://downloads.sourceforge.net/project/giflib/giflib-5.1.4.tar.bz2"
version('5.1.4', '2c171ced93c0e83bb09e6ccad8e3ba2b')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/git-lfs/package.py b/var/spack/repos/builtin/packages/git-lfs/package.py
index 25e440ff6d..7e557dd0a8 100644
--- a/var/spack/repos/builtin/packages/git-lfs/package.py
+++ b/var/spack/repos/builtin/packages/git-lfs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,12 +35,14 @@ class GitLfs(Package):
homepage = "https://git-lfs.github.com"
git_url = "https://github.com/github/git-lfs.git"
+ version('2.3.0', git=git_url, tag='v2.3.0')
+ version('2.2.1', git=git_url, tag='v2.2.1')
+ version('2.0.2', git=git_url, tag='v2.0.2')
version('1.4.1', git=git_url, tag='v1.4.1')
version('1.3.1', git=git_url, tag='v1.3.1')
- # TODO: Implement this by following the instructions at this location:
+ # TODO: Add tests by following the instructions at this location:
# https://github.com/github/git-lfs/blob/master/CONTRIBUTING.md#building
- # variant('test', default=True, description='Build and run tests as part of the build.') # NOQA: E501
depends_on('go@1.5:', type='build')
depends_on('git@1.8.2:', type='run')
diff --git a/var/spack/repos/builtin/packages/git/package.py b/var/spack/repos/builtin/packages/git/package.py
index c7b239ef12..293f85974f 100644
--- a/var/spack/repos/builtin/packages/git/package.py
+++ b/var/spack/repos/builtin/packages/git/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,65 +24,178 @@
##############################################################################
import sys
from spack import *
+from distutils.dir_util import copy_tree
-class Git(Package):
+class Git(AutotoolsPackage):
"""Git is a free and open source distributed version control
- system designed to handle everything from small to very large
- projects with speed and efficiency."""
+ system designed to handle everything from small to very large
+ projects with speed and efficiency.
+ """
+
homepage = "http://git-scm.com"
- url = "https://github.com/git/git/tarball/v2.7.1"
+ url = "https://github.com/git/git/archive/v2.12.0.tar.gz"
+
+ # In order to add new versions here, add a new list entry with:
+ # * version: {version}
+ # * md5: the md5sum of the v{version}.tar.gz
+ # * md5_manpages: the md5sum of the corresponding manpage from
+ # https://www.kernel.org/pub/software/scm/git/git-manpages-{version}.tar.xz
+
+ releases = [
+ {
+ 'version': '2.14.1',
+ 'md5': 'e965a37b3d277f2e7e78f5b04de28e2a',
+ 'md5_manpages': 'da2e75ea3972b9e93fb47023e3bf1401',
+ },
+ {
+ 'version': '2.13.0',
+ 'md5': 'd0f14da0ef1d22f1ce7f7876fadcb39f',
+ 'md5_manpages': 'fda8d6d5314eb5a47e315405830f9970',
+ },
+ {
+ 'version': '2.12.2',
+ 'md5': 'f1a50c09ce8b5dd197f3c6c6d5ea8e75',
+ 'md5_manpages': '9358777e9a67e57427b03884c82311bd',
+ },
+ {
+ 'version': '2.12.1',
+ 'md5': 'a05c614c80ecd41e50699f1562e1130c',
+ 'md5_manpages': '8dfba0c9f51c6c23fb135d136c061c78',
+ },
+ {
+ 'version': '2.12.0',
+ 'md5': '11a440ce0ed02098adf554c797facfd3',
+ 'md5_manpages': '4d11e05068231e37d7e42935e9cc43a1',
+ },
+ {
+ 'version': '2.11.1',
+ 'md5': '2cf960f19e56f27248816809ae896794',
+ 'md5_manpages': 'ade1e458a34a89d03dda9a6de85976bd',
+ },
+ {
+ 'version': '2.11.0',
+ 'md5': 'c63fb83b86431af96f8e9722ebb3ca01',
+ 'md5_manpages': '72718851626e5b2267877cc2194a1ac9',
+ },
+ {
+ 'version': '2.9.3',
+ 'md5': 'b0edfc0f3cb046aec7ed68a4b7282a75',
+ 'md5_manpages': '337165a3b2bbe4814c73075cb6854ca2',
+ },
+ {
+ 'version': '2.9.2',
+ 'md5': '3ff8a9b30fd5c99a02e6d6585ab543fc',
+ 'md5_manpages': 'c4f415b4fc94cf75a1deb651ba769594',
+ },
+ {
+ 'version': '2.9.1',
+ 'md5': 'a5d806743a992300b45f734d1667ddd2',
+ 'md5_manpages': '2aa797ff70c704a563c910e04c0f620a',
+ },
+ {
+ 'version': '2.9.0',
+ 'md5': 'bf33a13c2adc05bc9d654c415332bc65',
+ 'md5_manpages': 'c840c968062251b768ba9852fd29054c',
+ },
+ {
+ 'version': '2.8.4',
+ 'md5': '86afb10254c3803894c9863fb5896bb6',
+ 'md5_manpages': '8340e772d60ccd04a5da88fa9c976dad',
+ },
+ {
+ 'version': '2.8.3',
+ 'md5': '0e19f31f96f9364fd247b8dc737dacfd',
+ 'md5_manpages': '553827e1b6c422ecc485499c1a1ae28d',
+ },
+ {
+ 'version': '2.8.2',
+ 'md5': '3d55550880af98f6e35c7f1d7c5aecfe',
+ 'md5_manpages': '33330463af27eb1238cbc2b4ca100b3a',
+ },
+ {
+ 'version': '2.8.1',
+ 'md5': '1308448d95afa41a4135903f22262fc8',
+ 'md5_manpages': '87bc202c6f6ae32c1c46c2dda3134ed1',
+ },
+ {
+ 'version': '2.8.0',
+ 'md5': 'eca687e46e9750121638f258cff8317b',
+ 'md5_manpages': 'd67a7db0f363e8c3b2960cd84ad0373f',
+ },
+ {
+ 'version': '2.7.3',
+ 'md5': 'fa1c008b56618c355a32ba4a678305f6',
+ 'md5_manpages': '97a525cca7fe38ff6bd7aaa4f0438896',
+ },
+ {
+ 'version': '2.7.1',
+ 'md5': 'bf0706b433a8dedd27a63a72f9a66060',
+ 'md5_manpages': '19881ca231f73dec91fb456d74943950',
+ },
+ ]
+
+ for release in releases:
+ version(release['version'], release['md5'])
+ resource(
+ name='git-manpages',
+ url="https://www.kernel.org/pub/software/scm/git/git-manpages-{0}.tar.xz".format(
+ release['version']),
+ md5=release['md5_manpages'],
+ placement='git-manpages',
+ when='@{0}'.format(release['version']))
- version('2.11.0', 'c63fb83b86431af96f8e9722ebb3ca01')
- version('2.9.3', 'b0edfc0f3cb046aec7ed68a4b7282a75')
- version('2.9.2', '3ff8a9b30fd5c99a02e6d6585ab543fc')
- version('2.9.1', 'a5d806743a992300b45f734d1667ddd2')
- version('2.9.0', 'bf33a13c2adc05bc9d654c415332bc65')
- version('2.8.4', '86afb10254c3803894c9863fb5896bb6')
- version('2.8.3', '0e19f31f96f9364fd247b8dc737dacfd')
- version('2.8.2', '3d55550880af98f6e35c7f1d7c5aecfe')
- version('2.8.1', '1308448d95afa41a4135903f22262fc8')
- version('2.8.0', 'eca687e46e9750121638f258cff8317b')
- version('2.7.3', 'fa1c008b56618c355a32ba4a678305f6')
- version('2.7.1', 'bf0706b433a8dedd27a63a72f9a66060')
+ depends_on('curl')
+ depends_on('expat')
+ depends_on('gettext')
+ depends_on('libiconv')
+ depends_on('openssl')
+ depends_on('pcre', when='@:2.13')
+ depends_on('pcre+jit', when='@2.14:')
+ depends_on('perl')
+ depends_on('zlib')
- # See here for info on vulnerable Git versions:
- # http://www.theregister.co.uk/2016/03/16/git_server_client_patch_now/
- # All the following are vulnerable
- # version('2.6.3', 'b711be7628a4a2c25f38d859ee81b423')
- # version('2.6.2', 'da293290da69f45a86a311ad3cd43dc8')
- # version('2.6.1', '4c62ee9c5991fe93d99cf2a6b68397fd')
- # version('2.6.0', 'eb76a07148d94802a1745d759716a57e')
- # version('2.5.4', '3eca2390cf1fa698b48e2a233563a76b')
- # version('2.2.1', 'ff41fdb094eed1ec430aed8ee9b9849c')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
- depends_on("autoconf", type='build')
- depends_on("curl")
- depends_on("expat")
- depends_on("gettext")
- depends_on("libiconv")
- depends_on("openssl")
- depends_on("pcre")
- depends_on("perl")
- depends_on("zlib")
+ def setup_environment(self, spack_env, run_env):
+ # This is done to avoid failures when git is an external package.
+ # In that case the node in the DAG gets truncated and git DOES NOT
+ # have a gettext dependency.
+ if 'gettext' in self.spec:
+ spack_env.append_flags('LDFLAGS', '-L{0} -lintl'.format(
+ self.spec['gettext'].prefix.lib))
- def install(self, spec, prefix):
- env['LDFLAGS'] = "-L%s" % spec['gettext'].prefix.lib + " -lintl"
- configure_args = [
- "--prefix=%s" % prefix,
- "--with-curl=%s" % spec['curl'].prefix,
- "--with-expat=%s" % spec['expat'].prefix,
- "--with-iconv=%s" % spec['libiconv'].prefix,
- "--with-libpcre=%s" % spec['pcre'].prefix,
- "--with-openssl=%s" % spec['openssl'].prefix,
- "--with-perl=%s" % join_path(spec['perl'].prefix.bin, 'perl'),
- "--with-zlib=%s" % spec['zlib'].prefix,
+ def configure_args(self):
+ spec = self.spec
+
+ return [
+ '--with-curl={0}'.format(spec['curl'].prefix),
+ '--with-expat={0}'.format(spec['expat'].prefix),
+ '--with-iconv={0}'.format(spec['libiconv'].prefix),
+ '--with-libpcre={0}'.format(spec['pcre'].prefix),
+ '--with-openssl={0}'.format(spec['openssl'].prefix),
+ '--with-perl={0}'.format(spec['perl'].command.path),
+ '--with-zlib={0}'.format(spec['zlib'].prefix),
]
- which('autoreconf')('-i')
- configure(*configure_args)
- if sys.platform == "darwin":
+ @run_after('configure')
+ def filter_rt(self):
+ if sys.platform == 'darwin':
# Don't link with -lrt; the system has no (and needs no) librt
filter_file(r' -lrt$', '', 'Makefile')
- make()
- make("install")
+
+ @run_after('install')
+ def install_completions(self):
+ copy_tree('contrib/completion', self.prefix.share)
+
+ @run_after('install')
+ def install_manpages(self):
+ prefix = self.prefix
+
+ with working_dir('git-manpages'):
+ install_tree('man1', prefix.share.man.man1)
+ install_tree('man5', prefix.share.man.man5)
+ install_tree('man7', prefix.share.man.man7)
diff --git a/var/spack/repos/builtin/packages/gl2ps/package.py b/var/spack/repos/builtin/packages/gl2ps/package.py
index d5e7b00027..fbe38d4bc9 100644
--- a/var/spack/repos/builtin/packages/gl2ps/package.py
+++ b/var/spack/repos/builtin/packages/gl2ps/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gl2ps(Package):
+class Gl2ps(CMakePackage):
"""GL2PS is a C library providing high quality vector output for any
OpenGL application."""
@@ -34,10 +34,37 @@ class Gl2ps(Package):
version('1.3.9', '377b2bcad62d528e7096e76358f41140')
- depends_on("libpng")
+ variant('png', default=True, description='Enable PNG support')
+ variant('zlib', default=True, description='Enable compression using ZLIB')
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
+ depends_on('cmake@2.4:', type='build')
- make()
- make("install")
+ # TODO: Add missing dependencies on OpenGL/Mesa and LaTeX
+
+ # X11 libraries:
+ depends_on('libice')
+ depends_on('libsm')
+ depends_on('libxau')
+ depends_on('libxdamage')
+ depends_on('libxdmcp')
+ depends_on('libxext')
+ depends_on('libxfixes')
+ depends_on('libxi')
+ depends_on('libxmu')
+ depends_on('libxt')
+ depends_on('libxxf86vm')
+ depends_on('libxcb')
+ depends_on('libdrm')
+ depends_on('expat')
+
+ depends_on('libpng', when='+png')
+ depends_on('zlib', when='+zlib')
+
+ def variant_to_bool(self, variant):
+ return 'ON' if variant in self.spec else 'OFF'
+
+ def cmake_args(self):
+ return [
+ '-DENABLE_PNG={0}'.format(self.variant_to_bool('+png')),
+ '-DENABLE_ZLIB={0}'.format(self.variant_to_bool('+zlib')),
+ ]
diff --git a/var/spack/repos/builtin/packages/glew/package.py b/var/spack/repos/builtin/packages/glew/package.py
index 5df7c8642f..4ba7eb5894 100644
--- a/var/spack/repos/builtin/packages/glew/package.py
+++ b/var/spack/repos/builtin/packages/glew/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/glib/no-Werror=format-security.patch b/var/spack/repos/builtin/packages/glib/no-Werror=format-security.patch
index cfcfe424be..3e70212b97 100644
--- a/var/spack/repos/builtin/packages/glib/no-Werror=format-security.patch
+++ b/var/spack/repos/builtin/packages/glib/no-Werror=format-security.patch
@@ -1,16 +1,13 @@
---- a/configure.ac 2016-08-16 11:57:34.000000000 -0400
-+++ b/configure.ac 2016-08-16 11:57:36.000000000 -0400
-@@ -3357,11 +3357,11 @@
- enable_compile_warnings=yes)
- AS_IF([test "x$enable_compile_warnings" = xyes], [
- CC_CHECK_FLAGS_APPEND([GLIB_WARN_CFLAGS], [CFLAGS], [\
+--- a/configure 2017-05-12 16:03:01.000000000 -0500
++++ b/configure 2017-05-12 16:01:58.000000000 -0500
+@@ -29273,8 +29273,8 @@
+ for flag in \
-Wall -Wstrict-prototypes -Werror=declaration-after-statement \
-Werror=missing-prototypes -Werror=implicit-function-declaration \
- -Werror=pointer-arith -Werror=init-self -Werror=format-security \
-- -Werror=format=2 -Werror=missing-include-dirs])
+- -Werror=format=2 -Werror=missing-include-dirs; do
+ -Werror=pointer-arith -Werror=init-self \
-+ -Werror=missing-include-dirs])
- ])
- AC_SUBST(GLIB_WARN_CFLAGS)
++ -Werror=missing-include-dirs; do
- #
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC supports flag $flag in envvar CFLAGS" >&5
+ $as_echo_n "checking if $CC supports flag $flag in envvar CFLAGS... " >&6; }
diff --git a/var/spack/repos/builtin/packages/glib/package.py b/var/spack/repos/builtin/packages/glib/package.py
index 4d8085baf2..5997987fa6 100644
--- a/var/spack/repos/builtin/packages/glib/package.py
+++ b/var/spack/repos/builtin/packages/glib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,30 +23,32 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class Glib(Package):
+class Glib(AutotoolsPackage):
"""The GLib package contains a low-level libraries useful for
providing data structure handling for C, portability wrappers
and interfaces for such runtime functionality as an event loop,
threads, dynamic loading and an object system."""
homepage = "https://developer.gnome.org/glib/"
- url = "http://ftp.gnome.org/pub/gnome/sources/glib/2.42/glib-2.42.1.tar.xz"
+ url = "https://ftp.gnome.org/pub/gnome/sources/glib/2.53/glib-2.53.1.tar.xz"
+ version('2.53.1', '3362ef4da713f834ea26904caf3a75f5')
+ version('2.49.7', '397ead3fcf325cb921d54e2c9e7dfd7a')
version('2.49.4', 'e2c87c03017b0cd02c4c73274b92b148')
version('2.48.1', '67bd3b75c9f6d5587b457dc01cdcd5bb')
version('2.42.1', '89c4119e50e767d3532158605ee9121a')
- depends_on('autoconf', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
- depends_on('pkg-config+internal_glib', type='build')
+ variant('libmount', default=False, description='Build with libmount support')
+
+ depends_on('pkg-config@0.16:+internal_glib', type='build')
depends_on('libffi')
depends_on('zlib')
depends_on('gettext')
+ depends_on('perl', type=('build', 'run'))
depends_on('pcre+utf', when='@2.48:')
+ depends_on('util-linux', when='+libmount')
# The following patch is needed for gcc-6.1
patch('g_date_strftime.patch', when='@2.42.1')
@@ -59,17 +61,21 @@ class Glib(Package):
url = 'http://ftp.gnome.org/pub/gnome/sources/glib'
return url + '/%s/glib-%s.tar.xz' % (version.up_to(2), version)
- def install(self, spec, prefix):
- autoreconf = which("autoreconf")
- autoreconf("--install", "--verbose", "--force",
- "-I", "config",
- "-I", os.path.join(spec['pkg-config'].prefix,
- "share", "aclocal"),
- "-I", os.path.join(spec['automake'].prefix,
- "share", "aclocal"),
- "-I", os.path.join(spec['libtool'].prefix,
- "share", "aclocal"),
- )
- configure("--prefix=%s" % prefix)
- make()
- make("install", parallel=False)
+ def configure_args(self):
+ spec = self.spec
+ args = []
+
+ if '+libmount' in spec:
+ args.append('--enable-libmount')
+ else:
+ args.append('--disable-libmount')
+
+ return args
+
+ @run_before('install')
+ def filter_sbang(self):
+ # Filter sbang before install so Spack's sbang hook can fix it up
+ perl = join_path(self.spec['perl'].prefix.bin, 'perl')
+ files = ['gobject/glib-mkenums']
+
+ filter_file('^#! /usr/bin/perl', '#!{0}'.format(perl), *files)
diff --git a/var/spack/repos/builtin/packages/glm/package.py b/var/spack/repos/builtin/packages/glm/package.py
index c565b3cae7..d2bf9da282 100644
--- a/var/spack/repos/builtin/packages/glm/package.py
+++ b/var/spack/repos/builtin/packages/glm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,9 @@
from spack import *
-class Glm(Package):
+class Glm(CMakePackage):
"""OpenGL Mathematics (GLM) is a header only C++ mathematics library for
- graphics software based on the OpenGL Shading Language (GLSL)
- specification.
-
+ graphics software based on the OpenGL Shading Language (GLSL) specification
"""
homepage = "https://github.com/g-truc/glm"
@@ -37,10 +35,4 @@ class Glm(Package):
version('0.9.7.1', '61af6639cdf652d1cdd7117190afced8')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
- make()
- make("install")
+ depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/global/package.py b/var/spack/repos/builtin/packages/global/package.py
index fedf41c829..040b7d6e71 100644
--- a/var/spack/repos/builtin/packages/global/package.py
+++ b/var/spack/repos/builtin/packages/global/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/globalarrays/ibm-xl.patch b/var/spack/repos/builtin/packages/globalarrays/ibm-xl.patch
new file mode 100644
index 0000000000..644e3a559a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/globalarrays/ibm-xl.patch
@@ -0,0 +1,250 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2022280..dac3b7f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -174,6 +174,15 @@ option (F2C_HIDDEN_STRING_LENGTH_AFTER_ARGS "Set F77 macros" ON)
+ if (ENABLE_FORTRAN)
+ include( FortranCInterface )
+ FortranCInterface_HEADER(${CMAKE_SOURCE_DIR}/f2c_cmake.h MACRO_NAMESPACE F77_FUNC_)
++ add_custom_command(
++ OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.fh
++ COMMAND ${CMAKE_COMMAND} -D INPUT:PATH="${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.h" -D OUTPUT:PATH="${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.fh" -P ${PROJECT_SOURCE_DIR}/tools/f2c_cmake_fh_from_h.cmake DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.h
++ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.h
++ )
++ add_custom_target(
++ GenerateF2c_cmakeFH ALL
++ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/f2c_cmake.fh
++ )
+ else()
+ CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/cmake/f2c_dummy.h.in
+ ${CMAKE_SOURCE_DIR}/f2c_cmake.h )
+@@ -336,6 +345,15 @@ if (ENABLE_FORTRAN)
+ set (F77_IARGC IARGC)
+ set (F77_FLUSH flush)
+ set (HAVE_F77_FLUSH 1)
++ elseif (CMAKE_Fortran_COMPILER MATCHES "xlf.*")
++ message(STATUS "Using IBM XL Fortran compiler settings")
++ set (F90_MODULE )
++ set (F77_GETARG GETARG)
++ set (F77_GETARG_ARGS "i,s")
++ set (F77_GETARG_DECLS "intrinsic GETARG")
++ set (F77_IARGC IARGC)
++ set (F77_FLUSH flush_)
++ set (HAVE_F77_FLUSH 1)
+ endif()
+ else()
+ # need to set these variable even if only compiling C/C++
+diff --git a/cmake/config.h.in b/cmake/config.h.in
+index 3ce6a32..9ad868f 100644
+--- a/cmake/config.h.in
++++ b/cmake/config.h.in
+@@ -58,11 +58,11 @@
+
+ #cmakedefine01 F2C_HIDDEN_STRING_LENGTH_AFTER_ARGS
+
+-/*#define F77_FUNC(name,NAME) F77_FUNC_GLOBAL(name,NAME)*/
+-/*#define F77_FUNC_(name,NAME) F77_FUNC_GLOBAL_(name,NAME)*/
++#define F77_FUNC(name,NAME) F77_FUNC_GLOBAL(name,NAME)
++#define F77_FUNC_(name,NAME) F77_FUNC_GLOBAL_(name,NAME)
+
+-#define F77_FUNC(name,NAME) name ## _
+-#define F77_FUNC_(name,NAME) name ## _
++/* #define F77_FUNC(name,NAME) name ## _ */
++/* #define F77_FUNC_(name,NAME) name ## _ */
+
+ #define FXX_MODULE ${F90_MODULE}
+ #define F77_GETARG ${F77_GETARG}
+diff --git a/tools/config_fh_from_h.cmake b/tools/config_fh_from_h.cmake
+index acdf776..fb10422 100644
+--- a/tools/config_fh_from_h.cmake
++++ b/tools/config_fh_from_h.cmake
+@@ -7,6 +7,13 @@ if (INPUT)
+ foreach (l in ${in0})
+ # Only retain lines that start with "#"
+ set(found "")
++ string(REGEX MATCH "^#include" found "${l}")
++ if (found)
++ # don't include f2c_cmake.h
++ set(out "#include \"f2c_cmake.fh\"\n")
++ continue ()
++ endif ()
++ set(found "")
+ string(REGEX MATCH "^#" found "${l}")
+ if (found)
+ set(out "${out}${l}\n")
+diff --git a/tools/f2c_cmake_fh_from_h.cmake b/tools/f2c_cmake_fh_from_h.cmake
+new file mode 100644
+index 0000000..acdf776
+--- /dev/null
++++ b/tools/f2c_cmake_fh_from_h.cmake
+@@ -0,0 +1,21 @@
++if (INPUT)
++ if (OUTPUT)
++ file(READ "${INPUT}" in0)
++# replace carriage returns with a semi-colon
++ string (REGEX REPLACE "\n" ";" in0 "${in0}")
++ set(out "")
++ foreach (l in ${in0})
++ # Only retain lines that start with "#"
++ set(found "")
++ string(REGEX MATCH "^#" found "${l}")
++ if (found)
++ set(out "${out}${l}\n")
++ endif ()
++ endforeach ()
++ file(WRITE "${OUTPUT}" "${out}")
++ else (OUTPUT)
++ message(ERROR "OUTPUT variable must be set")
++ endif (OUTPUT)
++else (INPUT)
++ message(ERROR "INPUT variable must be set")
++endif (INPUT)
+diff --git a/global/src/cnames.h b/global/src/cnames.h
+index efdec60..cadfd0a 100644
+--- a/global/src/cnames.h
++++ b/global/src/cnames.h
+@@ -2268,6 +2268,7 @@
+ #define nga_iupdate_ghosts_ F77_FUNC_(nga_iupdate_ghosts,NGA_IUPDATE_GHOSTS)
+ #define nga_supdate_ghosts_ F77_FUNC_(nga_supdate_ghosts,NGA_SUPDATE_GHOSTS)
+ #define nga_zupdate_ghosts_ F77_FUNC_(nga_zupdate_ghosts,NGA_ZUPDATE_GHOSTS)
++#define nga_update_ghosts_nb_ F77_FUNC_(nga_update_ghosts_nb, NGA_UPDATE_GHOSTS_NB)
+ #define ga_update6_ghosts_ F77_FUNC_(ga_update6_ghosts, GA_UPDATE6_GHOSTS)
+ #define ga_cupdate6_ghosts_ F77_FUNC_(ga_cupdate6_ghosts,GA_CUPDATE6_GHOSTS)
+ #define ga_dupdate6_ghosts_ F77_FUNC_(ga_dupdate6_ghosts,GA_DUPDATE6_GHOSTS)
+diff --git a/global/testing/perform.F b/global/testing/perform.F
+index b18146d..e1b9641 100644
+--- a/global/testing/perform.F
++++ b/global/testing/perform.F
+@@ -110,7 +110,7 @@ c
+ & ilo,ihi,jlo,jhi
+ write(6,*)'bytes loop get put',
+ & ' accumulate'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -145,7 +145,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, count, tg, 1d-6*bytes/tg,
+ & tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+diff --git a/global/testing/mir_perf1.F b/global/testing/mir_perf1.F
+index 074e838..3548552 100644
+--- a/global/testing/mir_perf1.F
++++ b/global/testing/mir_perf1.F
+@@ -133,7 +133,7 @@ c
+ & ' accumulate'
+ write(6,*)' bytes dim sec MB/s sec MB/s',
+ & ' sec MB/s'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -174,7 +174,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, chunk(loop), tg,
+ & 1d-6*bytes/tg,tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+@@ -388,7 +388,7 @@ c
+ & ' accumulate'
+ write(6,*)' bytes dim sec MB/s sec MB/s',
+ & ' sec MB/s'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -427,7 +427,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, chunk(loop), tg,
+ & 1d-6*bytes/tg,tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+diff --git a/global/testing/mir_perf2.F b/global/testing/mir_perf2.F
+index fb50398..3b3bed6 100644
+--- a/global/testing/mir_perf2.F
++++ b/global/testing/mir_perf2.F
+@@ -124,7 +124,7 @@ c
+ & ' accumulate'
+ write(6,*)' bytes dim sec MB/s sec MB/s',
+ & ' sec MB/s'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -163,7 +163,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, chunk(loop), tg,
+ & 1d-6*bytes/tg,tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+@@ -377,7 +377,7 @@ c
+ & ' accumulate'
+ write(6,*)' bytes dim sec MB/s sec MB/s',
+ & ' sec MB/s'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -416,7 +416,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, chunk(loop), tg,
+ & 1d-6*bytes/tg,tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+diff --git a/global/testing/perfmod.F b/global/testing/perfmod.F
+index ec3fe37..7770be7 100644
+--- a/global/testing/perfmod.F
++++ b/global/testing/perfmod.F
+@@ -119,7 +119,7 @@ c
+
+ write(6,*)'bytes loop get put',
+ & ' accumulate'
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ call ga_sync()
+ c
+@@ -157,7 +157,7 @@ c
+ if (me .eq. 0) then
+ write(6,77)bytes, count, tg, 1d-6*bytes/tg,
+ & tp, 1d-6*bytes/tp, ta, 1d-6*bytes/ta
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ enddo
+ c
+diff --git a/global/testing/sprsmatmult.F b/global/testing/sprsmatmult.F
+index 3fdeb3f..3682c3b 100644
+--- a/global/testing/sprsmatmult.F
++++ b/global/testing/sprsmatmult.F
+@@ -108,7 +108,7 @@ c
+ print *,'Comparing distributed multiply with serial multiply'
+ print *
+ #endif
+- call flush(6)
++ call F77_FLUSH(6)
+ endif
+ c
+ c*** Initialize the MA package
diff --git a/var/spack/repos/builtin/packages/globalarrays/package.py b/var/spack/repos/builtin/packages/globalarrays/package.py
new file mode 100644
index 0000000000..2473be5620
--- /dev/null
+++ b/var/spack/repos/builtin/packages/globalarrays/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at IBM.
+#
+# This file is part of Spack.
+# Created by Serban Maerean, serban@ibm.com, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Globalarrays(CMakePackage):
+ """The Global Arrays (GA) toolkit provides a shared memory style
+ programming environment in the context of distributed array data
+ structures.
+ """
+
+ homepage = "http://hpc.pnl.gov/globalarrays/"
+ url = "https://github.com/GlobalArrays/ga"
+
+ version('master', git='https://github.com/GlobalArrays/ga', branch='master')
+
+ variant('i8', default=False, description='Build with 8 byte integers')
+
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('mpi')
+
+ patch('ibm-xl.patch', when='%xl')
+ patch('ibm-xl.patch', when='%xl_r')
+
+ def cmake_args(self):
+ options = []
+
+ options.extend([
+ '-DENABLE_FORTRAN=ON',
+ '-DENABLE_BLAS=ON',
+ ])
+
+ if self.compiler.name == 'xl' or self.compiler.name == 'xl_r':
+ # use F77 compiler if IBM XL
+ options.extend([
+ '-DCMAKE_Fortran_COMPILER=%s' % self.compiler.f77,
+ '-DCMAKE_Fortran_FLAGS=-qzerosize'
+ ])
+
+ if "+i8" in self.spec:
+ options.extend(['-DENABLE_I8=ON'])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/globus-toolkit/package.py b/var/spack/repos/builtin/packages/globus-toolkit/package.py
index 5cec13a5af..05944b2dd5 100644
--- a/var/spack/repos/builtin/packages/globus-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/globus-toolkit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class GlobusToolkit(Package):
+class GlobusToolkit(AutotoolsPackage):
"""The Globus Toolkit is an open source software toolkit used for building
grids"""
@@ -33,8 +33,3 @@ class GlobusToolkit(Package):
url = "http://toolkit.globus.org/ftppub/gt6/installers/src/globus_toolkit-6.0.1470089956.tar.gz"
version('6.0.1470089956', 'b77fe3cc5a5844df995688b0e630d077')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/glog/package.py b/var/spack/repos/builtin/packages/glog/package.py
index 14f042732b..cc62b1250e 100644
--- a/var/spack/repos/builtin/packages/glog/package.py
+++ b/var/spack/repos/builtin/packages/glog/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,16 @@
from spack import *
-class Glog(Package):
+class Glog(CMakePackage):
"""C++ implementation of the Google logging module."""
homepage = "https://github.com/google/glog"
- url = "https://github.com/google/glog/archive/v0.3.3.tar.gz"
+ url = "https://github.com/google/glog/archive/v0.3.4.tar.gz"
+ version('0.3.4', 'df92e05c9d02504fb96674bc776a41cb')
version('0.3.3', 'c1f86af27bd9c73186730aa957607ed0')
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
+ depends_on('gflags')
+
+ def cmake_args(self):
+ return ['-DBUILD_SHARED_LIBS=TRUE']
diff --git a/var/spack/repos/builtin/packages/glpk/package.py b/var/spack/repos/builtin/packages/glpk/package.py
index 1b52643e59..7693ba7b9a 100644
--- a/var/spack/repos/builtin/packages/glpk/package.py
+++ b/var/spack/repos/builtin/packages/glpk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,30 +25,30 @@
from spack import *
-class Glpk(Package):
+class Glpk(AutotoolsPackage):
"""The GLPK (GNU Linear Programming Kit) package is intended for solving
- large-scale linear programming (LP), mixed integer programming
- (MIP), and other related problems. It is a set of routines written
- in ANSI C and organized in the form of a callable library
-
+ large-scale linear programming (LP), mixed integer programming
+ (MIP), and other related problems. It is a set of routines written
+ in ANSI C and organized in the form of a callable library.
"""
+
homepage = "https://www.gnu.org/software/glpk"
url = "http://ftp.gnu.org/gnu/glpk/glpk-4.57.tar.gz"
+ version('4.61', '3ce3e224a8b6e75a1a0b378445830f21')
version('4.57', '237531a54f73155842f8defe51aedb0f')
- variant('gmp', default=False,
- description='Activates support for GMP library')
+ variant(
+ 'gmp', default=False, description='Activates support for GMP library'
+ )
depends_on('gmp', when='+gmp')
- def install(self, spec, prefix):
+ def configure_args(self):
- options = ['--prefix=%s' % prefix]
+ options = []
- if '+gmp' in spec:
+ if '+gmp' in self.spec:
options.append('--with-gmp')
- configure(*options)
- make()
- make("install")
+ return options
diff --git a/var/spack/repos/builtin/packages/glproto/package.py b/var/spack/repos/builtin/packages/glproto/package.py
index 462e529067..eaaabc884b 100644
--- a/var/spack/repos/builtin/packages/glproto/package.py
+++ b/var/spack/repos/builtin/packages/glproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Glproto(Package):
+class Glproto(AutotoolsPackage):
"""OpenGL Extension to the X Window System.
This extension defines a protocol for the client to send 3D rendering
@@ -38,8 +38,3 @@ class Glproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/gmake/package.py b/var/spack/repos/builtin/packages/gmake/package.py
index ca296350a4..29042eaad6 100644
--- a/var/spack/repos/builtin/packages/gmake/package.py
+++ b/var/spack/repos/builtin/packages/gmake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,33 @@
from spack import *
-class Gmake(Package):
- """GNU Make."""
+class Gmake(AutotoolsPackage):
+ """GNU Make is a tool which controls the generation of executables and
+ other non-source files of a program from the program's source files."""
- homepage = "http://gnu.org/gnu/make"
- url = "ftp://ftp.gnu.org/gnu/make/make-4.0.tar.gz"
+ homepage = "https://www.gnu.org/software/make/"
+ url = "https://ftp.gnu.org/gnu/make/make-4.2.1.tar.gz"
- version('4.0', 'b5e558f981326d9ca1bfdb841640721a')
+ version('4.2.1', '7d0dcb6c474b258aab4d54098f2cf5a7')
+ version('4.0', 'b5e558f981326d9ca1bfdb841640721a')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
+ variant('guile', default=False, description='Support GNU Guile for embedded scripting')
- make()
- make('install')
- with working_dir(prefix.bin):
+ depends_on('guile', when='+guile')
+
+ build_directory = 'spack-build'
+
+ def configure_args(self):
+ args = []
+
+ if '+guile' in self.spec:
+ args.append('--with-guile')
+ else:
+ args.append('--without-guile')
+
+ return args
+
+ @run_after('install')
+ def symlink_gmake(self):
+ with working_dir(self.prefix.bin):
symlink('make', 'gmake')
diff --git a/var/spack/repos/builtin/packages/gmap-gsnap/package.py b/var/spack/repos/builtin/packages/gmap-gsnap/package.py
new file mode 100644
index 0000000000..7db09fb72d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gmap-gsnap/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class GmapGsnap(AutotoolsPackage):
+ """GMAP: A Genomic Mapping and Alignment Program for
+ mRNA and EST Sequences, and GSNAP: Genomic Short-read
+ Nucleotide Alignment Program"""
+
+ homepage = "http://research-pub.gene.com/gmap/"
+ url = "http://research-pub.gene.com/gmap/src/gmap-gsnap-2017-06-16.tar.gz"
+
+ version('2017-06-16', 'fcc91b8bdd4bf12ae3124de0c00db0c0')
diff --git a/var/spack/repos/builtin/packages/gmime/package.py b/var/spack/repos/builtin/packages/gmime/package.py
new file mode 100644
index 0000000000..d5d0e44d60
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gmime/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gmime(AutotoolsPackage):
+ """GMime is a C/C++ library which may be used for the creation and
+ parsing of messages using the Multipurpose Internet Mail Extension (MIME).
+ """
+
+ homepage = "http://spruce.sourceforge.net/gmime/"
+ url = "https://download.gnome.org/sources/gmime/2.6/gmime-2.6.23.tar.xz"
+
+ version('2.6.23', '247072236d84bd0fbbff299d69bdf333')
+
+ depends_on('glib@2.18.0:')
+ depends_on('libgpg-error')
diff --git a/var/spack/repos/builtin/packages/gmp/package.py b/var/spack/repos/builtin/packages/gmp/package.py
index 45e8b8a452..0367a35200 100644
--- a/var/spack/repos/builtin/packages/gmp/package.py
+++ b/var/spack/repos/builtin/packages/gmp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class Gmp(AutotoolsPackage):
on signed integers, rational numbers, and floating-point numbers."""
homepage = "https://gmplib.org"
- url = "https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2"
+ url = "https://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2"
version('6.1.2', '8ddbb26dc3bd4e2302984debba1406a5')
version('6.1.1', '4c175f86e11eb32d8bf9872ca3a8e11d')
@@ -38,8 +38,15 @@ class Gmp(AutotoolsPackage):
version('6.0.0a', 'b7ff2d88cae7f8085bd5006096eed470')
version('6.0.0', '6ef5869ae735db9995619135bd856b84')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
depends_on('m4', type='build')
+ # gmp's configure script seems to be broken; it sometimes misdetects
+ # shared library support. Regenerating it fixes the issue.
+ force_autoreconf = True
+
def configure_args(self):
args = ['--enable-cxx']
# This flag is necessary for the Intel build to pass `make check`
diff --git a/var/spack/repos/builtin/packages/gmsh/package.py b/var/spack/repos/builtin/packages/gmsh/package.py
index fffd448443..94794ed8a5 100644
--- a/var/spack/repos/builtin/packages/gmsh/package.py
+++ b/var/spack/repos/builtin/packages/gmsh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,14 +38,14 @@ class Gmsh(CMakePackage):
homepage = 'http://gmsh.info'
url = 'http://gmsh.info/src/gmsh-2.11.0-source.tgz'
+ version('3.0.1', '830b5400d9f1aeca79c3745c5c9fdaa2900cdb2fa319b664a5d26f7e615c749f')
+ version('2.16.0', 'e829eaf32ea02350a385202cc749341f2a3217c464719384b18f653edd028eea')
version('2.15.0', '992a4b580454105f719f5bc05441d3d392ab0b4b80d4ea07b61ca3bdc974070a')
version('2.12.0', '7fbd2ec8071e79725266e72744d21e902d4fe6fa9e7c52340ad5f4be5c159d09')
version('2.11.0', 'f15b6e7ac9ca649c9a74440e1259d0db')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds the library in debug mode')
variant('mpi', default=True,
description='Builds MPI support for parser and solver')
variant('fltk', default=False,
@@ -87,7 +87,7 @@ class Gmsh(CMakePackage):
options.append('-DENABLE_OS_SPECIFIC_INSTALL=OFF')
# Make sure GMSH picks up correct BlasLapack by providing linker flags
- blas_lapack = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ blas_lapack = spec['lapack'].libs + spec['blas'].libs
options.append(
'-DBLAS_LAPACK_LIBRARIES={0}'.format(blas_lapack.ld_flags))
@@ -126,9 +126,6 @@ class Gmsh(CMakePackage):
# Builds and installs static library
options.append('-DENABLE_BUILD_LIB:BOOL=ON')
- if '+debug' in spec:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
-
if '+mpi' in spec:
options.append('-DENABLE_MPI:BOOL=ON')
diff --git a/var/spack/repos/builtin/packages/gnat/package.py b/var/spack/repos/builtin/packages/gnat/package.py
new file mode 100644
index 0000000000..843d81d9e4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gnat/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gnat(MakefilePackage):
+ """The GNAT Ada compiler. Ada is a modern programming language designed
+ for large, long-lived applications - and embedded systems in particular
+ - where reliability and efficiency are essential."""
+
+ homepage = "https://libre.adacore.com/tools/gnat-gpl-edition/"
+
+ # NOTE: This is a binary installer intended to bootstrap GCC's Ada compiler
+
+ # There may actually be a way to install GNAT from source. If you go to
+ # the GNAT Download page: https://libre.adacore.com/download/
+ # select "Free Software or Academic Development", select your platform,
+ # expand GNAT Ada, and expand Sources, you'll see links to download the
+ # source code for GNAT and all of its dependencies. Most of these
+ # dependencies are already in Spack.
+
+ # This is the GPL release for Linux x86-64
+ version('2016', '9741107cca1a6a4ddb0d5e8de824a90c', extension='tar.gz',
+ url="http://mirrors.cdn.adacore.com/art/5739cefdc7a447658e0b016b")
+
+ phases = ['install']
+
+ def install(self, spec, prefix):
+ make('ins-all', 'prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/gnu-prolog/package.py b/var/spack/repos/builtin/packages/gnu-prolog/package.py
index 1e0487c654..819e57498a 100644
--- a/var/spack/repos/builtin/packages/gnu-prolog/package.py
+++ b/var/spack/repos/builtin/packages/gnu-prolog/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/gnupg/package.py b/var/spack/repos/builtin/packages/gnupg/package.py
new file mode 100644
index 0000000000..756f8404bc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gnupg/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Gnupg(AutotoolsPackage):
+ """GnuPG is a complete and free implementation of the OpenPGP
+ standard as defined by RFC4880 """
+
+ homepage = "https://gnupg.org/index.html"
+ url = "https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.1.21.tar.bz2"
+
+ version('2.1.21', '685ebf4c3a7134ba0209c96b18b2f064')
+
+ depends_on('libgcrypt')
+ depends_on('libassuan')
+ depends_on('libksba')
+ depends_on('libgpg-error')
+ depends_on('npth')
+
+ def configure_args(self):
+ args = ['--with-npth-prefix=%s' % self.spec['npth'].prefix,
+ '--with-libgcrypt-prefix=%s' % self.spec['libgcrypt'].prefix,
+ '--with-libksba-prefixx=%s' % self.spec['libksba'].prefix,
+ '--with-libassuan-prefix=%s' % self.spec['libassuan'].prefix,
+ '--with-libpgp-error-prefix=%s' %
+ self.spec['libgpg-error'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/gnuplot/package.py b/var/spack/repos/builtin/packages/gnuplot/package.py
index 600b6d285f..1af9cbfb08 100644
--- a/var/spack/repos/builtin/packages/gnuplot/package.py
+++ b/var/spack/repos/builtin/packages/gnuplot/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,13 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-
from spack import *
-
import os
-class Gnuplot(Package):
+class Gnuplot(AutotoolsPackage):
"""Gnuplot is a portable command-line driven graphing utility for Linux,
OS/2, MS Windows, OSX, VMS, and many other platforms. The source
code is copyrighted but freely distributed (i.e., you don't have
@@ -41,26 +39,104 @@ class Gnuplot(Package):
"""
homepage = "http://www.gnuplot.info"
- url = "http://downloads.sourceforge.net/project/gnuplot/gnuplot/5.0.1/gnuplot-5.0.1.tar.gz"
+ url = "http://downloads.sourceforge.net/project/gnuplot/gnuplot/5.0.6/gnuplot-5.0.6.tar.gz"
+ # There is a conflict in term.h between gnuplot and ncurses, which is a
+ # dependency of readline. Fix it with a small patch
+ patch('term_include.patch')
+
+ version('5.2.0', '0bd8f9af84c0ad2fa9de16772c366416')
+ version('5.0.7', '8eaafddb0b12795f82ed6dd2a6ebbe80')
+ version('5.0.6', '8ec46520a86a61163a701b00404faf1a')
+ version('5.0.5', 'c5e96fca73afbee4f57cbc1bfce6b3b8')
version('5.0.1', '79b4f9e203728f76b60b28bcd402d3c7')
+ variant('wx', default=False,
+ description='Activates wxWidgets terminal')
+ variant('gd', default=True,
+ description='Activates gd based terminal')
+ variant('cairo', default=True,
+ description='Activates cairo based terminal')
+ variant('X', default=False,
+ description='Build with X11')
+ variant('libcerf', default=True,
+ description='Build with libcerf support')
+ variant('pbm', default=False,
+ description='Enable PBM (Portable Bit Map) and other older bitmap terminals') # NOQA: ignore=E501
+
+ # required dependencies
depends_on('readline')
- depends_on('libcerf')
- depends_on('libgd')
- depends_on('cairo')
- depends_on('pango')
+ depends_on('pkg-config', type='build')
+ depends_on('libxpm')
+ depends_on('libiconv')
+
+ # optional dependencies:
+ depends_on('libcerf', when='+libcerf')
+ depends_on('libgd', when='+gd')
+ depends_on('cairo@1.2:', when='+cairo')
depends_on('wx', when='+wx')
+ depends_on('pango@1.10:', when='+wx')
+ depends_on('pango@1.10:', when='+cairo')
+
+ def configure_args(self):
+ # see https://github.com/Homebrew/homebrew-core/blob/master/Formula/gnuplot.rb
+ # and https://github.com/macports/macports-ports/blob/master/math/gnuplot/Portfile
+ spec = self.spec
+ options = [
+ '--disable-dependency-tracking',
+ '--disable-silent-rules',
+ # Per upstream: "--with-tutorial is horribly out of date."
+ '--without-tutorial',
+ '--with-readline=%s' % spec['readline'].prefix
+ ]
+
+ if '+pbm' in spec:
+ options.append('--with-bitmap-terminals')
+ else:
+ options.append('--without-bitmap-terminals')
+
+ if '+X' in spec:
+ # It seems there's an open bug for wxWidgets support
+ # See : http://sourceforge.net/p/gnuplot/bugs/1694/
+ os.environ['TERMLIBS'] = '-lX11'
+ options.append('--with-x')
+ else:
+ options.append('--without-x')
+
+ if '+wx' in spec:
+ options.append('--with-wx=%s' % spec['wx'].prefix)
+ else:
+ options.append('--disable-wxwidgets')
+
+ if '+gd' in spec:
+ options.append('--with-gd=%s' % spec['libgd'].prefix)
+ else:
+ options.append('--without-gd')
+
+ if '+cairo' in spec:
+ options.append('--with-cairo')
+ else:
+ options.append('--without-cairo')
+
+ if '+libcerf' in spec:
+ options.append('--with-libcerf')
+ else:
+ options.append('--without-libcerf')
+
+ # TODO: Enable pdflib-based pdf terminal
+ # '--with-pdf=%s' % spec['pdflib-lite'].prefix (or pdflib)
+ options.append('--without-pdf')
+
+ # TODO: Enable qt terminal qt@5.7
+ options.append('--with-qt=no')
- variant('wx', default=False, description='Activates wxWidgets terminal')
+ # TODO: Enable lua-based terminals
+ options.append('--without-lua')
- def install(self, spec, prefix):
- # It seems there's an open bug for wxWidgets support
- # See : http://sourceforge.net/p/gnuplot/bugs/1694/
- os.environ['TERMLIBS'] = '-lX11'
+ # TODO: --with-latex
+ options.append('--without-latex')
- options = ['--prefix=%s' % prefix]
+ # TODO: --with-aquaterm depends_on('aquaterm')
+ options.append('--without-aquaterm')
- configure(*options)
- make()
- make("install")
+ return options
diff --git a/var/spack/repos/builtin/packages/gnuplot/term_include.patch b/var/spack/repos/builtin/packages/gnuplot/term_include.patch
new file mode 100644
index 0000000000..64145a68c6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gnuplot/term_include.patch
@@ -0,0 +1,11 @@
+--- a/docs/doc2x.h 2017-03-10 13:55:51.719850190 -0500
++++ b/docs/doc2x.h 2017-03-10 13:56:17.569826925 -0500
+@@ -69,7 +69,7 @@
+ # ifdef ALL_TERM_DOC
+ # include "allterm.h"
+ # else
+-# include "term.h"
++# include "src/term.h"
+ # endif
+ NULL
+ };
diff --git a/var/spack/repos/builtin/packages/gnutls/package.py b/var/spack/repos/builtin/packages/gnutls/package.py
index 5f7b0daf9b..7f41eb3204 100644
--- a/var/spack/repos/builtin/packages/gnutls/package.py
+++ b/var/spack/repos/builtin/packages/gnutls/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,23 +25,66 @@
from spack import *
-class Gnutls(Package):
- """GnuTLS is a secure communications library implementing the SSL,
- TLS and DTLS protocols and technologies around them. It
- provides a simple C language application programming interface
- (API) to access the secure communications protocols as well as
- APIs to parse and write X.509, PKCS #12, OpenPGP and other
- required structures. It is aimed to be portable and efficient
- with focus on security and interoperability."""
+class Gnutls(AutotoolsPackage):
+ """GnuTLS is a secure communications library implementing the SSL, TLS
+ and DTLS protocols and technologies around them. It provides a simple C
+ language application programming interface (API) to access the secure
+ communications protocols as well as APIs to parse and write X.509, PKCS
+ #12, OpenPGP and other required structures. It is aimed to be portable
+ and efficient with focus on security and interoperability."""
homepage = "http://www.gnutls.org"
- url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/gnutls-3.3.9.tar.xz"
+ url = "https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/gnutls-3.5.13.tar.xz"
- version('3.3.9', 'ff61b77e39d09f1140ab5a9cf52c58b6')
+ version('3.5.13', '4fd41ad86572933c2379b4cc321a0959')
+ version('3.5.10', '336c03a71ba90184ffd0388075dde504')
+ version('3.5.9', '0ab25eb6a1509345dd085bc21a387951')
+ version('3.3.9', 'ff61b77e39d09f1140ab5a9cf52c58b6')
- depends_on("nettle")
+ variant('zlib', default=True, description='Enable zlib compression support')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ # Note that version 3.3.9 of gnutls doesn't support nettle 3.0.
+ depends_on('nettle@:2.9', when='@3.3.9')
+ depends_on('nettle', when='@3.5:')
+ depends_on('zlib', when='+zlib')
+ depends_on('gettext')
+
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ build_directory = 'spack-build'
+
+ def url_for_version(self, version):
+ url = "https://www.gnupg.org/ftp/gcrypt/gnutls/v{0}/gnutls-{1}.tar.xz"
+ return url.format(version.up_to(2), version)
+
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ '--enable-static',
+ ]
+
+ if spec.satisfies('@3.5:'):
+ # use shipped libraries, might be turned into variants
+ args.append('--with-included-libtasn1')
+ args.append('--with-included-unistring')
+ args.append('--without-p11-kit') # p11-kit@0.23.1: ...
+
+ if '+zlib' in spec:
+ args.append('--with-zlib')
+ else:
+ args.append('--without-zlib')
+
+ if self.run_tests:
+ args.extend([
+ '--enable-tests',
+ '--enable-valgrind-tests',
+ '--enable-full-test-suite',
+ ])
+ else:
+ args.extend([
+ '--disable-tests',
+ '--disable-valgrind-tests',
+ '--disable-full-test-suite',
+ ])
+
+ return args
diff --git a/var/spack/repos/builtin/packages/go-bootstrap/package.py b/var/spack/repos/builtin/packages/go-bootstrap/package.py
index b497144f2f..0228aa74d9 100644
--- a/var/spack/repos/builtin/packages/go-bootstrap/package.py
+++ b/var/spack/repos/builtin/packages/go-bootstrap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -46,12 +46,12 @@ class GoBootstrap(Package):
# See: https://golang.org/doc/install/source#go14 and
# https://github.com/golang/go/issues/17545 and
# https://github.com/golang/go/issues/16352
+ version('1.4-bootstrap-20170531', 'd2cc61cb9f829b3510ee39c0c5568014',
+ url='https://storage.googleapis.com/golang/go1.4-bootstrap-20170531.tar.gz')
version('1.4-bootstrap-20161024', '76e42c8152e8560ded880a6d1d1f53cb',
url='https://storage.googleapis.com/golang/go1.4-bootstrap-20161024.tar.gz')
- variant('test', default=True, description='Build and run tests as part of the build.')
-
- provides('golang@:1.4-bootstrap-20161024')
+ provides('golang@:1.4-bootstrap-20170531')
depends_on('git', type=('build', 'link', 'run'))
@@ -67,15 +67,11 @@ class GoBootstrap(Package):
r'# \1\2\3',
)
- @when('@1.5.0:')
- def patch(self):
- pass
-
def install(self, spec, prefix):
env['CGO_ENABLED'] = '0'
bash = which('bash')
with working_dir('src'):
- bash('{0}.bash'.format('all' if '+test' in spec else 'make'))
+ bash('{0}.bash'.format('all' if self.run_tests else 'make'))
try:
os.makedirs(prefix)
@@ -87,7 +83,7 @@ class GoBootstrap(Package):
else:
shutil.copy2(f, os.path.join(prefix, f))
- def setup_dependent_environment(self, spack_env, run_env, dep_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('GOROOT_BOOTSTRAP', self.spec.prefix)
def setup_environment(self, spack_env, run_env):
diff --git a/var/spack/repos/builtin/packages/go/package.py b/var/spack/repos/builtin/packages/go/package.py
index ad1436c0c3..b112ebe7d8 100644
--- a/var/spack/repos/builtin/packages/go/package.py
+++ b/var/spack/repos/builtin/packages/go/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,6 +42,11 @@ from spack import *
#
# - on CentOS 7 systems (and possibly others) you need to have the
# glibc package installed or various static cgo tests fail.
+#
+# - When building on a *large* machine (144 cores, 1.5TB RAM) I need
+# to run `ulimit -u 8192` to bump up the max number of user processes.
+# Failure to do so results in an explosion in one of the tests and an
+# epic stack trace....
class Go(Package):
@@ -51,11 +56,16 @@ class Go(Package):
extendable = True
+ version('1.9.2', '44105c865a1a810464df79233a05a568')
+ version('1.9.1', '27bce1ffb05f4f6bd90d90081e5d4169')
+ version('1.9', 'da2d44ea384076efec43ee1f8b7d45d2')
+ version('1.8.3', '64e9380e07bba907e26a00cf5fcbe77e')
+ version('1.8.1', '409dd21e7347dd1ea9efe64a700073cc')
+ version('1.8', '7743960c968760437b6e39093cfe6f67')
+ version('1.7.5', '506de2d870409e9003e1440bcfeb3a65')
version('1.7.4', '49c1076428a5d3b5ad7ac65233fcca2f')
version('1.6.4', 'b023240be707b34059d2c114d3465c92')
- variant('test', default=True, description='Build and run tests as part of the build.')
-
provides('golang')
depends_on('git', type=('build', 'link', 'run'))
@@ -67,7 +77,8 @@ class Go(Package):
patch('time_test.patch', when='@1.6.4:1.7.4')
# https://github.com/golang/go/issues/17986
- patch('misc-cgo-testcshared.patch', level=0, when='@1.6.4:1.7.4')
+ # The fix for this issue has been merged into the 1.8 tree.
+ patch('misc-cgo-testcshared.patch', level=0, when='@1.6.4:1.7.5')
# NOTE: Older versions of Go attempt to download external files that have
# since been moved while running the test suite. This patch modifies the
@@ -81,17 +92,10 @@ class Go(Package):
r'# \1\2\3',
)
- @when('@1.5.0:')
- def patch(self):
- pass
-
- def url_for_version(self, version):
- return "https://storage.googleapis.com/golang/go{0}.src.tar.gz".format(version)
-
def install(self, spec, prefix):
bash = which('bash')
with working_dir('src'):
- bash('{0}.bash'.format('all' if '+test' in spec else 'make'))
+ bash('{0}.bash'.format('all' if self.run_tests else 'make'))
try:
os.makedirs(prefix)
@@ -105,8 +109,12 @@ class Go(Package):
def setup_environment(self, spack_env, run_env):
spack_env.set('GOROOT_FINAL', self.spec.prefix)
+ # We need to set CC/CXX_FOR_TARGET, otherwise cgo will use the
+ # internal Spack wrappers and fail.
+ spack_env.set('CC_FOR_TARGET', self.compiler.cc)
+ spack_env.set('CXX_FOR_TARGET', self.compiler.cxx)
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""Called before go modules' install() methods.
In most cases, extensions will only need to set GOPATH and use go::
@@ -117,15 +125,15 @@ class Go(Package):
shutil.copytree('bin', os.path.join(prefix, '/bin'))
"""
# Add a go command/compiler for extensions
- module.go = Executable(join_path(self.spec.prefix.bin, 'go'))
+ module.go = self.spec['go'].command
- def setup_dependent_environment(self, spack_env, run_env, ext_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
if os.environ.get('GOROOT', False):
tty.warn('GOROOT is set, this is not recommended')
path_components = []
# Set GOPATH to include paths of dependencies
- for d in ext_spec.traverse():
+ for d in dependent_spec.traverse():
if d.package.extends(self.spec):
path_components.append(d.prefix)
@@ -134,4 +142,4 @@ class Go(Package):
# Allow packages to find this when using module or dotkit
run_env.prepend_path('GOPATH', ':'.join(
- [ext_spec.prefix] + path_components))
+ [dependent_spec.prefix] + path_components))
diff --git a/var/spack/repos/builtin/packages/gobject-introspection/package.py b/var/spack/repos/builtin/packages/gobject-introspection/package.py
index 952ec21661..ec71e3cddd 100644
--- a/var/spack/repos/builtin/packages/gobject-introspection/package.py
+++ b/var/spack/repos/builtin/packages/gobject-introspection/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from spack import spack_root
class GobjectIntrospection(Package):
@@ -31,21 +32,52 @@ class GobjectIntrospection(Package):
library with support for multiple output"""
homepage = "https://wiki.gnome.org/Projects/GObjectIntrospection"
- url = "http://ftp.gnome.org/pub/gnome/sources/gobject-introspection/1.48/gobject-introspection-1.48.0.tar.xz"
+ url = "http://ftp.gnome.org/pub/gnome/sources/gobject-introspection/1.49/gobject-introspection-1.49.2.tar.xz"
+ version('1.49.2', 'c47a76b05b2d8438089f519922180747')
version('1.48.0', '01301fa9019667d48e927353e08bc218')
+ depends_on("glib@2.49.2:", when="@1.49.2:")
# version 1.48.0 build fails with glib 2.49.4
- depends_on("glib@2.48.1")
+ depends_on("glib@2.48.1", when="@1.48.0")
depends_on("python")
depends_on("cairo")
depends_on("bison", type="build")
depends_on("flex", type="build")
+ depends_on("pkg-config@0.9.0:", type="build")
+
+ # GobjectIntrospection does not build with sed from darwin:
+ depends_on('sed', when='platform=darwin', type='build')
+
+ # This package creates several scripts from
+ # toosl/g-ir-tool-template.in. In their original form these
+ # scripts end up with a sbang line like
+ #
+ # `#!/usr/bin/env /path/to/spack/python`.
+ #
+ # These scripts are generated and then used as part of the build
+ # (other packages also use the scripts after they've been
+ # installed).
+ #
+ # The path to the spack python can become too long. Because these
+ # tools are used as part of the build, the normal hook that fixes
+ # this problem can't help us.
+ # This package fixes the problem in two steps:
+ # - it rewrites the g-ir-tool-template so that its sbang line
+ # refers directly to spack's python (filter_file step below); and
+ # - it patches the Makefile.in so that the generated Makefile has an
+ # extra sed expression in its TOOL_SUBSTITUTION that results in
+ # an `#!/bin/bash /path/to/spack/bin/sbang` unconditionally being
+ # inserted into the scripts as they're generated.
+ patch("sbang.patch")
def install(self, spec, prefix):
configure("--prefix=%s" % prefix)
# we need to filter this file to avoid an overly long hashbang line
- filter_file('@PYTHON@', 'python',
+ filter_file('#!/usr/bin/env @PYTHON@', '#!@PYTHON@',
'tools/g-ir-tool-template.in')
make()
make("install")
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('SPACK_SBANG', "%s/bin/sbang" % spack_root)
diff --git a/var/spack/repos/builtin/packages/gobject-introspection/sbang.patch b/var/spack/repos/builtin/packages/gobject-introspection/sbang.patch
new file mode 100644
index 0000000000..7d4b78a930
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gobject-introspection/sbang.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in 2016-09-13 01:23:59.000000000 -0700
++++ b/Makefile.in 2017-02-22 10:26:31.824509512 -0800
+@@ -1475,7 +1475,7 @@
+ gir_DATA = $(STATIC_GIRSOURCES) $(SUBSTITUTED_GIRSOURCES) $(BUILT_GIRSOURCES)
+ typelibsdir = $(libdir)/girepository-1.0
+ typelibs_DATA = $(gir_DATA:.gir=.typelib)
+-TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON\@,$(PYTHON),
++TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON\@,$(PYTHON), -e "1i\#!/bin/bash $(SPACK_SBANG)"
+ g_ir_compiler_SOURCES = tools/compiler.c
+ g_ir_compiler_CPPFLAGS = -DGIREPO_DEFAULT_SEARCH_PATH="\"$(libdir)\"" \
+ -I$(top_srcdir)/girepository
diff --git a/var/spack/repos/builtin/packages/googletest/package.py b/var/spack/repos/builtin/packages/googletest/package.py
index 6f3cafec06..5eab658bac 100644
--- a/var/spack/repos/builtin/packages/googletest/package.py
+++ b/var/spack/repos/builtin/packages/googletest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,24 +25,41 @@
from spack import *
-class Googletest(Package):
+class Googletest(CMakePackage):
"""Google test framework for C++. Also called gtest."""
homepage = "https://github.com/google/googletest"
url = "https://github.com/google/googletest/tarball/release-1.7.0"
+ version('1.8.0', 'd2edffbe844902d942c31db70c7cfec2')
version('1.7.0', '5eaf03ed925a47b37c8e1d559eb19bc4')
+ version('1.6.0', '90407321648ab25b067fcd798caf8c78')
- depends_on("cmake", type='build')
+ variant('gmock', default=False, description='Build with gmock')
+ conflicts('+gmock', when='@:1.7.0')
- def install(self, spec, prefix):
- which('cmake')('.', *std_cmake_args)
-
- make()
+ def cmake_args(self):
+ spec = self.spec
+ if '@1.8.0:' in spec:
+ # New style (contains both Google Mock and Google Test)
+ options = ['-DBUILD_GTEST=ON']
+ if '+gmock' in spec:
+ options.append('-DBUILD_GMOCK=ON')
+ else:
+ options.append('-DBUILD_GMOCK=OFF')
+ else:
+ # Old style (contains only GTest)
+ options = []
+ return options
- # Google Test doesn't have a make install
- # We have to do our own install here.
- install_tree('include', prefix.include)
+ @when('@:1.7.0')
+ def install(self, spec, prefix):
+ """Make the install targets"""
+ with working_dir(self.build_directory):
+ # Google Test doesn't have a make install
+ # We have to do our own install here.
+ install_tree(join_path(self.stage.source_path, 'include'),
+ prefix.include)
- mkdirp(prefix.lib)
- install('./libgtest.a', '%s' % prefix.lib)
- install('./libgtest_main.a', '%s' % prefix.lib)
+ mkdirp(prefix.lib)
+ install('libgtest.a', prefix.lib)
+ install('libgtest_main.a', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/gource/package.py b/var/spack/repos/builtin/packages/gource/package.py
index dda00420a3..3d9ddd1ff6 100644
--- a/var/spack/repos/builtin/packages/gource/package.py
+++ b/var/spack/repos/builtin/packages/gource/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,11 @@
from spack import *
-class Gource(Package):
+class Gource(AutotoolsPackage):
"""Software version control visualization."""
homepage = "http://gource.io"
- url = "https://github.com/acaudwell/Gource/releases/download/gource-0.44/gource-0.44.tar.gz"
+ url = "https://github.com/acaudwell/Gource/releases/download/gource-0.44/gource-0.44.tar.gz"
version('0.44', '79cda1bfaad16027d59cce55455bfab88b57c69d')
@@ -49,15 +49,13 @@ class Gource(Package):
depends_on('sdl2')
depends_on('sdl2-image')
- def install(self, spec, prefix):
- make_args = ['--prefix=%s' % prefix,
- '--disable-dependency-tracking',
- '--without-x',
- '--with-boost=%s' % spec['boost'].prefix]
+ parallel = False
+ force_autoreconf = True
- autoreconf('-i')
- configure(*make_args)
- make()
-
- make("install",
- parallel=False)
+ def configure_args(self):
+ spec = self.spec
+ return [
+ '--disable-dependency-tracking',
+ '--without-x',
+ '--with-boost=%s' % spec['boost'].prefix
+ ]
diff --git a/var/spack/repos/builtin/packages/gperf/package.py b/var/spack/repos/builtin/packages/gperf/package.py
index 0ae07b33fc..e51f86fb4b 100644
--- a/var/spack/repos/builtin/packages/gperf/package.py
+++ b/var/spack/repos/builtin/packages/gperf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gperf(Package):
+class Gperf(AutotoolsPackage):
"""GNU gperf is a perfect hash function generator. For a given
list of strings, it produces a hash function and hash table, in
form of C or C++ code, for looking up a value depending on the
@@ -38,9 +38,4 @@ class Gperf(Package):
version('3.0.4', 'c1f1db32fb6598d6a93e6e88796a8632')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- # make('check') # fails tests
- make('install')
+ # NOTE: `make check` is known to fail tests
diff --git a/var/spack/repos/builtin/packages/gperftools/package.py b/var/spack/repos/builtin/packages/gperftools/package.py
index c6ca6c8057..c5653f696c 100644
--- a/var/spack/repos/builtin/packages/gperftools/package.py
+++ b/var/spack/repos/builtin/packages/gperftools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gperftools(Package):
+class Gperftools(AutotoolsPackage):
"""Google's fast malloc/free implementation, especially for
multi-threaded applications. Contains tcmalloc, heap-checker,
heap-profiler, and cpu-profiler.
@@ -40,8 +40,3 @@ class Gperftools(Package):
url="https://googledrive.com/host/0B6NtGsLhIcf7MWxMMF9JdTN3UVk/gperftools-2.3.tar.gz")
depends_on("libunwind")
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/grackle/package.py b/var/spack/repos/builtin/packages/grackle/package.py
index 7e3777158f..06689a3c4c 100644
--- a/var/spack/repos/builtin/packages/grackle/package.py
+++ b/var/spack/repos/builtin/packages/grackle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/gradle/package.py b/var/spack/repos/builtin/packages/gradle/package.py
new file mode 100644
index 0000000000..1d4112132a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gradle/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class Gradle(Package):
+ """Gradle is an open source build automation system that builds
+ upon the concepts of Apache Ant and Apache Maven and introduces
+ a Groovy-based domain-specific language (DSL) instead of the XML
+ form used by Apache Maven for declaring the project configuration.
+ Gradle uses a directed acyclic graph ("DAG") to determine the
+ order in which tasks can be run."""
+
+ homepage = "https://gradle.org"
+ url = "https://services.gradle.org/distributions/gradle-3.4-all.zip"
+
+ version('3.4', '5ae23dbd730dea22eb79cd97a072f06a')
+ version('3.3', '355f61e9c5d092d49577765ab3712dc0')
+ version('3.2.1', 'd44dba900ff364103e1f45c0f4b27bbe')
+ version('3.2', '296cb0e8a94bf72dd80ff7f0ebbf33ed')
+ version('3.1', '21b34a8c6bae67c729b37b4bd59cf9d0')
+ version('3.0', '0a7533599b86909c85b117e897501165')
+ version('2.14.1', 'f74b094923ae76f15f138d42373bb4bc')
+ version('2.14', 'e069dca1ec042665d61c85caeb4b32ed')
+ version('2.13', '8e7b31a8b8500752c3d80bd683d120c1')
+ version('2.12', '42cce06d8fe3a7125ac9b2a6dcc13927')
+ version('2.11', 'd99911cb2d0e86293e1793efc61cd642')
+ version('2.10', 'c5d8e57186b60c6d6485682f9907b257')
+ version('2.9', '1ee1a98b9a73c24633c14abf7f2a5189')
+ version('2.8', '9f0e8b0c195d7ea6335a724bc90622a9')
+ version('2.7', '77a77e364c1e2005c62909e6f51a434a')
+ version('2.6', '6947e873602b3668b2f3cd8e2dd228f1')
+ version('2.5', '17295dee02217cbe4f07b0d8bb72c467')
+ version('2.4', 'e1528eeca5c66579ebaee4c7c13bec2a')
+ version('2.3', '26c527220d869dbd6bb8cd903dd044e1')
+ version('2.2.1', '1107fbaf94ab7eae26d76d71b5f8db13')
+ version('2.2', '143830aea6bbed4ee77baa3dd191745f')
+ version('2.1', '603c07bc1fa737809ef0d9bc5b11960a')
+ version('2.0', '1d0853b99e6097ea3dea5f3604dc0846')
+ version('1.12', 'f957126d8e84d7ee7c859d02c2ae1fc1')
+ version('1.11', '36d2e8f0d5059c815496775af5f688b4')
+ version('1.10', 'c7ea1213cee7cf2272c5189dbc6f983b')
+ version('1.9', 'cc0a214649b283cc9594b5b82cb84ce5')
+ version('1.8', '1733ee0850618a73b54c9ba407de56b6')
+ version('1.5', '80e60e3b71f1745bbf06f41795ac2908')
+ version('1.4', 'cc934cab80bed0caccaa096b83cd4d67')
+ version('1.3', 'f6bce3798f4ee184926592e9a6893e0e')
+ version('1.2', 'c4741339370bd5e825b2abb9f2cb5b40')
+ version('1.1', 'afb37b4b35a30ebd5d758c333c147ce9')
+ version('1.0', '7697cb1e78c7e7362aa422d1790238bd')
+ version('0.9.2', '8574a445267ce3ad21558e300d854d24')
+ version('0.9.1', '8fa0acfbcdf01a8425c1f797f5079e21')
+ version('0.9', '9da1eb9fb32d9c303de5fd5568694634')
+ version('0.8', '73a0ed51b6ec00a7d3a9d242d51aae60')
+ version('0.7', 'a8417dbbd62f7013002cb55a44f12cc3')
+
+ depends_on('java')
+
+ def install(self, spec, prefix):
+ copy_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/grandr/package.py b/var/spack/repos/builtin/packages/grandr/package.py
index 8097d4fa01..14da4896f4 100644
--- a/var/spack/repos/builtin/packages/grandr/package.py
+++ b/var/spack/repos/builtin/packages/grandr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Grandr(Package):
+class Grandr(AutotoolsPackage):
"""RandR user interface using GTK+ libraries."""
homepage = "https://cgit.freedesktop.org/xorg/app/grandr"
@@ -36,10 +36,3 @@ class Grandr(Package):
depends_on('gtkplus@2.0.0:')
depends_on('gconf')
depends_on('xrandr@1.2:')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/graphlib/package.py b/var/spack/repos/builtin/packages/graphlib/package.py
index 1e0eb2bf3b..0fa82267d8 100644
--- a/var/spack/repos/builtin/packages/graphlib/package.py
+++ b/var/spack/repos/builtin/packages/graphlib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Graphlib(Package):
+class Graphlib(CMakePackage):
"""Library to create, manipulate, and export graphs Graphlib."""
homepage = "https://github.com/LLNL/graphlib"
url = "https://github.com/LLNL/graphlib/archive/v2.0.0.tar.gz"
@@ -33,10 +33,4 @@ class Graphlib(Package):
version('2.0.0', '43c6df84f1d38ba5a5dce0ae19371a70')
version('3.0.0', '625d199f97ab1b84cbc8daabcaee5e2a')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake(".", *std_cmake_args)
-
- make()
- make("install")
+ depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/graphmap/package.py b/var/spack/repos/builtin/packages/graphmap/package.py
new file mode 100644
index 0000000000..0e4a676588
--- /dev/null
+++ b/var/spack/repos/builtin/packages/graphmap/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Graphmap(MakefilePackage):
+ """A highly sensitive and accurate mapper for long, error-prone reads"""
+
+ homepage = "https://github.com/isovic/graphmap"
+ url = "https://github.com/isovic/graphmap/archive/v0.3.0.tar.gz"
+
+ version('0.3.0', git='https://github.com/isovic/graphmap.git', commit='eb8c75d68b03be95464318afa69b645a59f8f6b7')
+
+ def edit(self, spec, prefix):
+ mkdirp(prefix.bin)
+ makefile = FileFilter('Makefile')
+ makefile.filter('/usr/bin/graphmap', prefix.bin.graphmap)
+
+ def build(self, spec, prefix):
+ make('modules')
+ make()
diff --git a/var/spack/repos/builtin/packages/graphviz/package.py b/var/spack/repos/builtin/packages/graphviz/package.py
index 1bf6c70926..0ec35f09e8 100644
--- a/var/spack/repos/builtin/packages/graphviz/package.py
+++ b/var/spack/repos/builtin/packages/graphviz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,33 +29,132 @@ import shutil
class Graphviz(AutotoolsPackage):
"""Graph Visualization Software"""
- homepage = "http://www.graphviz.org"
- url = "http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz"
+ homepage = 'http://www.graphviz.org'
+ url = 'http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz'
version('2.38.0', '5b6a829b2ac94efcd5fa3c223ed6d3ae')
- # By default disable optional Perl language support to prevent build issues
- # related to missing Perl packages. If spack begins support for Perl in the
- # future, this package can be updated to depend_on('perl') and the
- # ncecessary devel packages.
- variant(
- 'perl', default=False,
- description='Enable if you need the optional Perl language bindings.')
+ # We try to leave language bindings enabled if they don't cause
+ # build issues or add dependencies.
+ variant('sharp', default=False,
+ description='Enable for optional sharp language bindings'
+ ' (not yet functional)')
+ variant('go', default=False,
+ description='Enable for optional go language bindings'
+ ' (not yet functional)')
+ variant('guile', default=False,
+ description='Enable for optional guile language bindings'
+ ' (not yet functional)')
+ variant('io', default=False,
+ description='Enable for optional io language bindings'
+ ' (not yet functional)')
+ variant('java', default=False, # Spack has no Java support
+ description='Enable for optional java language bindings')
+ variant('lua', default=False,
+ description='Enable for optional lua language bindings'
+ ' (not yet functional)')
+ variant('ocaml', default=False,
+ description='Enable for optional ocaml language bindings'
+ ' (not yet functional)')
+ variant('perl', default=False, # Spack has no Perl support
+ description='Enable for optional perl language bindings')
+ variant('php', default=False,
+ description='Enable for optional php language bindings'
+ ' (not yet functional)')
+ variant('python', default=False, # Build issues with Python 2/3
+ description='Enable for optional python language bindings'
+ ' (not yet functional)')
+ variant('r', default=False,
+ description='Enable for optional r language bindings'
+ ' (not yet functional)')
+ variant('ruby', default=False,
+ description='Enable for optional ruby language bindings'
+ ' (not yet functional)')
+ variant('tcl', default=False,
+ description='Enable for optional tcl language bindings'
+ ' (not yet functional)')
+
+ variant('pangocairo', default=False,
+ description='Build with pango+cairo support (more output formats)')
+ variant('libgd', default=False,
+ description='Build with libgd support (more output formats)')
+
+ variant('gts', default=False,
+ description='Build with GNU Triangulated Surface Library')
parallel = False
- depends_on("swig")
- depends_on("python")
- depends_on("ghostscript")
- depends_on("freetype")
- depends_on("expat")
- depends_on("libtool")
- depends_on("pkg-config", type='build')
+ # These language bindings have been tested, we know they work.
+ tested_bindings = ('+java', )
+
+ # These language bindings have not yet been tested. They
+ # likely need additional dependencies to get working.
+ untested_bindings = (
+ '+perl',
+ '+sharp', '+go', '+guile', '+io',
+ '+lua', '+ocaml', '+php',
+ '+python', '+r', '+ruby', '+tcl')
+
+ for b in tested_bindings + untested_bindings:
+ depends_on('swig', when=b)
+
+ depends_on('cairo', when='+pangocairo')
+ depends_on('pango', when='+pangocairo')
+ depends_on('libgd', when='+libgd')
+ depends_on('gts', when='+gts')
+ depends_on('ghostscript')
+ depends_on('freetype')
+ depends_on('expat')
+ depends_on('libtool')
+ depends_on('pkg-config', type='build')
+
+ depends_on('java', when='+java')
+ depends_on('python@2:2.8', when='+python')
+
+ def patch(self):
+ # Fix a few variable names, gs after 9.18 renamed them
+ # See http://lists.linuxfromscratch.org/pipermail/blfs-book/2015-October/056960.html
+ if self.spec.satisfies('^ghostscript@9.18:'):
+ kwargs = {'ignore_absent': False, 'backup': True, 'string': True}
+ filter_file(' e_', ' gs_error_', 'plugin/gs/gvloadimage_gs.c',
+ **kwargs)
def configure_args(self):
+ spec = self.spec
options = []
- if '+perl' not in self.spec:
- options.append('--disable-perl')
+
+ need_swig = False
+
+ for var in self.untested_bindings:
+ if var in spec:
+ raise InstallError(
+ "The variant {0} for language bindings has not been "
+ "tested. It might or might not work. To try it "
+ "out, run `spack edit graphviz`, and then move '{0}' "
+ "from the `untested_bindings` list to the "
+ "`tested_bindings` list. Be prepared to add "
+ "required dependencies. "
+ "Please then submit a pull request to "
+ "http://github.com/spack/spack".format(var))
+ options.append('--disable-%s' % var[1:])
+
+ for var in self.tested_bindings:
+ if var in spec:
+ need_swig = True
+ options.append('--enable-{0}'.format(var[1:]))
+ else:
+ options.append('--disable-{0}'.format(var[1:]))
+
+ if need_swig:
+ options.append('--enable-swig=yes')
+ else:
+ options.append('--enable-swig=no')
+
+ for var in ('+pangocairo', '+libgd', '+gts'):
+ if var in spec:
+ options.append('--with-{0}'.format(var[1:]))
+ else:
+ options.append('--without-{0}'.format(var[1:]))
# On OSX fix the compiler error:
# In file included from tkStubLib.c:15:
diff --git a/var/spack/repos/builtin/packages/grib-api/package.py b/var/spack/repos/builtin/packages/grib-api/package.py
index 8b81e14a27..5da851c1ba 100644
--- a/var/spack/repos/builtin/packages/grib-api/package.py
+++ b/var/spack/repos/builtin/packages/grib-api/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class GribApi(Package):
+class GribApi(CMakePackage):
"""The ECMWF GRIB API is an application program interface accessible from
C, FORTRAN and Python programs developed for encoding and decoding WMO
FM-92 GRIB edition 1 and edition 2 messages."""
@@ -33,48 +33,48 @@ class GribApi(Package):
homepage = "https://software.ecmwf.int/wiki/display/GRIB/Home"
url = "https://software.ecmwf.int/wiki/download/attachments/3473437/grib_api-1.17.0-Source.tar.gz"
+ version('1.21.0', 'eb64c5eb72e6e90841237cba9d644016')
version('1.17.0', 'bca7114d2c3100501a08190a146818d2')
version('1.16.0', '8c7fdee03344e4379d400ae20976a460')
variant('netcdf', default=False, description='Enable netcdf encoding/decoding using netcdf library')
variant('jpeg', default=True, description='Enable jpeg 2000 for grib 2 decoding/encoding')
variant('png', default=False, description='Enable png for decoding/encoding')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'Production'))
- depends_on('cmake', type='build')
depends_on('libpng', when='+png')
depends_on('netcdf', when='+netcdf')
depends_on('jasper', when='+jpeg')
+ depends_on('cmake@2.8.11:', type='build')
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
- options.append('-DBUILD_SHARED_LIBS=BOTH')
+ def cmake_args(self):
+ spec = self.spec
+ args = ['-DBUILD_SHARED_LIBS=BOTH']
# We will add python support later.
- options.append('-DENABLE_PYTHON=OFF')
+ args.append('-DENABLE_PYTHON=OFF')
# Disable FORTRAN interface if we don't have it.
if (self.compiler.f77 is None) or (self.compiler.fc is None):
- options.append('-DENABLE_FORTRAN=OFF')
+ args.append('-DENABLE_FORTRAN=OFF')
if '+netcdf' in spec:
- options.append('-DENABLE_NETCDF=ON')
- options.append('-DNETCDF_PATH=%s' % spec['netcdf'].prefix)
+ args.append('-DENABLE_NETCDF=ON')
+ args.append('-DNETCDF_PATH=%s' % spec['netcdf'].prefix)
else:
- options.append('-DENABLE_NETCDF=OFF')
+ args.append('-DENABLE_NETCDF=OFF')
if '+jpeg' in spec:
- options.append('-DENABLE_JPG=ON')
- options.append('-DJASPER_PATH=%s' % spec['jasper'].prefix)
+ args.append('-DENABLE_JPG=ON')
+ args.append('-DJASPER_PATH=%s' % spec['jasper'].prefix)
else:
- options.append('-DENABLE_JPG=OFF')
+ args.append('-DENABLE_JPG=OFF')
if '+png' in spec:
- options.append('-DENABLE_PNG=ON')
+ args.append('-DENABLE_PNG=ON')
else:
- options.append('-DENABLE_PNG=OFF')
+ args.append('-DENABLE_PNG=OFF')
- with working_dir('spack-build', create=True):
- cmake('..', *options)
- make()
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/groff/gropdf.patch b/var/spack/repos/builtin/packages/groff/gropdf.patch
new file mode 100644
index 0000000000..9044c64aa3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/groff/gropdf.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.in b/Makefile.in
+index bc156ce..70c6f85 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -896,6 +896,8 @@ $(GNULIBDIRS): FORCE
+ $(MAKE) ACLOCAL=: AUTOCONF=: AUTOHEADER=: AUTOMAKE=: $(do) ;; \
+ esac
+
++$(SHPROGDIRS): $(PROGDEPDIRS)
++
+ $(OTHERDIRS): $(PROGDEPDIRS) $(CCPROGDIRS) $(CPROGDIRS) $(SHPROGDIRS)
+
+ $(INCDIRS) $(PROGDEPDIRS) $(SHPROGDIRS) $(OTHERDIRS): FORCE
diff --git a/var/spack/repos/builtin/packages/groff/package.py b/var/spack/repos/builtin/packages/groff/package.py
new file mode 100644
index 0000000000..bc10c102be
--- /dev/null
+++ b/var/spack/repos/builtin/packages/groff/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Groff(AutotoolsPackage):
+ """Groff (GNU troff) is a typesetting system that reads
+ plain text mixed with formatting commands and produces
+ formatted output. Output may be PostScript or PDF, html, or
+ ASCII/UTF8 for display at the terminal."""
+
+ homepage = "https://www.gnu.org/software/groff/"
+ url = "http://ftp.gnu.org/gnu/groff/groff-1.22.3.tar.gz"
+
+ # TODO: add html variant, spack doesn't have netpbm and its too
+ # complicated for me to find out at this point in time.
+ # See brew scripts for groff for guidance:
+ # https://github.com/Homebrew/homebrew-core/blob/master/Formula/groff.rb
+ # Seems troublesome...netpbm requires groff?
+ variant('pdf', default=True, description='Build the `gropdf` executable.')
+
+ depends_on('gawk', type='build')
+ depends_on('gmake', type='build')
+ depends_on('sed', type='build')
+ depends_on('ghostscript', when='+pdf')
+
+ version('1.22.3', 'cc825fa64bc7306a885f2fb2268d3ec5')
+
+ # https://savannah.gnu.org/bugs/index.php?43581
+ # TODO: figure out why this patch does not actually work for parallel
+ # builds reliably.
+ # patch('gropdf.patch')
+ parallel = False
+
+ def configure_args(self):
+ args = [
+ "--without-x"
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/gromacs/package.py b/var/spack/repos/builtin/packages/gromacs/package.py
index d079188db6..22f0527439 100644
--- a/var/spack/repos/builtin/packages/gromacs/package.py
+++ b/var/spack/repos/builtin/packages/gromacs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -39,26 +39,33 @@ class Gromacs(CMakePackage):
"""
homepage = 'http://www.gromacs.org'
- url = 'ftp://ftp.gromacs.org/pub/gromacs/gromacs-5.1.2.tar.gz'
+ url = 'http://ftp.gromacs.org/gromacs/gromacs-5.1.2.tar.gz'
+ version('2016.4', '19c8b5c85f3ec62df79d2249a3c272f8')
+ version('2016.3', 'e9e3a41bd123b52fbcc6b32d09f8202b')
+ version('5.1.4', 'ba2e34d59b3982603b4935d650c08040')
version('5.1.2', '614d0be372f1a6f1f36382b7a6fcab98')
+ version('develop', git='https://github.com/gromacs/gromacs', branch='master')
variant('mpi', default=True, description='Activate MPI support')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False, description='Enables debug mode')
variant(
'double', default=False,
description='Produces a double precision version of the executables')
variant('plumed', default=False, description='Enable PLUMED support')
+ variant('cuda', default=False, description='Enable CUDA support')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel',
+ 'Reference', 'RelWithAssert', 'Profile'))
depends_on('mpi', when='+mpi')
depends_on('plumed+mpi', when='+plumed+mpi')
depends_on('plumed~mpi', when='+plumed~mpi')
depends_on('fftw')
depends_on('cmake@2.8.8:', type='build')
-
- # TODO : add GPU support
+ depends_on('cuda', when='+cuda')
def patch(self):
if '+plumed' in self.spec:
@@ -77,9 +84,9 @@ class Gromacs(CMakePackage):
if '~shared' in self.spec:
options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
- if '+debug' in self.spec:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
- else:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Release')
+ if '+cuda' in self.spec:
+ options.append('-DGMX_GPU:BOOL=ON')
+ options.append('-DCUDA_TOOLKIT_ROOT_DIR:STRING=' +
+ self.spec['cuda'].prefix)
return options
diff --git a/var/spack/repos/builtin/packages/gsl/package.py b/var/spack/repos/builtin/packages/gsl/package.py
index f13a9a66e8..27be6b0d35 100644
--- a/var/spack/repos/builtin/packages/gsl/package.py
+++ b/var/spack/repos/builtin/packages/gsl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,6 +36,7 @@ class Gsl(AutotoolsPackage):
homepage = "http://www.gnu.org/software/gsl"
url = "http://mirror.switch.ch/ftp/mirror/gnu/gsl/gsl-2.3.tar.gz"
+ version('2.4', 'dba736f15404807834dc1c7b93e83b92')
version('2.3', '905fcbbb97bc552d1037e34d200931a0')
version('2.2.1', '3d90650b7cfe0a6f4b29c2d7b0f86458')
version('2.1', 'd8f70abafd3e9f0bae03c52d1f4e8de5')
diff --git a/var/spack/repos/builtin/packages/gtkorvo-atl/package.py b/var/spack/repos/builtin/packages/gtkorvo-atl/package.py
new file mode 100644
index 0000000000..72bcf12c1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtkorvo-atl/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class GtkorvoAtl(CMakePackage):
+ """Libatl provides a library for the creation and manipulation of
+ lists of name/value pairs using an efficient binary representation.
+ """
+
+ homepage = "https://github.com/GTkorvo/atl"
+ url = "https://github.com/GTkorvo/atl/archive/v2.1.tar.gz"
+
+ version('develop', git='https://github.com/GTkorvo/atl.git',
+ branch='master')
+ version('2.1', 'b2324ff041bccba127330a0e1b241978')
+
+ depends_on('gtkorvo-cercs-env')
+
+ def cmake_args(self):
+ args = ["-DENABLE_TESTING=0", "-DENABLE_BUILD_STATIC=STATIC"]
+ return args
diff --git a/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py b/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py
new file mode 100644
index 0000000000..2fcfc21467
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtkorvo-cercs-env/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class GtkorvoCercsEnv(CMakePackage):
+ """A utility library used by some GTkorvo packages.
+ """
+
+ homepage = "https://github.com/GTkorvo/cercs_env"
+ url = "https://github.com/GTkorvo/cercs_env/archive/v1.0.tar.gz"
+
+ version('develop', git='https://github.com/GTkorvo/cercs_env.git',
+ branch='master')
+ version('1.0', '08f0532d0c2f7bc9b53dfa7a1c40ea4d')
+
+ def cmake_args(self):
+ args = ["-DENABLE_TESTING=0", "-DENABLE_SHARED_STATIC=STATIC"]
+ return args
diff --git a/var/spack/repos/builtin/packages/gtkorvo-dill/package.py b/var/spack/repos/builtin/packages/gtkorvo-dill/package.py
new file mode 100644
index 0000000000..af2c433ed6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtkorvo-dill/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class GtkorvoDill(CMakePackage):
+ """DILL provides instruction-level code generation,
+ register allocation and simple optimizations for generating
+ executable code directly into memory regions for immediate use.
+ """
+
+ homepage = "https://github.com/GTkorvo/dill"
+ url = "https://github.com/GTkorvo/dill/archive/v2.1.tar.gz"
+
+ version('develop', git='https://github.com/GTkorvo/dill.git',
+ branch='master')
+ version('2.1', '14c835e79b66c9acd2beee01d56e6200')
+
+ def cmake_args(self):
+ args = ["-DENABLE_TESTING=0", "-DBUILD_SHARED_STATIC=STATIC"]
+ return args
diff --git a/var/spack/repos/builtin/packages/gtkorvo-enet/package.py b/var/spack/repos/builtin/packages/gtkorvo-enet/package.py
new file mode 100644
index 0000000000..2130085b93
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtkorvo-enet/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class GtkorvoEnet(AutotoolsPackage):
+ """ENet reliable UDP networking library.
+ This is a downstream branch of lsalzman's ENet.
+ This version has expanded the client ID to handle more clients.
+ The original is at http://github.com/lsalzman/enet.
+ """
+
+ homepage = "http://www.github.com/GTkorvo/enet"
+ url = "https://github.com/GTkorvo/enet/archive/v1.3.13.tar.gz"
+
+ version('1.3.13', '3490f924a4d421e4832e45850e6ec142')
diff --git a/var/spack/repos/builtin/packages/gtkplus/no-demos.patch b/var/spack/repos/builtin/packages/gtkplus/no-demos.patch
new file mode 100644
index 0000000000..5acc988c38
--- /dev/null
+++ b/var/spack/repos/builtin/packages/gtkplus/no-demos.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.in 2017-02-21 12:18:44.774922978 -0800
++++ b/Makefile.in 2017-02-21 12:18:54.465965697 -0800
+@@ -564,7 +564,7 @@
+ || { echo "Gtk+Tests:ERROR: Failed to start Xvfb environment for X11 target tests."; exit 1; } \
+ && DISPLAY=:$$XID && export DISPLAY
+
+-SRC_SUBDIRS = gdk gtk modules demos tests perf
++SRC_SUBDIRS = gdk gtk modules tests perf
+ SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
+
+ # require automake 1.4
diff --git a/var/spack/repos/builtin/packages/gtkplus/package.py b/var/spack/repos/builtin/packages/gtkplus/package.py
index b53b688372..033c325eb6 100644
--- a/var/spack/repos/builtin/packages/gtkplus/package.py
+++ b/var/spack/repos/builtin/packages/gtkplus/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gtkplus(Package):
+class Gtkplus(AutotoolsPackage):
"""The GTK+ 2 package contains libraries used for creating graphical user
interfaces for applications."""
homepage = "http://www.gtk.org"
@@ -36,19 +36,26 @@ class Gtkplus(Package):
variant('X', default=False, description="Enable an X toolkit")
+ depends_on('pkg-config', type='build')
+
depends_on("atk")
depends_on("gdk-pixbuf")
depends_on("glib")
depends_on("pango")
depends_on("pango~X", when='~X')
depends_on("pango+X", when='+X')
+ depends_on('gobject-introspection', when='+X')
+ depends_on('shared-mime-info')
+
+ patch('no-demos.patch')
def patch(self):
# remove disable deprecated flag.
filter_file(r'CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"',
'', 'configure', string=True)
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
+ run_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/gts/package.py b/var/spack/repos/builtin/packages/gts/package.py
index 2b3d4dd4f8..b340df34f2 100644
--- a/var/spack/repos/builtin/packages/gts/package.py
+++ b/var/spack/repos/builtin/packages/gts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Gts(Package):
+class Gts(AutotoolsPackage):
"""GTS stands for the GNU Triangulated Surface Library.
It is an Open Source Free Software Library intended to provide a set of
@@ -46,8 +46,3 @@ class Gts(Package):
version('121130', '023ebb6b13b8707534182a3ef0d12908')
depends_on('glib')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/guidance/package.py b/var/spack/repos/builtin/packages/guidance/package.py
new file mode 100644
index 0000000000..6cb4e0cfc6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/guidance/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Guidance(MakefilePackage):
+ """Guidance: Accurate detection of unreliable alignment regions accounting
+ for the uncertainty of multiple parameters."""
+
+ homepage = "http://guidance.tau.ac.il/ver2/"
+ url = "http://guidance.tau.ac.il/ver2/guidance.v2.02.tar.gz"
+
+ version('2.02', 'aa6ae2168e8e0237ee56bc2ac81202cf')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('perl-bio-perl', type=('build', 'run'))
+ depends_on('ruby')
+ depends_on('prank')
+ depends_on('clustalw')
+ depends_on('mafft')
+ depends_on('muscle')
+
+ conflicts('%gcc@6.2.0:')
+
+ def edit(self, spec, prefix):
+ for dir in 'Guidance', 'Selecton', 'bioSequence_scripts_and_constants':
+ with working_dir(join_path('www', dir)):
+ files = glob.iglob('*.pl')
+ for file in files:
+ perl = FileFilter(file)
+ perl.filter('#!/usr/bin/perl -w', '#!/usr/bin/env perl')
+
+ def install(self, spac, prefix):
+ mkdir(prefix.bin)
+ install_tree('libs', prefix.bin.libs)
+ install_tree('programs', prefix.bin.programs)
+ install_tree('www', prefix.bin.www)
+ with working_dir(join_path('www', 'Guidance')): # copy without suffix
+ install('guidance.pl', join_path(prefix.bin.www.Guidance,
+ 'guidance'))
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', prefix.bin.www.Guidance)
diff --git a/var/spack/repos/builtin/packages/guile/package.py b/var/spack/repos/builtin/packages/guile/package.py
index 22aff1bddf..81b61510be 100644
--- a/var/spack/repos/builtin/packages/guile/package.py
+++ b/var/spack/repos/builtin/packages/guile/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,15 @@
from spack import *
-class Guile(Package):
+class Guile(AutotoolsPackage):
"""Guile is the GNU Ubiquitous Intelligent Language for Extensions,
the official extension language for the GNU operating system."""
homepage = "https://www.gnu.org/software/guile/"
- url = "ftp://ftp.gnu.org/gnu/guile/guile-2.0.11.tar.gz"
+ url = "https://ftp.gnu.org/gnu/guile/guile-2.2.0.tar.gz"
+ version('2.2.0', '0d5de8075b965f9ee5ea04399b60a3f9')
+ version('2.0.14', '333b6eec83e779935a45c818f712484e')
version('2.0.11', 'e532c68c6f17822561e3001136635ddd')
variant('readline', default=True, description='Use the readline library')
@@ -45,9 +47,12 @@ class Guile(Package):
depends_on('readline', when='+readline')
depends_on('pkg-config', type='build')
- def install(self, spec, prefix):
+ build_directory = 'spack-build'
+
+ def configure_args(self):
+ spec = self.spec
+
config_args = [
- '--prefix={0}'.format(prefix),
'--with-libunistring-prefix={0}'.format(
spec['libunistring'].prefix),
'--with-libltdl-prefix={0}'.format(spec['libtool'].prefix),
@@ -61,8 +66,4 @@ class Guile(Package):
else:
config_args.append('--without-libreadline-prefix')
- configure(*config_args)
-
- make()
- make('check')
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/h5hut/package.py b/var/spack/repos/builtin/packages/h5hut/package.py
index 22146372dc..ed9ede92d6 100644
--- a/var/spack/repos/builtin/packages/h5hut/package.py
+++ b/var/spack/repos/builtin/packages/h5hut/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -47,7 +47,7 @@ class H5hut(AutotoolsPackage):
# install: .libs/libH5hut.a: No such file or directory
parallel = False
- @AutotoolsPackage.precondition('configure')
+ @run_before('configure')
def validate(self):
"""Checks if Fortran compiler is available."""
diff --git a/var/spack/repos/builtin/packages/h5part/mpiio.patch b/var/spack/repos/builtin/packages/h5part/mpiio.patch
new file mode 100644
index 0000000000..152cfec349
--- /dev/null
+++ b/var/spack/repos/builtin/packages/h5part/mpiio.patch
@@ -0,0 +1,26 @@
+https://github.com/quinoacomputing/H5Part/commit/b8b106c368c3400b4df3d38e97ae2943d37d3c7d.patch
+
+From b8b106c368c3400b4df3d38e97ae2943d37d3c7d Mon Sep 17 00:00:00 2001
+From: Jozsef Bakosi <jbakosi@lanl.gov>
+Date: Thu, 28 Jul 2016 08:37:24 -0600
+Subject: [PATCH] Replace H5Pset_fapl_mpiposix with H5Pset_fapl_mpio
+
+Based on the advice at
+http://www.unidata.ucar.edu/mailing_lists/archives/netcdfgroup/2014/msg00188.html.
+---
+ src/H5Part.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/H5Part.c b/src/H5Part.c
+index 433a574..8a1b893 100644
+--- a/src/H5Part.c
++++ b/src/H5Part.c
+@@ -246,7 +246,7 @@ _H5Part_open_file (
+ /* select the HDF5 VFD */
+ if (flags & H5PART_VFD_MPIPOSIX) {
+ _H5Part_print_info ( "Selecting MPI-POSIX VFD" );
+- if (H5Pset_fapl_mpiposix ( f->access_prop, comm, 0 ) < 0) {
++ if (H5Pset_fapl_mpio ( f->access_prop, comm, 0 ) < 0) {
+ HANDLE_H5P_SET_FAPL_ERR;
+ goto error_cleanup;
+ }
diff --git a/var/spack/repos/builtin/packages/h5part/package.py b/var/spack/repos/builtin/packages/h5part/package.py
new file mode 100644
index 0000000000..f105a26831
--- /dev/null
+++ b/var/spack/repos/builtin/packages/h5part/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class H5part(AutotoolsPackage):
+ """Portable High Performance Parallel Data Interface to HDF5"""
+
+ homepage = "http://vis.lbl.gov/Research/H5Part/"
+ url = "https://codeforge.lbl.gov/frs/download.php/latestfile/18/H5Part-1.6.6.tar.gz"
+
+ version('1.6.6', '327c63d198e38a12565b74cffdf1f9d7')
+ patch('mpiio.patch')
+
+ depends_on('mpi')
+ depends_on('hdf5+mpi')
+
+ def configure_args(self):
+ args = ['--enable-parallel',
+ '--with-hdf5=%s' % self.spec['hdf5'].prefix,
+ 'CC=mpicc',
+ 'CXX=mpicxx']
+ return args
diff --git a/var/spack/repos/builtin/packages/h5utils/package.py b/var/spack/repos/builtin/packages/h5utils/package.py
new file mode 100644
index 0000000000..202eb0e232
--- /dev/null
+++ b/var/spack/repos/builtin/packages/h5utils/package.py
@@ -0,0 +1,73 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class H5utils(AutotoolsPackage):
+ """h5utils is a set of utilities for visualization and conversion of
+ scientific data in the free, portable HDF5 format."""
+
+ homepage = "http://ab-initio.mit.edu/wiki/index.php/H5utils"
+ url = "http://ab-initio.mit.edu/h5utils/h5utils-1.12.1.tar.gz"
+ list_url = "http://ab-initio.mit.edu/h5utils/old/"
+
+ version('1.12.1', '46a6869fee6e6bf87fbba9ab8a99930e')
+
+ variant('png', default=True, description='Enable PNG support')
+ variant('vis5d', default=False, description='Enable Vis5d support')
+ variant('octave', default=False, description='Enable GNU Octave support')
+ variant('hdf4', default=False, description='Enable HDF4 support')
+ variant('math', default=False, description='Build h5math')
+
+ # Required dependencies
+ depends_on('hdf5')
+
+ # Optional dependencies
+ depends_on('libpng', when='+png')
+ # depends_on('vis5d', when='+vis5d') # TODO: Add a vis5d package
+ depends_on('octave', when='+octave')
+ depends_on('hdf', when='+hdf4')
+ depends_on('libmatheval', when='+math')
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+
+ if '+vis5d' in spec:
+ args.append('--with-v5d={0}'.format(spec['vis5d'].prefix))
+ else:
+ args.append('--without-v5d')
+
+ if '+octave' in spec:
+ args.append('--with-octave')
+ else:
+ args.append('--without-octave')
+
+ if '+hdf' in spec:
+ args.append('--with-hdf4')
+ else:
+ args.append('--without-hdf4')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/h5z-zfp/package.py b/var/spack/repos/builtin/packages/h5z-zfp/package.py
new file mode 100644
index 0000000000..dff0126f01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/h5z-zfp/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class H5zZfp(MakefilePackage):
+ """A highly flexible floating point and integer compression plugin for the
+ HDF5 library using ZFP compression."""
+
+ homepage = "http://h5z-zfp.readthedocs.io/en/latest"
+ url = "https://github.com/LLNL/H5Z-ZFP"
+
+ version('develop', git='https://github.com/LLNL/H5Z-ZFP.git', tag='master')
+ version('0.7.0', git='https://github.com/LLNL/H5Z-ZFP.git', commit='58ac811')
+
+ variant('fortran', default=True, description='Enable Fortran support')
+
+ depends_on('hdf5')
+ depends_on('zfp bsws=8')
+
+ @property
+ def make_defs(self):
+ make_defs = [
+ 'PREFIX=%s' % prefix,
+ 'CC=%s' % spack_cc,
+ 'HDF5_HOME=%s' % self.spec['hdf5'].prefix,
+ 'ZFP_HOME=%s' % self.spec['zfp'].prefix]
+
+ if '+fortran' in self.spec and spack_fc:
+ make_defs += ['FC=%s' % spack_fc]
+
+ return make_defs
+
+ @property
+ def build_targets(self):
+ targets = ['all']
+ return self.make_defs + targets
+
+ @property
+ def install_targets(self):
+ make_args = ['install']
+ return make_args + self.make_defs
diff --git a/var/spack/repos/builtin/packages/hacckernels/package.py b/var/spack/repos/builtin/packages/hacckernels/package.py
new file mode 100644
index 0000000000..db48910165
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hacckernels/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hacckernels(CMakePackage):
+ """HACCKernels: A Benchmark for HACC's Particle Force Kernels.
+ The Hardware/Hybrid Accelerated Cosmology Code (HACC), a
+ cosmology N-body-code framework, is designed to run efficiently
+ on diverse computing architectures and to scale to millions of
+ cores and beyond."""
+
+ homepage = "https://xgitlab.cels.anl.gov/hacc/HACCKernels"
+ url = "https://xgitlab.cels.anl.gov/hacc/HACCKernels.git"
+
+ tags = ['proxy-app']
+
+ version('develop', git='https://xgitlab.cels.anl.gov/hacc/HACCKernels.git',
+ branch='master')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('README', prefix)
+ install('spack-build/HACCKernels', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/hadoop/package.py b/var/spack/repos/builtin/packages/hadoop/package.py
index a87b19a8cc..66deb7c5d2 100644
--- a/var/spack/repos/builtin/packages/hadoop/package.py
+++ b/var/spack/repos/builtin/packages/hadoop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,7 +36,7 @@ class Hadoop(Package):
version('2.6.4', '37019f13d7dcd819727be158440b9442')
- depends_on('jdk', type='run')
+ depends_on('java', type='run')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/hapcut2/package.py b/var/spack/repos/builtin/packages/hapcut2/package.py
new file mode 100644
index 0000000000..612a1c25ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hapcut2/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hapcut2(MakefilePackage):
+ """HapCUT2 is a maximum-likelihood-based tool for assembling haplotypes
+ from DNA sequence reads, designed to 'just work' with excellent speed
+ and accuracy."""
+
+ homepage = "https://github.com/vibansal/HapCUT2"
+ url = "https://github.com/vibansal/HapCUT2"
+
+ version('2017-07-10', git='https://github.com/vibansal/HapCUT2.git',
+ commit='2966b94c2c2f97813b757d4999b7a6471df1160e', submodules=True)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('build'):
+ install('extractFOSMID', prefix.bin)
+ install('extractHAIRS', prefix.bin)
+ install('HAPCUT2', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/haploview/haploview.sh b/var/spack/repos/builtin/packages/haploview/haploview.sh
new file mode 100644
index 0000000000..0f6c60139c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/haploview/haploview.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the haploview.jar file
+java $JAVA_ARGS $JAVA_OPTS -jar haploview.jar "$@"
diff --git a/var/spack/repos/builtin/packages/haploview/package.py b/var/spack/repos/builtin/packages/haploview/package.py
new file mode 100644
index 0000000000..9d1b4b3e0f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/haploview/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Haploview(Package):
+ """Haploview is designed to simplify and expedite the process of haplotype
+ analysis."""
+
+ homepage = "http://www.broadinstitute.org/haploview/haploview"
+ url = "https://downloads.sourceforge.net/project/haploview/release/Haploview4.1.jar"
+
+ version('4.1', 'f7aa4accda5fad1be74c9c1969c6ee7d', expand=False)
+
+ depends_on('java', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ jar_file = 'Haploview{v}.jar'.format(v=self.version)
+ install(jar_file, prefix.bin)
+
+ script_sh = join_path(os.path.dirname(__file__), "haploview.sh")
+ script = prefix.bin.haploview
+ install(script_sh, script)
+ set_executable(script)
+
+ java = self.spec['java'].prefix.bin.java
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('haploview.jar', join_path(prefix.bin, jar_file),
+ script, **kwargs)
diff --git a/var/spack/repos/builtin/packages/harfbuzz/package.py b/var/spack/repos/builtin/packages/harfbuzz/package.py
index 7c98c2a96a..492a4694a8 100644
--- a/var/spack/repos/builtin/packages/harfbuzz/package.py
+++ b/var/spack/repos/builtin/packages/harfbuzz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,12 @@
from spack import *
-class Harfbuzz(Package):
+class Harfbuzz(AutotoolsPackage):
"""The Harfbuzz package contains an OpenType text shaping engine."""
homepage = "http://www.freedesktop.org/wiki/Software/HarfBuzz/"
url = "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-0.9.37.tar.bz2"
+ version('1.4.6', '21a78b81cd20cbffdb04b59ac7edfb410e42141869f637ae1d6778e74928d293')
version('0.9.37', 'bfe733250e34629a188d82e3b971bc1e')
depends_on("pkg-config", type="build")
@@ -41,8 +42,3 @@ class Harfbuzz(Package):
def patch(self):
change_sed_delimiter('@', ';', 'src/Makefile.in')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/harminv/package.py b/var/spack/repos/builtin/packages/harminv/package.py
index 184535ebb0..d92405e8c7 100644
--- a/var/spack/repos/builtin/packages/harminv/package.py
+++ b/var/spack/repos/builtin/packages/harminv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Harminv(Package):
+class Harminv(AutotoolsPackage):
"""Harminv is a free program (and accompanying library) to solve the
problem of harmonic inversion - given a discrete-time, finite-length
signal that consists of a sum of finitely-many sinusoids (possibly
@@ -34,21 +34,18 @@ class Harminv(Package):
homepage = "http://ab-initio.mit.edu/wiki/index.php/Harminv"
url = "http://ab-initio.mit.edu/harminv/harminv-1.4.tar.gz"
+ list_url = "http://ab-initio.mit.edu/harminv/old"
version('1.4', 'b95e24a9bc7e07d3d2202d1605e9e86f')
depends_on('blas')
depends_on('lapack')
- def install(self, spec, prefix):
- config_args = [
- '--prefix={0}'.format(prefix),
+ def configure_args(self):
+ spec = self.spec
+
+ return [
+ '--enable-shared',
'--with-blas={0}'.format(spec['blas'].prefix.lib),
'--with-lapack={0}'.format(spec['lapack'].prefix.lib),
- '--enable-shared'
]
-
- configure(*config_args)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/hdf/package.py b/var/spack/repos/builtin/packages/hdf/package.py
index 2554bd0f96..0aefe3aa8c 100644
--- a/var/spack/repos/builtin/packages/hdf/package.py
+++ b/var/spack/repos/builtin/packages/hdf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,16 @@
from spack import *
-class Hdf(Package):
+class Hdf(AutotoolsPackage):
"""HDF4 (also known as HDF) is a library and multi-object
file format for storing and managing data between machines."""
- homepage = "https://www.hdfgroup.org/products/hdf4/"
- url = "https://www.hdfgroup.org/ftp/HDF/releases/HDF4.2.11/src/hdf-4.2.11.tar.gz"
- list_url = "https://www.hdfgroup.org/ftp/HDF/releases/"
- list_depth = 3
+ homepage = "https://support.hdfgroup.org/products/hdf4/"
+ url = "https://support.hdfgroup.org/ftp/HDF/releases/HDF4.2.13/src/hdf-4.2.13.tar.gz"
+ list_url = "https://support.hdfgroup.org/ftp/HDF/releases"
+ list_depth = 2
+ version('4.2.13', 'a6aa950b3fce5162b96496d8ea0b82bf')
version('4.2.12', '79fd1454c899c05e34a3da0456ab0c1c')
version('4.2.11', '063f9928f3a19cc21367b71c3b8bbf19')
@@ -46,10 +47,11 @@ class Hdf(Package):
depends_on('bison', type='build')
depends_on('flex', type='build')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
+
config_args = [
- 'CFLAGS=-fPIC',
- '--prefix={0}'.format(prefix),
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
'--with-jpeg={0}'.format(spec['jpeg'].prefix),
'--with-zlib={0}'.format(spec['zlib'].prefix),
'--disable-netcdf', # must be disabled to build NetCDF with HDF4
@@ -65,11 +67,4 @@ class Hdf(Package):
else:
config_args.append('--without-szlib')
- configure(*config_args)
-
- make()
-
- if self.run_tests:
- make('check')
-
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/hdf5-blosc/package.py b/var/spack/repos/builtin/packages/hdf5-blosc/package.py
index 088c1e9d9b..704f508cb3 100644
--- a/var/spack/repos/builtin/packages/hdf5-blosc/package.py
+++ b/var/spack/repos/builtin/packages/hdf5-blosc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,7 +22,6 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-
import os
import shutil
import sys
@@ -69,7 +68,7 @@ class Hdf5Blosc(Package):
# if sys.platform == "darwin":
# fix_darwin_install_name(prefix.lib)
- libtool = Executable(join_path(spec["libtool"].prefix.bin, "libtool"))
+ libtool = spec["libtool"].command
# TODO: these vars are not used.
# if "+mpi" in spec["hdf5"]:
@@ -111,11 +110,12 @@ class Hdf5Blosc(Package):
"-L%s" % spec["hdf5"].prefix.lib, "-lhdf5")
_install_shlib("libblosc_plugin", ".libs", prefix.lib)
- self.check_install(spec)
+ if self.run_tests:
+ self.check_install(spec)
def check_install(self, spec):
"Build and run a small program to test the installed HDF5 Blosc plugin"
- print "Checking HDF5-Blosc plugin..."
+ print("Checking HDF5-Blosc plugin...")
checkdir = "spack-check"
with working_dir(checkdir, create=True):
source = r"""\
@@ -174,30 +174,30 @@ Done.
with open("check.c", "w") as f:
f.write(source)
if "+mpi" in spec["hdf5"]:
- cc = which("mpicc")
+ cc = Executable(spec["mpi"].mpicc)
else:
- cc = which("cc")
+ cc = Executable(self.compiler.cc)
# TODO: Automate these path and library settings
cc("-c", "-I%s" % spec["hdf5"].prefix.include, "check.c")
cc("-o", "check", "check.o",
"-L%s" % spec["hdf5"].prefix.lib, "-lhdf5")
try:
check = Executable("./check")
- output = check(return_output=True)
- except:
+ output = check(output=str)
+ except ProcessError:
output = ""
success = output == expected
if not success:
- print "Produced output does not match expected output."
- print "Expected output:"
- print "-" * 80
- print expected
- print "-" * 80
- print "Produced output:"
- print "-" * 80
- print output
- print "-" * 80
- print "Environment:"
+ print("Produced output does not match expected output.")
+ print("Expected output:")
+ print("-" * 80)
+ print(expected)
+ print("-" * 80)
+ print("Produced output:")
+ print("-" * 80)
+ print(output)
+ print("-" * 80)
+ print("Environment:")
env = which("env")
env()
raise RuntimeError("HDF5 Blosc plugin check failed")
diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index 222af53601..5a15b33d98 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,6 +24,7 @@
##############################################################################
from spack import *
import shutil
+import sys
class Hdf5(AutotoolsPackage):
@@ -32,18 +33,16 @@ class Hdf5(AutotoolsPackage):
flexible and efficient I/O and for high volume and complex data.
"""
- homepage = "http://www.hdfgroup.org/HDF5/"
- url = "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.13/src/hdf5-1.8.13.tar.gz"
- list_url = "http://www.hdfgroup.org/ftp/HDF5/releases"
+ homepage = "https://support.hdfgroup.org/HDF5/"
+ url = "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.1/src/hdf5-1.10.1.tar.gz"
+ list_url = "https://support.hdfgroup.org/ftp/HDF5/releases"
list_depth = 3
+ version('1.10.1', '43a2f9466702fb1db31df98ae6677f15')
version('1.10.0-patch1', '9180ff0ef8dc2ef3f61bd37a7404f295')
version('1.10.0', 'bdc935337ee8282579cd6bc4270ad199')
- version('1.8.18', 'dd2148b740713ca0295442ec683d7b1c',
- # The link for the latest version differs from the links for
- # the previous releases. Do not forget to remove this once
- # the version 1.8.18 is not the latest one for the 1.8.* branch.
- url='http://hdfgroup.org/ftp/HDF5/current18/src/hdf5-1.8.18.tar.gz')
+ version('1.8.19', '7f568e2464d4ab0a74d16b23956d900b')
+ version('1.8.18', 'dd2148b740713ca0295442ec683d7b1c')
version('1.8.17', '7d572f8f3b798a628b8245af0391a0ca')
version('1.8.16', 'b8ed9a36ae142317f88b0c7ef4b9c618')
version('1.8.15', '03cccb5b33dbe975fdcd8ae9dc021f24')
@@ -56,111 +55,179 @@ class Hdf5(AutotoolsPackage):
variant('shared', default=True,
description='Builds a shared version of the library')
- variant('cxx', default=True, description='Enable C++ support')
- variant('fortran', default=True, description='Enable Fortran support')
+ variant('hl', default=False, description='Enable the high-level library')
+ variant('cxx', default=False, description='Enable C++ support')
+ variant('fortran', default=False, description='Enable Fortran support')
+ variant('threadsafe', default=False,
+ description='Enable thread-safe capabilities')
variant('mpi', default=True, description='Enable MPI support')
variant('szip', default=False, description='Enable szip support')
- variant('threadsafe', default=False,
- description='Enable thread-safe capabilities')
variant('pic', default=True,
description='Produce position-independent code (for shared libs)')
depends_on('mpi', when='+mpi')
+ # numactl does not currently build on darwin
+ if sys.platform != 'darwin':
+ depends_on('numactl', when='+mpi+fortran')
depends_on('szip', when='+szip')
depends_on('zlib@1.1.2:')
- @AutotoolsPackage.precondition('configure')
- def validate(self):
- """
- Checks if incompatible variants have been activated at the same time
+ # There are several officially unsupported combinations of the features:
+ # 1. Thread safety is not guaranteed via high-level C-API but in some cases
+ # it works.
+ # conflicts('+threadsafe+hl')
+
+ # 2. Thread safety is not guaranteed via Fortran (CXX) API, but it's
+ # possible for a dependency tree to contain a package that uses Fortran
+ # (CXX) API in a single thread and another one that uses low-level C-API
+ # in multiple threads. To allow for such scenarios, we don't specify the
+ # following conflicts.
+ # conflicts('+threadsafe+cxx')
+ # conflicts('+threadsafe+fortran')
+
+ # 3. Parallel features are not supported via CXX API, but for the reasons
+ # described in #2 we allow for such combination.
+ # conflicts('+mpi+cxx')
+
+ def url_for_version(self, version):
+ url = "https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-{0}/hdf5-{1}/src/hdf5-{1}.tar.gz"
+ return url.format(version.up_to(2), version)
- :param spec: spec of the package
- :raises RuntimeError: in case of inconsistencies
+ @property
+ def libs(self):
+ """HDF5 can be queried for the following parameters:
+
+ - "hl": high-level interface
+ - "cxx": C++ APIs
+ - "fortran": Fortran APIs
+
+ :return: list of matching libraries
"""
- spec = self.spec
- if '+fortran' in spec and not self.compiler.fc:
- msg = 'cannot build a fortran variant without a fortran compiler'
- raise RuntimeError(msg)
+ query_parameters = self.spec.last_query.extra_parameters
+
+ shared = '+shared' in self.spec
+
+ # This map contains a translation from query_parameters
+ # to the libraries needed
+ query2libraries = {
+ tuple(): ['libhdf5'],
+ ('cxx', 'fortran', 'hl'): [
+ 'libhdf5hl_fortran',
+ 'libhdf5_hl_cpp',
+ 'libhdf5_hl',
+ 'libhdf5_fortran',
+ 'libhdf5',
+ ],
+ ('cxx', 'hl'): [
+ 'libhdf5_hl_cpp',
+ 'libhdf5_hl',
+ 'libhdf5',
+ ],
+ ('fortran', 'hl'): [
+ 'libhdf5hl_fortran',
+ 'libhdf5_hl',
+ 'libhdf5_fortran',
+ 'libhdf5',
+ ],
+ ('hl',): [
+ 'libhdf5_hl',
+ 'libhdf5',
+ ],
+ ('cxx', 'fortran'): [
+ 'libhdf5_fortran',
+ 'libhdf5_cpp',
+ 'libhdf5',
+ ],
+ ('cxx',): [
+ 'libhdf5_cpp',
+ 'libhdf5',
+ ],
+ ('fortran',): [
+ 'libhdf5_fortran',
+ 'libhdf5',
+ ]
+ }
+
+ # Turn the query into the appropriate key
+ key = tuple(sorted(query_parameters))
+ libraries = query2libraries[key]
+
+ return find_libraries(
+ libraries, root=self.prefix, shared=shared, recurse=True
+ )
- if '+threadsafe' in spec and ('+cxx' in spec or '+fortran' in spec):
- msg = 'cannot use variant +threadsafe with either +cxx or +fortran'
+ @run_before('configure')
+ def fortran_check(self):
+ if '+fortran' in self.spec and not self.compiler.fc:
+ msg = 'cannot build a Fortran variant without a Fortran compiler'
raise RuntimeError(msg)
def configure_args(self):
- spec = self.spec
- # Handle compilation after spec validation
- extra_args = []
-
# Always enable this option. This does not actually enable any
# features: it only *allows* the user to specify certain
# combinations of other arguments. Enabling it just skips a
# sanity check in configure, so this doesn't merit a variant.
- extra_args.append("--enable-unsupported")
+ extra_args = ['--enable-unsupported']
+ extra_args += self.enable_or_disable('threadsafe')
+ extra_args += self.enable_or_disable('cxx')
+ extra_args += self.enable_or_disable('hl')
+ extra_args += self.enable_or_disable('fortran')
- if spec.satisfies('@1.10:'):
- if '+debug' in spec:
+ if '+szip' in self.spec:
+ extra_args.append('--with-szlib=%s' % self.spec['szip'].prefix)
+ else:
+ extra_args.append('--without-szlib')
+
+ if self.spec.satisfies('@1.10:'):
+ if '+debug' in self.spec:
extra_args.append('--enable-build-mode=debug')
else:
extra_args.append('--enable-build-mode=production')
else:
- if '+debug' in spec:
+ if '+debug' in self.spec:
extra_args.append('--enable-debug=all')
else:
extra_args.append('--enable-production')
- if '+shared' in spec:
+ # '--enable-fortran2003' no longer exists as of version 1.10.0
+ if '+fortran' in self.spec:
+ extra_args.append('--enable-fortran2003')
+ else:
+ extra_args.append('--disable-fortran2003')
+
+ if '+shared' in self.spec:
extra_args.append('--enable-shared')
else:
+ extra_args.append('--disable-shared')
extra_args.append('--enable-static-exec')
- if '+cxx' in spec:
- extra_args.append('--enable-cxx')
+ if '+pic' in self.spec:
+ extra_args += ['%s=%s' % (f, self.compiler.pic_flag)
+ for f in ['CFLAGS', 'CXXFLAGS', 'FCFLAGS']]
- if '+fortran' in spec:
- extra_args.append('--enable-fortran')
- # '--enable-fortran2003' no longer exists as of version 1.10.0
- if spec.satisfies('@:1.8.16'):
- extra_args.append('--enable-fortran2003')
-
- if '+pic' in spec:
- extra_args.append('CFLAGS={0}'.format(self.compiler.pic_flag))
- extra_args.append('CXXFLAGS={0}'.format(self.compiler.pic_flag))
- extra_args.append('FFLAGS={0}'.format(self.compiler.pic_flag))
-
- if '+mpi' in spec:
+ if '+mpi' in self.spec:
# The HDF5 configure script warns if cxx and mpi are enabled
# together. There doesn't seem to be a real reason for this, except
# that parts of the MPI interface are not accessible via the C++
# interface. Since they are still accessible via the C interface,
# this is not actually a problem.
- extra_args.extend([
- "--enable-parallel",
- "CC=%s" % spec['mpi'].mpicc
- ])
-
- if '+cxx' in spec:
- extra_args.append("CXX=%s" % spec['mpi'].mpicxx)
+ extra_args += ['--enable-parallel',
+ 'CC=%s' % self.spec['mpi'].mpicc]
- if '+fortran' in spec:
- extra_args.append("FC=%s" % spec['mpi'].mpifc)
+ if '+cxx' in self.spec:
+ extra_args.append('CXX=%s' % self.spec['mpi'].mpicxx)
- if '+szip' in spec:
- extra_args.append("--with-szlib=%s" % spec['szip'].prefix)
+ if '+fortran' in self.spec:
+ extra_args.append('FC=%s' % self.spec['mpi'].mpifc)
- if '+threadsafe' in spec:
- extra_args.extend([
- '--enable-threadsafe',
- '--disable-hl',
- ])
+ extra_args.append('--with-zlib=%s' % self.spec['zlib'].prefix)
- return ["--with-zlib=%s" % spec['zlib'].prefix] + extra_args
+ return extra_args
- def configure(self, spec, prefix):
- # Run the default autotools package configure
- super(Hdf5, self).configure(spec, prefix)
-
- if '@:1.8.14' in spec:
+ @run_after('configure')
+ def patch_postdeps(self):
+ if '@:1.8.14' in self.spec:
# On Ubuntu14, HDF5 1.8.12 (and maybe other versions)
# mysteriously end up with "-l -l" in the postdeps in the
# libtool script. Patch this by removing the spurious -l's.
@@ -170,7 +237,8 @@ class Hdf5(AutotoolsPackage):
arg for arg in m.group(1).split(' ') if arg != '-l'),
'libtool')
- @AutotoolsPackage.sanity_check('install')
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def check_install(self):
# Build and run a small program to test the installed HDF5 library
spec = self.spec
@@ -196,20 +264,16 @@ HDF5 version {version} {version}
with open("check.c", 'w') as f:
f.write(source)
if '+mpi' in spec:
- cc = which('%s' % spec['mpi'].mpicc)
+ cc = Executable(spec['mpi'].mpicc)
else:
- cc = which('cc')
- # TODO: Automate these path and library settings
- cc('-c', "-I%s" % join_path(spec.prefix, "include"), "check.c")
- cc('-o', "check", "check.o",
- "-L%s" % join_path(spec.prefix, "lib"),
- "-L%s" % join_path(spec.prefix, "lib64"),
- "-lhdf5",
- "-lz")
+ cc = Executable(self.compiler.cc)
+ cc(*(['-c', "check.c"] + spec['hdf5'].headers.cpp_flags.split()))
+ cc(*(['-o', "check", "check.o"] +
+ spec['hdf5'].libs.ld_flags.split()))
try:
check = Executable('./check')
- output = check(return_output=True)
- except:
+ output = check(output=str)
+ except ProcessError:
output = ""
success = output == expected
if not success:
@@ -224,26 +288,3 @@ HDF5 version {version} {version}
print('-' * 80)
raise RuntimeError("HDF5 install check failed")
shutil.rmtree(checkdir)
-
- def url_for_version(self, version):
- # If we have a specific URL for this version, return it.
- version_urls = self.version_urls()
- if version in version_urls:
- return version_urls[version]
-
- base_url = "http://www.hdfgroup.org/ftp/HDF5/releases"
-
- if version == Version("1.2.2"):
- return "{0}/hdf5-{1}.tar.gz".format(base_url, version)
- elif version < Version("1.6.6"):
- return "{0}/hdf5-{1}/hdf5-{2}.tar.gz".format(
- base_url, version.up_to(2), version)
- elif version < Version("1.7"):
- return "{0}/hdf5-{1}/hdf5-{2}/src/hdf5-{2}.tar.gz".format(
- base_url, version.up_to(2), version)
- elif version < Version("1.10"):
- return "{0}/hdf5-{1}/src/hdf5-{1}.tar.gz".format(
- base_url, version)
- else:
- return "{0}/hdf5-{1}/hdf5-{2}/src/hdf5-{2}.tar.gz".format(
- base_url, version.up_to(2), version)
diff --git a/var/spack/repos/builtin/packages/help2man/package.py b/var/spack/repos/builtin/packages/help2man/package.py
index 506b1c1465..cc86affeaa 100644
--- a/var/spack/repos/builtin/packages/help2man/package.py
+++ b/var/spack/repos/builtin/packages/help2man/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/hepmc/package.py b/var/spack/repos/builtin/packages/hepmc/package.py
index ab80dcf6ba..b5470225b5 100644
--- a/var/spack/repos/builtin/packages/hepmc/package.py
+++ b/var/spack/repos/builtin/packages/hepmc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Hepmc(Package):
+class Hepmc(CMakePackage):
"""The HepMC package is an object oriented, C++ event record for
High Energy Physics Monte Carlo generators and simulation."""
@@ -39,17 +39,10 @@ class Hepmc(Package):
version('2.06.06', '102e5503537a3ecd6ea6f466aa5bc4ae')
version('2.06.05', '2a4a2a945adf26474b8bdccf4f881d9c')
- depends_on("cmake", type='build')
+ depends_on('cmake@2.6:', type='build')
- def install(self, spec, prefix):
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
- options = [source_directory]
- options.append('-Dmomentum:STRING=GEV')
- options.append('-Dlength:STRING=MM')
- options.extend(std_cmake_args)
-
- with working_dir(build_directory, create=True):
- cmake(*options)
- make()
- make('install')
+ def cmake_args(self):
+ return [
+ '-Dmomentum:STRING=GEV',
+ '-Dlength:STRING=MM',
+ ]
diff --git a/var/spack/repos/builtin/packages/heppdt/package.py b/var/spack/repos/builtin/packages/heppdt/package.py
index 54c846ae33..613d8d9f8e 100644
--- a/var/spack/repos/builtin/packages/heppdt/package.py
+++ b/var/spack/repos/builtin/packages/heppdt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Heppdt(Package):
+class Heppdt(AutotoolsPackage):
"""The HepPID library contains translation methods for particle ID's
to and from various Monte Carlo generators and the PDG standard
numbering scheme. We realize that the generators adhere closely
@@ -40,9 +40,3 @@ class Heppdt(Package):
version('3.03.01', 'd411f3bfdf9c4350d802241ba2629cc2')
version('3.03.00', 'cd84d0a0454be982dcd8c285e060a7b3')
version('2.06.01', '5688b4bdbd84b48ed5dd2545a3dc33c0')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/highfive/package.py b/var/spack/repos/builtin/packages/highfive/package.py
new file mode 100644
index 0000000000..ad97e716e0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/highfive/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Highfive(CMakePackage):
+ """HighFive - Header only C++ HDF5 interface"""
+
+ homepage = "https://github.com/BlueBrain/HighFive"
+ url = "https://github.com/BlueBrain/HighFive/archive/v1.2.tar.gz"
+
+ version('1.2', '030728d53519c7e13b5a522d34240301')
+ version('1.1', '986f0bd18c5264709688a536c02d2b2a')
+ version('1.0', 'e44e548560ea92afdb244c223b7655b6')
+
+ variant('boost', default=False, description='Support Boost')
+ variant('mpi', default=True, description='Support MPI')
+
+ depends_on('boost @1.41:', when='+boost')
+ depends_on('hdf5')
+ depends_on('hdf5 +mpi', when='+mpi')
+
+ def cmake_args(self):
+ args = [
+ '-DUSE_BOOST:Bool={0}'.format('+boost' in self.spec),
+ '-DHIGHFIVE_PARALLEL_HDF5:Bool={0}'.format('+mpi' in self.spec),
+ '-DUNIT_TESTS:Bool=false',
+ '-DHIGHFIVE_EXAMPLES:Bool=false']
+ return args
diff --git a/var/spack/repos/builtin/packages/highwayhash/package.py b/var/spack/repos/builtin/packages/highwayhash/package.py
new file mode 100644
index 0000000000..3a12736aae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/highwayhash/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from glob import glob
+import os
+
+
+class Highwayhash(MakefilePackage):
+ """Strong (well-distributed and unpredictable) hashes:
+ - Portable implementation of SipHash
+ - HighwayHash, a 5x faster SIMD hash with security claims
+ """
+
+ homepage = "https://github.com/google/highwayhash"
+
+ version('dfcb97', git='https://github.com/google/highwayhash.git',
+ commit='dfcb97ca4fe9277bf9dc1802dd979b071896453b')
+
+ build_targets = ['all', 'libhighwayhash.a']
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.include)
+
+ # The following are CPU and compiler flag specific
+ if(os.path.exists('libhighwayhash.a')):
+ mkdirp(prefix.lib)
+ install('libhighwayhash.a', prefix.lib)
+ if(os.path.exists('highwayhash_test')):
+ install('highwayhash_test', prefix.bin)
+ if(os.path.exists('benchmark')):
+ install('benchmark', prefix.bin)
+
+ # Always installed
+ install('profiler_example', prefix.bin)
+ install('nanobenchmark_example', prefix.bin)
+ install('vector_test', prefix.bin)
+ install('sip_hash_test', prefix.bin)
+ for i in glob('highwayhash/*.h'):
+ install(i, prefix.include)
diff --git a/var/spack/repos/builtin/packages/hisat2/package.py b/var/spack/repos/builtin/packages/hisat2/package.py
new file mode 100644
index 0000000000..1b945c61c8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hisat2/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+import os.path
+
+
+class Hisat2(MakefilePackage):
+ """HISAT2 is a fast and sensitive alignment program for mapping
+ next-generation sequencing reads (whole-genome, transcriptome, and
+ exome sequencing data) against the general human population (as well as
+ against a single reference genome)."""
+
+ homepage = "http://ccb.jhu.edu/software/hisat2"
+ url = "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-2.1.0-source.zip"
+
+ version('2.1.0', '8b566d1b7e6c5801c8ae9824ed2da3d0')
+
+ def install(self, spec, prefix):
+ install_tree('doc', prefix.doc)
+ install_tree('example', prefix.example)
+ install_tree('hisatgenotype_modules', prefix.hisatgenotype_modules)
+ install_tree('hisatgenotype_scripts', prefix.hisatgenotype_scripts)
+ install_tree('scripts', prefix.scripts)
+ mkdirp(prefix.bin)
+ install('hisat2', prefix.bin)
+ install('hisat2-align-s', prefix.bin)
+ install('hisat2-align-l', prefix.bin)
+ install('hisat2-build', prefix.bin)
+ install('hisat2-build-s', prefix.bin)
+ install('hisat2-build-l', prefix.bin)
+ install('hisat2-inspect', prefix.bin)
+ install('hisat2-inspect-s', prefix.bin)
+ install('hisat2-inspect-l', prefix.bin)
+ files = glob.iglob('*.py')
+ for file in files:
+ if os.path.isfile(file):
+ install(file, prefix.bin)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', self.spec.prefix)
diff --git a/var/spack/repos/builtin/packages/hmmer/package.py b/var/spack/repos/builtin/packages/hmmer/package.py
index 6a236e9fc9..2681282b7d 100644
--- a/var/spack/repos/builtin/packages/hmmer/package.py
+++ b/var/spack/repos/builtin/packages/hmmer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/hoomd-blue/package.py b/var/spack/repos/builtin/packages/hoomd-blue/package.py
index 5e27f6aead..547a15ae6b 100644
--- a/var/spack/repos/builtin/packages/hoomd-blue/package.py
+++ b/var/spack/repos/builtin/packages/hoomd-blue/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import os
-class HoomdBlue(Package):
+class HoomdBlue(CMakePackage):
"""HOOMD-blue is a general-purpose particle simulation toolkit. It scales
from a single CPU core to thousands of GPUs.
@@ -36,28 +36,51 @@ class HoomdBlue(Package):
to create custom initialization routines, control simulation parameters,
and perform in situ analysis."""
- homepage = "https://codeblue.umich.edu/hoomd-blue/index.html"
- url = "https://bitbucket.org/glotzer/hoomd-blue/get/v1.3.3.tar.bz2"
+ homepage = "http://glotzerlab.engin.umich.edu/hoomd-blue/"
+ git = "https://bitbucket.org/glotzer/hoomd-blue"
- version('1.3.3', '1469ef4531dc14b579c0acddbfe6a273')
+ # TODO: There is a bug in Spack that requires a url to be defined
+ # even if it isn't used. This URL can hopefully be removed someday.
+ url = "https://bitbucket.org/glotzer/hoomd-blue/get/v2.1.6.tar.bz2"
- variant('mpi', default=True, description='Compile with MPI enabled')
- variant('cuda', default=True, description='Compile with CUDA Toolkit')
- variant('doc', default=True, description='Generate documentation')
+ version('develop', git=git, submodules=True)
+
+ # Bitbucket has tarballs for each release, but they cannot be built.
+ # The tarball doesn't come with the git submodules, nor does it come
+ # with a .git directory, causing the build to fail. As a workaround,
+ # clone a specific tag from Bitbucket instead of using the tarballs.
+ # https://bitbucket.org/glotzer/hoomd-blue/issues/238
+ version('2.1.6', git=git, tag='v2.1.6', submodules=True)
+
+ variant('mpi', default=True, description='Compile with MPI enabled')
+ variant('cuda', default=True, description='Compile with CUDA Toolkit')
+ variant('doc', default=False, description='Generate documentation')
+
+ # HOOMD-blue requires C++11 support, which is only available in GCC 4.7+
+ # https://bitbucket.org/glotzer/hoomd-blue/issues/238
+ # https://gcc.gnu.org/projects/cxx-status.html
+ conflicts('%gcc@:4.6')
+
+ # HOOMD-blue uses hexadecimal floats, which are not technically part of
+ # the C++11 standard. GCC 6.0+ produces an error when this happens.
+ # https://bitbucket.org/glotzer/hoomd-blue/issues/239
+ # https://bugzilla.redhat.com/show_bug.cgi?id=1321986
+ conflicts('%gcc@6.0:')
extends('python')
- depends_on('py-numpy', type=('build', 'run'))
- depends_on('boost+python')
- depends_on('cmake', type='build')
+ depends_on('python@2.7:')
+ depends_on('py-numpy@1.7:', type=('build', 'run'))
+ depends_on('cmake@2.8.0:', type='build')
+ depends_on('pkg-config', type='build')
depends_on('mpi', when='+mpi')
- depends_on('cuda', when='+cuda')
- depends_on('doxygen', when='+doc', type='build')
+ depends_on('cuda@7.0:', when='+cuda')
+ depends_on('doxygen@1.8.5:', when='+doc', type='build')
- def install(self, spec, prefix):
+ def cmake_args(self):
+ spec = self.spec
cmake_args = [
- '-DPYTHON_EXECUTABLE=%s/python' % spec['python'].prefix.bin,
- '-DBOOST_ROOT=%s' % spec['boost'].prefix
+ '-DPYTHON_EXECUTABLE={0}'.format(spec['python'].command.path),
]
# MPI support
@@ -90,9 +113,4 @@ class HoomdBlue(Package):
else:
cmake_args.append('-DENABLE_DOXYGEN=OFF')
- cmake_args.extend(std_cmake_args)
- cmake('.', *cmake_args)
-
- make()
- make("test")
- make("install")
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/hpccg/package.py b/var/spack/repos/builtin/packages/hpccg/package.py
new file mode 100644
index 0000000000..97fddc4f12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hpccg/package.py
@@ -0,0 +1,77 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hpccg(MakefilePackage):
+ """Proxy Application. Intended to be the 'best approximation
+ to an unstructured implicit finite element or finite volume
+ application in 800 lines or fewer.'
+ """
+
+ homepage = "https://mantevo.org/about/applications/"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/HPCCG/HPCCG-1.0.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.0', '2e99da1a89de5ef0844da5e6ffbf39dc')
+
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('openmp', default=True, description='Build with OpenMP support')
+
+ # Optional dependencies
+ depends_on('mpi', when='+mpi')
+
+ @property
+ def build_targets(self):
+ targets = []
+
+ if '+mpi' in self.spec:
+ targets.append('CXX={0}'.format(self.spec['mpi'].mpicxx))
+ targets.append('LINKER={0}'.format(self.spec['mpi'].mpicxx))
+ targets.append('USE_MPI=-DUSING_MPI')
+ else:
+ targets.append('CXX=c++')
+ targets.append('LINKER=c++')
+
+ if '+openmp' in self.spec:
+ targets.append('USE_OMP=-DUSING_OMP')
+ targets.append('OMP_FLAGS={0}'.format(self.compiler.openmp_flag))
+
+ # Remove Compiler Specific Optimization Flags
+ if '%gcc' not in self.spec:
+ targets.append('CPP_OPT_FLAGS=')
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('test_HPCCG', prefix.bin)
+ install('README', prefix.doc)
+ install('weakScalingRunScript', prefix.bin)
+ install('strongScalingRunScript', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/hpctoolkit-externals/package.py b/var/spack/repos/builtin/packages/hpctoolkit-externals/package.py
index 86d95a1e21..73ee39539f 100644
--- a/var/spack/repos/builtin/packages/hpctoolkit-externals/package.py
+++ b/var/spack/repos/builtin/packages/hpctoolkit-externals/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,11 +30,10 @@ class HpctoolkitExternals(Package):
HpctoolkitExternals package provides all these prerequisites."""
homepage = "http://hpctoolkit.org"
+ url = "https://github.com/HPCToolkit/hpctoolkit-externals"
- # Note: No precise release tags/branches provided
- version('5.4',
- git='https://github.com/HPCToolkit/hpctoolkit-externals.git',
- commit='3d2953623357bb06e9a4b51eca90a4b039c2710e')
+ version('2017.06', git=url, tag='release-2017.06')
+ version('master', git=url)
parallel = False
diff --git a/var/spack/repos/builtin/packages/hpctoolkit/package.py b/var/spack/repos/builtin/packages/hpctoolkit/package.py
index b6e03627de..14be6af8ef 100644
--- a/var/spack/repos/builtin/packages/hpctoolkit/package.py
+++ b/var/spack/repos/builtin/packages/hpctoolkit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,17 +34,18 @@ class Hpctoolkit(Package):
and attributes them to the full calling context in which they occur."""
homepage = "http://hpctoolkit.org"
+ url = "https://github.com/HPCToolkit/hpctoolkit"
- # Note: No precise release tags/branches provided
- version('5.4', git='https://github.com/HPCToolkit/hpctoolkit.git',
- commit='d9ca2112762e5a06ea31b5295d793e4a83272d19')
+ version('2017.06', git=url, tag='release-2017.06')
+ version('master', git=url)
variant('mpi', default=True, description='Enable MPI supoort')
variant('papi', default=True, description='Enable PAPI counter support')
- depends_on('hpctoolkit-externals')
depends_on('papi', when='+papi')
depends_on('mpi', when='+mpi')
+ depends_on('hpctoolkit-externals@2017.06', when='@2017.06')
+ depends_on('hpctoolkit-externals@master', when='@master')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/hpgmg/package.py b/var/spack/repos/builtin/packages/hpgmg/package.py
new file mode 100644
index 0000000000..db9b0ce225
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hpgmg/package.py
@@ -0,0 +1,87 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hpgmg(Package):
+ """HPGMG implements full multigrid (FMG) algorithms using
+ finite-volume and finite-element methods.
+ Different algorithmic variants adjust the arithmetic intensity
+ and architectural properties that are tested. These FMG methods
+ converge up to discretization error in one F-cycle,
+ thus may be considered direct solvers. An F-cycle visits
+ the finest level a total of two times,
+ the first coarsening (8x smaller) 4 times,
+ the second coarsening 6 times, etc."""
+
+ homepage = "https://bitbucket.org/hpgmg/hpgmg"
+ url = "https://bitbucket.org/hpgmg/hpgmg/get/master.tar.gz"
+ tags = ['proxy-app']
+
+ version('master', '4a2b139e1764c84ed7fe06334d3f8d8a')
+
+ variant(
+ 'fe', default=True, description='Build finite element solver')
+ variant(
+ 'fv', default='mpi', values=('serial', 'mpi', 'none'),
+ description='Build finite volume solver with or without MPI support')
+ variant('cuda', default=False, description='Build with CUDA')
+
+ depends_on('petsc', when='+fe')
+ depends_on('mpi', when='+fe')
+ depends_on('mpi', when='fv=mpi')
+ depends_on('cuda', when='+cuda')
+ depends_on('python', type='build')
+
+ phases = ['configure', 'build', 'install']
+
+ def configure_args(self):
+ args = []
+ if '+fe' in self.spec:
+ args.append('--fe')
+
+ if 'fv=serial' in self.spec:
+ args.append('--no-fv-mpi')
+
+ if 'mpi' in self.spec:
+ args.append('--CC={0}'.format(self.spec['mpi'].mpicc))
+
+ if 'fv=none' in self.spec:
+ args.append('--no-fv')
+ else:
+ args.append('--CFLAGS=' + self.compiler.openmp_flag)
+
+ return args
+
+ def configure(self, spec, prefix):
+ configure(*self.configure_args())
+
+ def build(self, spec, prefix):
+ make()
+
+ def install(self, spec, prefix):
+ install_tree('build/bin', prefix.bin)
+ install('README.md', prefix)
+ install('LICENSE', prefix)
diff --git a/var/spack/repos/builtin/packages/hpl/package.py b/var/spack/repos/builtin/packages/hpl/package.py
index fa0013de17..0c484fc1f7 100644
--- a/var/spack/repos/builtin/packages/hpl/package.py
+++ b/var/spack/repos/builtin/packages/hpl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,7 +27,7 @@ import os
import platform
-class Hpl(Package):
+class Hpl(MakefilePackage):
"""HPL is a software package that solves a (random) dense linear system
in double precision (64 bits) arithmetic on distributed-memory computers.
It can thus be regarded as a portable as well as freely available
@@ -45,7 +45,11 @@ class Hpl(Package):
parallel = False
- def configure(self, spec, arch):
+ arch = '{0}-{1}'.format(platform.system(), platform.processor())
+
+ build_targets = ['arch={0}'.format(arch)]
+
+ def edit(self, spec, prefix):
# List of configuration options
# Order is important
config = []
@@ -66,7 +70,7 @@ class Hpl(Package):
'RM = /bin/rm -f',
'TOUCH = touch',
# Platform identifier
- 'ARCH = {0}'.format(arch),
+ 'ARCH = {0}'.format(self.arch),
# HPL Directory Structure / HPL library
'TOPdir = {0}'.format(os.getcwd()),
'INCdir = $(TOPdir)/include',
@@ -74,11 +78,11 @@ class Hpl(Package):
'LIBdir = $(TOPdir)/lib/$(ARCH)',
'HPLlib = $(LIBdir)/libhpl.a',
# Message Passing library (MPI)
- 'MPinc = -I{0}'.format(spec['mpi'].prefix.include),
+ 'MPinc = {0}'.format(spec['mpi'].prefix.include),
'MPlib = -L{0}'.format(spec['mpi'].prefix.lib),
# Linear Algebra library (BLAS or VSIPL)
'LAinc = {0}'.format(spec['blas'].prefix.include),
- 'LAlib = {0}'.format(spec['blas'].blas_libs.joined()),
+ 'LAlib = {0}'.format(spec['blas'].libs.joined()),
# F77 / C interface
'F2CDEFS = -DAdd_ -DF77_INTEGER=int -DStringSunStyle',
# HPL includes / libraries / specifics
@@ -99,21 +103,13 @@ class Hpl(Package):
])
# Write configuration options to include file
- with open('Make.{0}'.format(arch), 'w') as makefile:
+ with open('Make.{0}'.format(self.arch), 'w') as makefile:
for var in config:
makefile.write('{0}\n'.format(var))
def install(self, spec, prefix):
- # Arch used for file naming purposes only
- arch = '{0}-{1}'.format(platform.system(), platform.processor())
-
- # Generate Makefile include
- self.configure(spec, arch)
-
- make('arch={0}'.format(arch))
-
# Manual installation
- install_tree(join_path('bin', arch), prefix.bin)
- install_tree(join_path('lib', arch), prefix.lib)
- install_tree(join_path('include', arch), prefix.include)
+ install_tree(join_path('bin', self.arch), prefix.bin)
+ install_tree(join_path('lib', self.arch), prefix.lib)
+ install_tree(join_path('include', self.arch), prefix.include)
install_tree('man', prefix.man)
diff --git a/var/spack/repos/builtin/packages/hpx/package.py b/var/spack/repos/builtin/packages/hpx/package.py
new file mode 100644
index 0000000000..2c5e0c1402
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hpx/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Hpx(CMakePackage):
+ """C++ runtime system for parallel and distributed applications."""
+
+ homepage = "http://stellar.cct.lsu.edu/tag/hpx/"
+ url = "http://stellar.cct.lsu.edu/files/hpx_1.0.0.tar.gz"
+
+ version('1.0.0', '4983e7c6402417ec794d40343e36e417')
+
+ depends_on('boost@1.55.0:')
+ depends_on('hwloc@1.6:')
+
+ def cmake_args(self):
+ args = ['-DHPX_BUILD_EXAMPLES=OFF', '-DHPX_MALLOC=system']
+ return args
diff --git a/var/spack/repos/builtin/packages/hpx5/configure.patch b/var/spack/repos/builtin/packages/hpx5/configure.patch
new file mode 100644
index 0000000000..9ac8e24849
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hpx5/configure.patch
@@ -0,0 +1,36 @@
+--- a/hpx/configure
++++ b/hpx/configure
+@@ -18002,33 +18002,21 @@
+ case $PE_ENV in #(
+ CRAY*) :
+
+- LIBHPX_CPPFLAGS="$LIBHPX_CPPFLAGS ‐h noomp"
+- LIBHPX_CFLAGS="$LIBHPX_CFLAGS -h nomessage=1254"
+- LIBHPX_CCASFLAGS="$LIBHPX_CCASFLAGS -h gnu -h nomessage=1254"
+ ;; #(
+ PGI*) :
+
+ ;; #(
+ GNU*) :
+
+- hpx_pe_env_cflags_pedantic="-pedantic"
+- hpx_pe_env_cflags_wall="-Wall"
+ ;; #(
+ INTEL*) :
+
+ # icc complains about our use of gcc memory model macros, but the complaint
+ # isn't a problem or helpful, so suppress that one warning. The sync headers
+ # aren't included by HPX so external users don't care.
+- LIBHPX_CFLAGS="$LIBHPX_CFLAGS -wd32013"
+- HPX_APPS_CFLAGS="$HPX_APPS_CFLAGS -wd32013"
+- hpx_pe_env_cflags_pedantic="-pedantic"
+- hpx_pe_env_cflags_wall="-Wall"
+ ;; #(
+ CLANG*) :
+
+- LIBHPX_CPPFLAGS="$LIBHPX_CPPFLAGS -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-private-field"
+- hpx_pe_env_cflags_pedantic="-pedantic"
+- hpx_pe_env_cflags_wall="-Wall"
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unknown programming environment" >&5
+ $as_echo "$as_me: WARNING: Unknown programming environment" >&2;} ;; #(
diff --git a/var/spack/repos/builtin/packages/hpx5/package.py b/var/spack/repos/builtin/packages/hpx5/package.py
index fe75c256f8..dfc112fb24 100644
--- a/var/spack/repos/builtin/packages/hpx5/package.py
+++ b/var/spack/repos/builtin/packages/hpx5/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,11 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+
from spack import *
-import os
-class Hpx5(Package):
+class Hpx5(AutotoolsPackage):
"""The HPX-5 Runtime System. HPX-5 (High Performance ParalleX) is an
open source, portable, performance-oriented runtime developed at
CREST (Indiana University). HPX-5 provides a distributed
@@ -39,6 +39,8 @@ class Hpx5(Package):
homepage = "http://hpx.crest.iu.edu"
url = "http://hpx.crest.iu.edu/release/hpx-3.1.0.tar.gz"
+ version('4.1.0', '43cb78758506f77416b95276a472f84f')
+ version('4.0.0', 'b40dc03449ae1039cbb48ee149952b22')
version('3.1.0', '9e90b8ac46788c009079632828c77628')
version('2.0.0', '3d2ff3aab6c46481f9ec65c5b2bfe7a6')
version('1.3.0', '2260ecc7f850e71a4d365a43017d8cee')
@@ -46,33 +48,91 @@ class Hpx5(Package):
version('1.1.0', '646afb460ecb7e0eea713a634933ce4f')
version('1.0.0', '8020822adf6090bd59ed7fe465f6c6cb')
+ # Don't second-guess what compiler we are using on Cray
+ patch("configure.patch", when='@4.0.0')
+
+ variant('cuda', default=False, description='Enable CUDA support')
+ variant('cxx11', default=False, description='Enable C++11 hpx++ interface')
variant('debug', default=False, description='Build debug version of HPX-5')
- variant('photon', default=False, description='Enable Photon support')
+ variant('instrumentation', default=False, description='Enable instrumentation (may affect performance)')
+ variant('metis', default=False, description='Enable METIS support')
variant('mpi', default=False, description='Enable MPI support')
+ variant('opencl', default=False, description='Enable OpenCL support')
+ variant('photon', default=False, description='Enable Photon support')
+ variant('pic', default=True, description='Produce position-independent code')
+ depends_on("autoconf", type='build')
+ depends_on("automake", type='build')
+ depends_on("hwloc")
+ depends_on("hwloc +cuda", when='+cuda')
+ # Note: We could disable CUDA support via "hwloc ~cuda"
+ depends_on("jemalloc")
+ # depends_on("libffi")
+ depends_on("libtool", type='build')
+ # depends_on("lz4") # hpx5 always builds its own lz4
+ depends_on("m4", type='build')
+ depends_on("metis", when='+metis')
depends_on("mpi", when='+mpi')
depends_on("mpi", when='+photon')
+ depends_on("opencl", when='+opencl')
+ # depends_on("papi")
+ depends_on("pkg-config", type='build')
+
+ configure_directory = "hpx"
+ build_directory = "spack-build"
+
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ '--enable-agas', # make this a variant?
+ '--enable-jemalloc', # make this a variant?
+ '--enable-percolation', # make this a variant?
+ # '--enable-rebalancing', # this seems broken
+ '--with-hwloc=hwloc',
+ '--with-jemalloc=jemalloc',
+ # Spack's libffi installs its headers strangely,
+ # leading to problems
+ '--with-libffi=contrib',
+ # '--with-papi=papi', # currently disabled in HPX
+ ]
+
+ if '+cxx11' in spec:
+ args += ['--enable-hpx++']
- def install(self, spec, prefix):
- extra_args = []
if '+debug' in spec:
- extra_args.extend([
- '--enable-debug',
- 'CFLAGS=-g -O0'
- ])
- else:
- extra_args.append('CFLAGS=-O3')
+ args += ['--enable-debug']
+
+ if '+instrumentation' in spec:
+ args += ['--enable-instrumentation']
+
+ if '+mpi' in spec or '+photon' in spec:
+ # photon requires mpi
+ args += ['--enable-mpi']
+ # Choose pkg-config name for MPI library
+ if '^openmpi' in spec:
+ args += ['--with-mpi=ompi-cxx']
+ elif '^mpich' in spec:
+ args += ['--with-mpi=mpich']
+ elif '^mvapich2' in spec:
+ args += ['--with-mpi=mvapich2-cxx']
+ else:
+ args += ['--with-mpi=system']
- if '+mpi' in spec:
- extra_args.append('--enable-mpi')
+ # METIS does not support pkg-config; HPX will pick it up automatically
+ # if '+metis' in spec:
+ # args += ['--with-metis=???']
+
+ if '+opencl' in spec:
+ args += ['--enable-opencl']
+ if '^pocl' in spec:
+ args += ['--with-opencl=pocl']
+ else:
+ args += ['--with-opencl=system']
if '+photon' in spec:
- extra_args.extend([
- '--enable-mpi',
- '--enable-photon'
- ])
-
- os.chdir("./hpx/")
- configure('--prefix=%s' % prefix, *extra_args)
- make()
- make("install")
+ args += ['--enable-photon']
+
+ if '+pic' in spec:
+ args += ['--with-pic']
+
+ return args
diff --git a/var/spack/repos/builtin/packages/hsakmt/package.py b/var/spack/repos/builtin/packages/hsakmt/package.py
index 0daad4afed..5574486066 100644
--- a/var/spack/repos/builtin/packages/hsakmt/package.py
+++ b/var/spack/repos/builtin/packages/hsakmt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Hsakmt(Package):
+class Hsakmt(AutotoolsPackage):
"""hsakmt is a thunk library that provides a userspace interface to amdkfd
(AMD's HSA Linux kernel driver). It is the HSA equivalent of libdrm."""
@@ -33,9 +33,3 @@ class Hsakmt(Package):
url = "https://www.x.org/archive/individual/lib/hsakmt-1.0.0.tar.gz"
version('1.0.0', '9beb20104e505300daf541266c4c3c3d')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/hstr/package.py b/var/spack/repos/builtin/packages/hstr/package.py
new file mode 100644
index 0000000000..e019e9c3af
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hstr/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hstr(AutotoolsPackage):
+ """hstr(hh) is a shell history suggest box for Bash and Zsh,
+ which enables easy viewing, searching and using
+ your command history."""
+
+ homepage = "https://github.com/dvorka/hstr"
+ url = "https://github.com/dvorka/hstr/archive/1.22.tar.gz"
+
+ version('1.22', '620dab922fadf2858938fbe36d9f99fd')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+ depends_on('ncurses@5.9')
+ depends_on('readline')
diff --git a/var/spack/repos/builtin/packages/htop/package.py b/var/spack/repos/builtin/packages/htop/package.py
index 3df0a35356..168c03302d 100644
--- a/var/spack/repos/builtin/packages/htop/package.py
+++ b/var/spack/repos/builtin/packages/htop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,17 @@
from spack import *
-class Htop(Package):
+class Htop(AutotoolsPackage):
"""htop is an interactive text-mode process viewer for Unix systems."""
homepage = "https://github.com/hishamhm/htop"
url = "https://hisham.hm/htop/releases/2.0.2/htop-2.0.2.tar.gz"
+ list_url = "https://hisham.hm/htop/releases"
+ list_depth = 1
version('2.0.2', '7d354d904bad591a931ad57e99fea84a')
depends_on('ncurses')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make('install')
+ def configure_args(self):
+ return ['--enable-shared']
diff --git a/var/spack/repos/builtin/packages/htslib/package.py b/var/spack/repos/builtin/packages/htslib/package.py
index 1a8b8fd2f5..000c68e245 100644
--- a/var/spack/repos/builtin/packages/htslib/package.py
+++ b/var/spack/repos/builtin/packages/htslib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,30 @@
from spack import *
-class Htslib(Package):
+class Htslib(AutotoolsPackage):
"""C library for high-throughput sequencing data formats."""
homepage = "https://github.com/samtools/htslib"
- url = "https://github.com/samtools/htslib/releases/download/1.3.1/htslib-1.3.1.tar.bz2"
+ version('1.6', 'd6fd14e208aca7e08cbe9072233d0af9')
+ version('1.4', '2a22ff382654c033c40e4ec3ea880050')
version('1.3.1', '16d78f90b72f29971b042e8da8be6843')
+ version('1.2', '64026d659c3b062cfb6ddc8a38e9779f')
depends_on('zlib')
+ depends_on('bzip2', when="@1.4:")
+ depends_on('xz', when="@1.4:")
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
- make()
- make('install')
+ depends_on('m4', when="@1.2")
+ depends_on('autoconf', when="@1.2")
+ depends_on('automake', when="@1.2")
+ depends_on('libtool', when="@1.2")
+
+ # v1.2 uses the automagically assembled tarball from .../archive/...
+ # everything else uses the tarballs uploaded to the release
+ def url_for_version(self, version):
+ if version.string == '1.2':
+ return 'https://github.com/samtools/htslib/archive/1.2.tar.gz'
+ else:
+ url = "https://github.com/samtools/htslib/releases/download/{0}/htslib-{0}.tar.bz2"
+ return url.format(version.dotted)
diff --git a/var/spack/repos/builtin/packages/httpie/package.py b/var/spack/repos/builtin/packages/httpie/package.py
new file mode 100644
index 0000000000..2ec4c6eaad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/httpie/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Httpie(PythonPackage):
+ """Modern command line HTTP client."""
+
+ homepage = "https://httpie.org/"
+ url = "https://pypi.io/packages/source/h/httpie/httpie-0.9.8.tar.gz"
+
+ version('0.9.9', '13ed0b79b65e793eb288e563db38b2a2')
+ version('0.9.8', 'e0d1af07d0959a2e081e7954797ce260')
+
+ variant('socks', default=True,
+ description='Enable SOCKS proxy support')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-pygments@2.1.3:', type=('build', 'run'))
+ depends_on('py-requests@2.11.0:', type=('build', 'run'))
+ depends_on('py-pysocks', type=('build', 'run'), when="+socks")
+ # Concretization problem breaks this. Unconditional for now...
+ # https://github.com/spack/spack/issues/3628
+ # depends_on('py-argparse@1.2.1:', type=('build', 'run'),
+ # when='^python@:2.6,3.0:3.1')
+ depends_on('py-argparse@1.2.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/hub/package.py b/var/spack/repos/builtin/packages/hub/package.py
index 5d7c082897..ff38385242 100644
--- a/var/spack/repos/builtin/packages/hub/package.py
+++ b/var/spack/repos/builtin/packages/hub/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/hunspell/package.py b/var/spack/repos/builtin/packages/hunspell/package.py
new file mode 100644
index 0000000000..2fef3d369e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hunspell/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Hunspell(AutotoolsPackage):
+ """The most popular spellchecking library (sez the author...)."""
+
+ homepage = "http://hunspell.github.io/"
+ url = "https://github.com/hunspell/hunspell/archive/v1.6.0.tar.gz"
+
+ version('1.6.0', '047c3feb121261b76dc16cdb62f54483')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/hwloc/package.py b/var/spack/repos/builtin/packages/hwloc/package.py
index 111c424b22..7961d930db 100644
--- a/var/spack/repos/builtin/packages/hwloc/package.py
+++ b/var/spack/repos/builtin/packages/hwloc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,12 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+
from spack import *
+import sys
-class Hwloc(Package):
+class Hwloc(AutotoolsPackage):
"""The Portable Hardware Locality (hwloc) software package
provides a portable abstraction (across OS, versions,
architectures, ...) of the hierarchical topology of modern
@@ -40,21 +42,40 @@ class Hwloc(Package):
homepage = "http://www.open-mpi.org/projects/hwloc/"
url = "http://www.open-mpi.org/software/hwloc/v1.9/downloads/hwloc-1.9.tar.gz"
list_url = "http://www.open-mpi.org/software/hwloc/"
- list_depth = 3
+ list_depth = 2
+ version('1.11.8', 'a0fa1c9109a4d8b4b6568e62cc9b6e30')
+ version('1.11.7', '867a5266675e5bf1ef4ab66c459653f8')
+ version('1.11.6', 'b4e95eadd2fbdb6d40bbd96be6f03c84')
+ version('1.11.5', '8f5fe6a9be2eb478409ad5e640b2d3ba')
version('1.11.4', 'b6f23eb59074fd09fdd84905d50b103d')
version('1.11.3', 'c1d36a9de6028eac1d18ea4782ef958f')
version('1.11.2', 'e4ca55c2a5c5656da4a4e37c8fc51b23')
version('1.11.1', 'feb4e416a1b25963ed565d8b42252fdc')
version('1.9', '1f9f9155682fe8946a97c08896109508')
- depends_on('libpciaccess')
+ variant('cuda', default=False, description="Support CUDA devices")
+ variant('libxml2', default=True, description="Build with libxml2")
+ variant('pci', default=(sys.platform != 'darwin'),
+ description="Support analyzing devices on PCI bus")
+
+ depends_on('cuda', when='+cuda')
+ depends_on('libpciaccess', when='+pci')
+ depends_on('libxml2', when='+libxml2')
+ depends_on('pkg-config', type='build')
def url_for_version(self, version):
return "http://www.open-mpi.org/software/hwloc/v%s/downloads/hwloc-%s.tar.gz" % (version.up_to(2), version)
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
-
- make()
- make("install")
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ "--enable-cuda" if '+cuda' in spec else "--disable-cuda",
+ "--enable-libxml2" if '+libxml2' in spec else "--disable-libxml2",
+ "--enable-pci" if '+pci' in spec else "--disable-pci",
+ # Disable OpenCL, since hwloc might pick up an OpenCL
+ # library at build time that is then not found at run time
+ # (Alternatively, we could require OpenCL as dependency.)
+ "--disable-opencl",
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/hybpiper/package.py b/var/spack/repos/builtin/packages/hybpiper/package.py
new file mode 100644
index 0000000000..c3e3a22b13
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hybpiper/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+import os
+
+
+class Hybpiper(Package):
+ """HybPiper was designed for targeted sequence capture, in which DNA
+ sequencing libraries are enriched for gene regions of interest,
+ especially for phylogenetics. HybPiper is a suite of Python scripts
+ that wrap and connect bioinformatics tools in order to extract target
+ sequences from high-throughput DNA sequencing reads"""
+
+ homepage = "https://github.com/mossmatters/HybPiper"
+ url = "https://github.com/mossmatters/HybPiper/archive/v1.2.0.tar.gz"
+
+ version('1.2.0', '0ad78e9ca5e3f23ae0eb6236b07e1780')
+
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-biopython', type=('build', 'run'))
+ depends_on('exonerate')
+ depends_on('blast-plus')
+ depends_on('spades')
+ depends_on('parallel')
+ depends_on('bwa')
+ depends_on('samtools')
+
+ def setup_envionment(self, spack_env, run_env):
+ run_env.set('HYBPIPER_HOME', prefix)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ files = glob.iglob("*.py")
+ for file in files:
+ if os.path.isfile(file):
+ install(file, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/hydra/package.py b/var/spack/repos/builtin/packages/hydra/package.py
index eee346ba49..428f7db386 100644
--- a/var/spack/repos/builtin/packages/hydra/package.py
+++ b/var/spack/repos/builtin/packages/hydra/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Hydra(Package):
+class Hydra(AutotoolsPackage):
"""Hydra is a process management system for starting parallel jobs.
Hydra is designed to natively work with existing launcher daemons
(such as ssh, rsh, fork), as well as natively integrate with resource
@@ -34,12 +34,6 @@ class Hydra(Package):
homepage = "http://www.mpich.org"
url = "http://www.mpich.org/static/downloads/3.2/hydra-3.2.tar.gz"
list_url = "http://www.mpich.org/static/downloads/"
- list_depth = 2
+ list_depth = 1
version('3.2', '4d670916695bf7e3a869cc336a881b39')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/hypre/ibm-ppc64le.patch b/var/spack/repos/builtin/packages/hypre/ibm-ppc64le.patch
new file mode 100644
index 0000000000..b1ade00c09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hypre/ibm-ppc64le.patch
@@ -0,0 +1,12 @@
+--- hypre-2.11.1/src/config/config.guess 2016-06-09 10:56:18.000000000 -0400
++++ hypre-2.11.1/src/config/config.guess.patch 2017-02-24 22:53:42.718337013 -0500
+@@ -882,6 +882,9 @@
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-gnu
+ exit ;;
++ ppc64le:Linux:*:*)
++ echo powerpc64le-unknown-linux-gnu
++ exit ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
diff --git a/var/spack/repos/builtin/packages/hypre/package.py b/var/spack/repos/builtin/packages/hypre/package.py
index ed0f665462..8472d64337 100644
--- a/var/spack/repos/builtin/packages/hypre/package.py
+++ b/var/spack/repos/builtin/packages/hypre/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,10 +35,13 @@ class Hypre(Package):
homepage = "http://computation.llnl.gov/project/linear_solvers/software.php"
url = "http://computation.llnl.gov/project/linear_solvers/download/hypre-2.10.0b.tar.gz"
- version('develop', git='https://github.com/LLNL/hypre', tag='master')
+ version('2.12.1', 'c6fcb6d7e57cec1c7ce4a44da885068c', url='https://github.com/LLNL/hypre/archive/v2.12.1.tar.gz')
+ version('2.11.2', 'd507943a1a3ce5681c3308e2f3a6dd34')
version('2.11.1', '3f02ef8fd679239a6723f60b7f796519')
version('2.10.1', 'dc048c4cabb3cd549af72591474ad674')
version('2.10.0b', '768be38793a35bb5d055905b271f5b8e')
+ version('develop', git='https://github.com/LLNL/hypre', tag='master')
+ version('xsdk-0.2.0', git='https://github.com/LLNL/hypre', tag='xsdk-0.2.0')
# hypre does not know how to build shared libraries on Darwin
variant('shared', default=(sys.platform != 'darwin'),
@@ -48,19 +51,19 @@ class Hypre(Package):
description="Use internal Superlu routines")
variant('int64', default=False,
description="Use 64bit integers")
+ variant('mpi', default=True, description='Enable MPI support')
+
+ # Patch to add ppc64le in config.guess
+ patch('ibm-ppc64le.patch', when='@:2.11.1')
- depends_on("mpi")
+ depends_on("mpi", when='+mpi')
depends_on("blas")
depends_on("lapack")
def install(self, spec, prefix):
- os.environ['CC'] = spec['mpi'].mpicc
- os.environ['CXX'] = spec['mpi'].mpicxx
- os.environ['F77'] = spec['mpi'].mpif77
-
# Note: --with-(lapack|blas)_libs= needs space separated list of names
- lapack = spec['lapack'].lapack_libs
- blas = spec['blas'].blas_libs
+ lapack = spec['lapack'].libs
+ blas = spec['blas'].libs
configure_args = [
'--prefix=%s' % prefix,
@@ -70,6 +73,14 @@ class Hypre(Package):
'--with-blas-lib-dirs=%s' % ' '.join(blas.directories)
]
+ if '+mpi' in self.spec:
+ os.environ['CC'] = spec['mpi'].mpicc
+ os.environ['CXX'] = spec['mpi'].mpicxx
+ os.environ['F77'] = spec['mpi'].mpif77
+ configure_args.append('--with-MPI')
+ else:
+ configure_args.append('--without-MPI')
+
if '+int64' in self.spec:
configure_args.append('--enable-bigint')
diff --git a/var/spack/repos/builtin/packages/ibmisc/package.py b/var/spack/repos/builtin/packages/ibmisc/package.py
index f325205507..8fcf7980c8 100644
--- a/var/spack/repos/builtin/packages/ibmisc/package.py
+++ b/var/spack/repos/builtin/packages/ibmisc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,9 @@ class Ibmisc(CMakePackage):
"""Misc. reusable utilities used by IceBin."""
homepage = "https://github.com/citibeth/ibmisc"
- url = "https://github.com/citibeth/ibmisc/tarball/123"
+ url = "https://github.com/citibeth/ibmisc/archive/v0.1.0.tar.gz"
- version('0.1.0', '12f2a32432a11db48e00217df18e59fa')
+ version('0.1.0', '18c63db3e466c5a6fc2db3f903d06ecb')
variant('everytrace', default=False,
description='Report errors through Everytrace')
diff --git a/var/spack/repos/builtin/packages/iceauth/package.py b/var/spack/repos/builtin/packages/iceauth/package.py
index 59c6e0e7b7..a2f919be54 100644
--- a/var/spack/repos/builtin/packages/iceauth/package.py
+++ b/var/spack/repos/builtin/packages/iceauth/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Iceauth(Package):
+class Iceauth(AutotoolsPackage):
"""The iceauth program is used to edit and display the authorization
information used in connecting with ICE. It operates very much
like the xauth program for X11 connection authentication records."""
@@ -40,9 +40,3 @@ class Iceauth(Package):
depends_on('xproto@7.0.22:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/icedtea/package.py b/var/spack/repos/builtin/packages/icedtea/package.py
new file mode 100644
index 0000000000..9bc7da3102
--- /dev/null
+++ b/var/spack/repos/builtin/packages/icedtea/package.py
@@ -0,0 +1,181 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Icedtea(AutotoolsPackage):
+ """The IcedTea project provides a harness to build the source code from
+ http://openjdk.java.net using Free Software build tools and adds a number
+ of key features to the upstream OpenJDK codebase. IcedTea requires an
+ existing IcedTea or OpenJDK install to build."""
+
+ homepage = "http://icedtea.classpath.org/wiki/Main_Page"
+ url = "http://icedtea.wildebeest.org/download/source/icedtea-3.4.0.tar.gz"
+
+ version('3.4.0', 'eba66765b92794495e16b83f23640872')
+
+ provides('java@8', when='@3.4.0:3.99.99')
+ variant('X', default=False, description="Build with GUI support.")
+ variant('shenandoah', default=False,
+ description="Build with the shenandoah gc. Only for version 3+")
+
+ depends_on('pkg-config@0.9.0:', type='build')
+ depends_on('gmake', type='build')
+ depends_on('cups')
+ depends_on('jdk', type='build')
+ # X11 deps required for building even when headless
+ depends_on('libx11', when='~X', type='build')
+ depends_on('xproto', when='~X', type='build')
+ depends_on('libxext', when='~X', type='build')
+ depends_on('libxtst', when='~X', type='build')
+ depends_on('libxi', when='~X', type='build')
+ depends_on('libxt', when='~X', type='build')
+ depends_on('libxinerama', when='~X', type='build')
+ depends_on('libxrender', when='~X', type='build')
+ depends_on('libxcomposite', when='~X', type='build')
+ depends_on('libxau', when='~X', type='build')
+ depends_on('libxdmcp', when='~X', type='build')
+ depends_on('gtkplus+X', when='~X', type='build')
+
+ depends_on('libx11', when='+X')
+ depends_on('xproto', when='+X')
+ depends_on('libxext', when='+X')
+ depends_on('libxtst', when='+X')
+ depends_on('libxi', when='+X')
+ depends_on('libxt', when='+X')
+ depends_on('libxinerama', when='+X')
+ depends_on('libxrender', when='+X')
+ depends_on('libxcomposite', when='+X')
+ depends_on('libxau', when='+X')
+ depends_on('libxdmcp', when='+X')
+ depends_on('gtkplus+X', when='+X')
+
+ depends_on('freetype@2:')
+ depends_on('wget', type='build')
+ depends_on('giflib')
+ depends_on('libpng')
+ depends_on('jpeg')
+ depends_on('lcms')
+ depends_on('zlib')
+ depends_on('alsa-lib')
+
+ force_autoreconf = True
+
+ resource(name='corba', placement='corba_src',
+ sha512=('f0579608ab1342df231c4542dab1c40e648cda8e9780ea584fd476'
+ '79b07c93508cbfa85f0406d8aa8b9d528fc5bd99c9d41469568fbec'
+ '41a6456a13d914ac71c'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/corba.tar.xz',
+ when='@3.4.0')
+ resource(name='hotspot', placement='hotspot_src',
+ sha512=('29bc953d283f0a0a464fa150e2c4d71b0adaa29da67246843d230f3'
+ '70b5a20227fb40ef6a7e3b93f10b0cdec18b0cd2bbbceeaea3c9db4'
+ 'd64c158cc23babbad2'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/hotspot.tar.xz',
+ when='@3.4.0')
+ resource(name='jaxp', placement='jaxp_src',
+ sha512=('ef3ed47815e6d15f40c5947fee1058c252ac673f70b6bf7c30505fa'
+ 'a12fa5cbab8168d816abe7791dc88acec457744883db4c0af23fb21'
+ '66bbb709e870685bcd'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/jaxp.tar.xz',
+ when='@3.4.0')
+ resource(name='jaxws', placement='jaxws_src',
+ sha512=('867cac2919e715190596ae4f73fa42c6cba839ba48ae940adcef20a'
+ 'bfb23ffeeaa2501c4aedc214b3595bc4e2a4eea9fa7e7cac62a3420'
+ 'a11fb30a1f7edc9254'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/jaxws.tar.xz',
+ when='@3.4.0')
+ resource(name='jdk', placement='jdk_src',
+ sha512=('180d7b4435e465d68ed0b420b42dddc598c872075e225b8885ae183'
+ '3fa4ab5034ce5083c4dfba516a21b2d472321b37a01ba92793e17c7'
+ '8e9fddb1e254f12065'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/jdk.tar.xz',
+ when='@3.4.0')
+ resource(name='langtools', placement='langtools_src',
+ sha512=('0663f40b07de88cd7939557bf7fdb92077d7ca2132e369caefa82db'
+ '887261ea02102864d33ec0fef3b2c80dd366d25dbc1a95144139498'
+ 'be581dfabe913e4312'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/langtools.tar.xz',
+ when='@3.4.0')
+ resource(name='openjdk', placement='openjdk_src',
+ sha512=('f3cca223bd39c0202dd1a65a38ca17024b6cb5c82d833946ec1b7d2'
+ '8d205833b4dd2dadde505a1c2384e3b28ff0d21a4f175e064b8ac82'
+ 'aa8a07508e53cdc722'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/openjdk.tar.xz',
+ when='@3.4.0')
+ resource(name='nashorn', placement='nashorn_src',
+ sha512=('79b5095bab447d1911696bc1e328fb72c08764c0139cab14a28c0f6'
+ 'c2e49a2d96bb06fbbb85523b2586672cb0f13709c3158823d5ac3f3'
+ 'fe3f0f88402d3cb246'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/nashorn.tar.xz',
+ when='@3.4.0')
+ resource(name='shenandoah', placement='shenandoah_src',
+ sha512=('0f085e87c63679314ef322b3f4b854792d46539d5530dd75a7fd45b'
+ '8b6d663f58469be2808ea5fb4bf31f6c5369cb78f28e1599f748e19'
+ '31ba7040136306eb20'),
+ url='http://icedtea.wildebeest.org/download/drops/icedtea8/3.4.0/shenandoah.tar.xz',
+ when='@3.4.0')
+
+ def configure_args(self):
+ os.environ['POTENTIAL_CXX'] = os.environ['CXX']
+ os.environ['POTENTIAL_CC'] = os.environ['CC']
+ os.environ['WGET'] = self.spec['wget'].command.path
+ args = []
+ if '~X' in self.spec:
+ args.append('--enable-headless')
+ if '+shenandoah' in self.spec:
+ args.append('--with-hotspot-build=shenandoah')
+ args.append('--with-hotspot-src-zip=' + self.stage[9].archive_file)
+ args.append('--with-hotspot-checksum=no')
+ else:
+ args.append('--with-hotspot-src-zip=' + self.stage[2].archive_file)
+ args.append('--with-hotspot-checksum=no')
+ args += [
+ '--with-corba-src-zip=' + self.stage[1].archive_file,
+ '--with-cobra-checksum=no',
+ '--with-jaxp-src-zip=' + self.stage[3].archive_file,
+ '--with-jaxp-checksum=no',
+ '--with-jaxws-src-zip=' + self.stage[4].archive_file,
+ '--with-jaxws-checksum=no',
+ '--with-jdk-src-zip=' + self.stage[5].archive_file,
+ '--with-jdk-checksum=no',
+ '--with-langtools-src-zip=' + self.stage[6].archive_file,
+ '--with-langtools-checksum=no',
+ '--with-openjdk-src-zip=' + self.stage[7].archive_file,
+ '--with-openjdk-checksum=no',
+ '--with-nashorn-src-zip=' + self.stage[8].archive_file,
+ '--with-nashorn-checksum=no', '--disable-maintainer-mode'
+ '--disable-downloading', '--disable-system-pcsc',
+ '--disable-system-sctp', '--disable-system-kerberos',
+ '--with-jdk-home=' + self.spec['jdk'].prefix
+ ]
+ return args
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('JAVA_HOME', self.spec.prefix)
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.set('JAVA_HOME', self.prefix)
diff --git a/var/spack/repos/builtin/packages/icet/package.py b/var/spack/repos/builtin/packages/icet/package.py
index f8260f1951..d8591a2411 100644
--- a/var/spack/repos/builtin/packages/icet/package.py
+++ b/var/spack/repos/builtin/packages/icet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class Icet(CMakePackage):
sort-last parallel rendering library."""
homepage = "http://icet.sandia.gov"
- url = "https://example.com/icet-1.2.3.tar.gz"
+ url = "https://gitlab.kitware.com/icet/icet/repository/archive.tar.bz2?ref=IceT-2.1.1"
version('develop', branch='master',
git='https://gitlab.kitware.com/icet/icet.git')
@@ -38,9 +38,9 @@ class Icet(CMakePackage):
depends_on('mpi')
- def url_for_version(self, version):
- return ("https://gitlab.kitware.com/icet/icet/repository/"
- "archive.tar.bz2?ref=IceT-{0}".format(version.dotted))
-
def cmake_args(self):
return ['-DICET_USE_OPENGL:BOOL=OFF']
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Work-around for ill-placed CMake modules"""
+ spack_env.prepend_path('CMAKE_PREFIX_PATH', self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/ico/package.py b/var/spack/repos/builtin/packages/ico/package.py
index 5e523575ca..7f627f5921 100644
--- a/var/spack/repos/builtin/packages/ico/package.py
+++ b/var/spack/repos/builtin/packages/ico/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Ico(Package):
+class Ico(AutotoolsPackage):
"""ico is a simple animation program that may be used for testing various
X11 operations and extensions. It displays a wire-frame rotating
polyhedron, with hidden lines removed, or a solid-fill polyhedron with
@@ -41,9 +41,3 @@ class Ico(Package):
depends_on('xproto@7.0.22:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/icu4c/package.py b/var/spack/repos/builtin/packages/icu4c/package.py
index e2fcb7bd5f..f8dcb52805 100644
--- a/var/spack/repos/builtin/packages/icu4c/package.py
+++ b/var/spack/repos/builtin/packages/icu4c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,24 @@
from spack import *
-class Icu4c(Package):
+class Icu4c(AutotoolsPackage):
"""ICU is a mature, widely used set of C/C++ and Java libraries providing
Unicode and Globalization support for software applications. ICU4C is the
C/C++ interface."""
homepage = "http://site.icu-project.org/"
url = "http://download.icu-project.org/files/icu4c/57.1/icu4c-57_1-src.tgz"
+ list_url = "http://download.icu-project.org/files/icu4c"
+ list_depth = 2
+ version('58.2', 'fac212b32b7ec7ab007a12dff1f3aea1')
version('57.1', '976734806026a4ef8bdd17937c8898b9')
- def url_for_version(self, version):
- base_url = "http://download.icu-project.org/files/icu4c"
- return "{0}/{1}/icu4c-{2}-src.tgz".format(
- base_url, version, version.underscored)
+ configure_directory = 'source'
- def install(self, spec, prefix):
- with working_dir('source'):
- configure('--prefix={0}'.format(prefix),
- '--enable-rpath')
+ def url_for_version(self, version):
+ url = "http://download.icu-project.org/files/icu4c/{0}/icu4c-{1}-src.tgz"
+ return url.format(version.dotted, version.underscored)
- make()
- make('check')
- make('install')
+ def configure_args(self):
+ return ['--enable-rpath']
diff --git a/var/spack/repos/builtin/packages/id3lib/id3lib-3.8.3_gcc4.diff b/var/spack/repos/builtin/packages/id3lib/id3lib-3.8.3_gcc4.diff
new file mode 100644
index 0000000000..fc14fa10de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/id3lib/id3lib-3.8.3_gcc4.diff
@@ -0,0 +1,102 @@
+Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
+Date: 2008-11-21
+Initial Package Version: 3.8.3
+Upstream Status: unknown
+Origin: fedora
+Description: Allows it to compile with gcc-4.3.
+
+diff -up id3lib-3.8.3/include/id3/id3lib_strings.h~ id3lib-3.8.3/include/id3/id3lib_strings.h
+--- id3lib-3.8.3/include/id3/id3lib_strings.h~ 2003-03-02 02:23:00.000000000 +0200
++++ id3lib-3.8.3/include/id3/id3lib_strings.h 2008-01-04 01:30:52.000000000 +0200
+@@ -29,6 +29,7 @@
+ #ifndef _ID3LIB_STRINGS_H_
+ #define _ID3LIB_STRINGS_H_
+
++#include <cstring>
+ #include <string>
+
+ #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
+diff -up id3lib-3.8.3/configure.in~ id3lib-3.8.3/configure.in
+--- id3lib-3.8.3/configure.in~ 2008-01-04 11:39:01.000000000 +0100
++++ id3lib-3.8.3/configure.in 2008-01-04 11:39:01.000000000 +0100
+@@ -227,7 +227,6 @@ AC_CHECK_HEADERS(fstream iostream iomani
+ )
+ AC_CHECK_HEADERS( \
+ string \
+- iomanip.h \
+ ,,AC_MSG_ERROR([Missing a vital header file for id3lib])
+ )
+
+diff -up id3lib-3.8.3/configure~ id3lib-3.8.3/configure
+--- id3lib-3.8.3/configure~ 2008-01-04 11:39:10.000000000 +0100
++++ id3lib-3.8.3/configure 2008-01-04 11:39:10.000000000 +0100
+@@ -22976,7 +22976,6 @@ done
+
+ for ac_header in \
+ string \
+- iomanip.h \
+
+ do
+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+diff -up id3lib-3.8.3/include/id3/writers.h~ id3lib-3.8.3/include/id3/writers.h
+--- id3lib-3.8.3/include/id3/writers.h~ 2008-01-04 11:59:39.000000000 +0100
++++ id3lib-3.8.3/include/id3/writers.h 2008-01-04 11:59:39.000000000 +0100
+@@ -28,9 +28,9 @@
+ #ifndef _ID3LIB_WRITERS_H_
+ #define _ID3LIB_WRITERS_H_
+
++#include <cstring>
+ #include "id3/writer.h"
+ #include "id3/id3lib_streams.h"
+-//#include <string.h>
+
+ class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
+ {
+diff -up id3lib-3.8.3/examples/demo_info.cpp~ id3lib-3.8.3/examples/demo_info.cpp
+--- id3lib-3.8.3/examples/demo_info.cpp~ 2008-01-04 12:00:56.000000000 +0100
++++ id3lib-3.8.3/examples/demo_info.cpp 2008-01-04 12:00:56.000000000 +0100
+@@ -309,7 +309,7 @@ void PrintInformation(const ID3_Tag &myT
+
+ #define DEBUG
+
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+ ID3D_INIT_DOUT();
+
+diff -up id3lib-3.8.3/examples/demo_copy.cpp~ id3lib-3.8.3/examples/demo_copy.cpp
+--- id3lib-3.8.3/examples/demo_copy.cpp~ 2008-01-04 12:01:26.000000000 +0100
++++ id3lib-3.8.3/examples/demo_copy.cpp 2008-01-04 12:01:26.000000000 +0100
+@@ -81,7 +81,7 @@ void DisplayTags(ostream &os, luint nTag
+ }
+ }
+
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+ int ulFlag = ID3TT_ID3;
+ ID3D_INIT_DOUT();
+diff -up id3lib-3.8.3/examples/demo_convert.cpp~ id3lib-3.8.3/examples/demo_convert.cpp
+--- id3lib-3.8.3/examples/demo_convert.cpp~ 2008-01-04 12:01:20.000000000 +0100
++++ id3lib-3.8.3/examples/demo_convert.cpp 2008-01-04 12:01:20.000000000 +0100
+@@ -84,7 +84,7 @@ void DisplayTags(ostream &os, luint nTag
+ }
+ }
+
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+ flags_t ulFlag = ID3TT_ALL;
+ gengetopt_args_info args;
+diff -up id3lib-3.8.3/examples/demo_tag.cpp~ id3lib-3.8.3/examples/demo_tag.cpp
+--- id3lib-3.8.3/examples/demo_tag.cpp~ 2008-01-04 12:01:41.000000000 +0100
++++ id3lib-3.8.3/examples/demo_tag.cpp 2008-01-04 12:01:41.000000000 +0100
+@@ -46,7 +46,7 @@ void DisplayTags(ostream &os, luint nTag
+ os << "v2";
+ }
+
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+ int ulFlag = ID3TT_ID3;
+ ID3D_INIT_DOUT();
diff --git a/var/spack/repos/builtin/packages/id3lib/package.py b/var/spack/repos/builtin/packages/id3lib/package.py
new file mode 100644
index 0000000000..da4c513c63
--- /dev/null
+++ b/var/spack/repos/builtin/packages/id3lib/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Id3lib(AutotoolsPackage):
+ """Library for manipulating ID3v1 and ID3v2 tags"""
+
+ homepage = "http://id3lib.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/id3lib/id3lib/3.8.3/id3lib-3.8.3.tar.gz"
+
+ version('3.8.3', '19f27ddd2dda4b2d26a559a4f0f402a7')
+
+ depends_on('zlib')
+
+ # http://connie.slackware.com/~alien/slackbuilds/id3lib/build/id3lib-3.8.3_gcc4.diff
+ # this is due to some changes in the c++ standard library headers
+ patch("id3lib-3.8.3_gcc4.diff")
diff --git a/var/spack/repos/builtin/packages/idba/package.py b/var/spack/repos/builtin/packages/idba/package.py
new file mode 100644
index 0000000000..d886ac0455
--- /dev/null
+++ b/var/spack/repos/builtin/packages/idba/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Idba(AutotoolsPackage):
+ """IDBA is a practical iterative De Bruijn Graph De Novo Assembler for
+ sequence assembly in bioinfomatics."""
+
+ homepage = "http://i.cs.hku.hk/~alse/hkubrg/projects/idba/"
+ url = "https://github.com/loneknightpy/idba/archive/1.1.3.tar.gz"
+
+ version('1.1.3', '303d9b4af7a7498b56ac9698028b4e15')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
diff --git a/var/spack/repos/builtin/packages/igraph/package.py b/var/spack/repos/builtin/packages/igraph/package.py
new file mode 100644
index 0000000000..4ec2e71555
--- /dev/null
+++ b/var/spack/repos/builtin/packages/igraph/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Igraph(AutotoolsPackage):
+ """igraph is a library for creating and manipulating graphs."""
+
+ homepage = "http://igraph.org/"
+ url = "https://github.com/igraph/igraph/releases/download/0.7.1/igraph-0.7.1.tar.gz"
+
+ version('0.7.1', '4f6e7c16b45fce8ed423516a9786e4e8')
+
+ depends_on('libxml2')
diff --git a/var/spack/repos/builtin/packages/ilmbase/package.py b/var/spack/repos/builtin/packages/ilmbase/package.py
index 873c830623..75e52d66c2 100644
--- a/var/spack/repos/builtin/packages/ilmbase/package.py
+++ b/var/spack/repos/builtin/packages/ilmbase/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Ilmbase(Package):
+class Ilmbase(AutotoolsPackage):
"""OpenEXR ILM Base libraries (high dynamic-range image file format)"""
homepage = "http://www.openexr.com/"
@@ -36,7 +36,3 @@ class Ilmbase(Package):
version('2.0.1', '74c0d0d2873960bd0dc1993f8e03f0ae')
version('1.0.2', '26c133ee8ca48e1196fbfb3ffe292ab4')
version('0.9.0', '4df45f8116cb7a013b286caf6da30a2e')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
- make('install')
diff --git a/var/spack/repos/builtin/packages/image-magick/package.py b/var/spack/repos/builtin/packages/image-magick/package.py
index 9efb0cd368..24b92132a0 100644
--- a/var/spack/repos/builtin/packages/image-magick/package.py
+++ b/var/spack/repos/builtin/packages/image-magick/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,14 @@
from spack import *
-class ImageMagick(Package):
+class ImageMagick(AutotoolsPackage):
"""ImageMagick is a software suite to create, edit, compose,
or convert bitmap images."""
homepage = "http://www.imagemagick.org"
url = "https://github.com/ImageMagick/ImageMagick/archive/7.0.2-7.tar.gz"
+ version('7.0.5-9', '0bcde35180778a61367599e46ff40cb4')
version('7.0.2-7', 'c59cdc8df50e481b2bd1afe09ac24c08')
version('7.0.2-6', 'aa5689129c39a5146a3212bf5f26d478')
@@ -45,13 +46,9 @@ class ImageMagick(Package):
depends_on('ghostscript')
depends_on('ghostscript-fonts')
- def url_for_version(self, version):
- return "https://github.com/ImageMagick/ImageMagick/archive/{0}.tar.gz".format(version)
-
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
gs_font_dir = join_path(spec['ghostscript-fonts'].prefix.share, "font")
- configure('--prefix={0}'.format(prefix),
- '--with-gs-font-dir={0}'.format(gs_font_dir))
- make()
- make('check')
- make('install')
+ return [
+ '--with-gs-font-dir={0}'.format(gs_font_dir)
+ ]
diff --git a/var/spack/repos/builtin/packages/imake/package.py b/var/spack/repos/builtin/packages/imake/package.py
index 32542b0391..f3da05200b 100644
--- a/var/spack/repos/builtin/packages/imake/package.py
+++ b/var/spack/repos/builtin/packages/imake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Imake(Package):
+class Imake(AutotoolsPackage):
"""The imake build system."""
homepage = "http://www.snake.net/software/imake-stuff/"
@@ -35,9 +35,3 @@ class Imake(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/impute2/package.py b/var/spack/repos/builtin/packages/impute2/package.py
new file mode 100644
index 0000000000..44993a306f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/impute2/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Impute2(Package):
+ """IMPUTE2 is a genotype imputation and haplotype phasing program based on
+ ideas from Howie et al. 2009."""
+
+ homepage = "https://mathgen.stats.ox.ac.uk/impute/impute_v2.html#home"
+ url = "https://mathgen.stats.ox.ac.uk/impute/impute_v2.3.2_x86_64_dynamic.tgz"
+
+ version('2.3.2', '0e1bafb8f63eb5cf9ae02ab761af58aa')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('impute2', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/infernal/package.py b/var/spack/repos/builtin/packages/infernal/package.py
new file mode 100644
index 0000000000..f84722964d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/infernal/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Infernal(AutotoolsPackage):
+ """Infernal (INFERence of RNA ALignment) is for searching DNA sequence
+ databases for RNA structure and sequence similarities. It is an
+ implementation of a special case of profile stochastic context-free
+ grammars called covariance models (CMs)."""
+
+ homepage = "http://eddylab.org/infernal/"
+ url = "http://eddylab.org/infernal/infernal-1.1.2.tar.gz"
+
+ version('1.1.2', 'a73e6bbab0c4b79af2cc4c0aabb8accc')
+
+ variant('mpi', default=False, description='Enable MPI parallel support')
+
+ depends_on('mpi', when='+mpi')
+
+ def configure_args(self):
+ args = []
+ if '+mpi' in self.spec:
+ args.append('--enable-mpi')
+ else:
+ args.append('--disable-mpi')
+ return args
diff --git a/var/spack/repos/builtin/packages/inputproto/package.py b/var/spack/repos/builtin/packages/inputproto/package.py
index 915986ef68..f60b08cacf 100644
--- a/var/spack/repos/builtin/packages/inputproto/package.py
+++ b/var/spack/repos/builtin/packages/inputproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Inputproto(Package):
+class Inputproto(AutotoolsPackage):
"""X Input Extension.
This extension defines a protocol to provide additional input devices
@@ -38,8 +38,3 @@ class Inputproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/intel-daal/package.py b/var/spack/repos/builtin/packages/intel-daal/package.py
new file mode 100644
index 0000000000..d528f88461
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-daal/package.py
@@ -0,0 +1,86 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import os
+
+from spack import *
+from spack.environment import EnvironmentModifications
+
+
+class IntelDaal(IntelPackage):
+ """Intel Data Analytics Acceleration Library."""
+
+ homepage = "https://software.intel.com/en-us/daal"
+
+ version('2018.0.128', '5779e670f67c33cc1c6cdcdca5e4636e',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12072/l_daal_2018.0.128.tgz")
+ version('2017.4.239', 'b47e9b92d948ee312e8a98170a1c0640',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12148/l_daal_2017.4.239.tgz")
+ version('2017.3.196', '93221eaeb560917a129d42fb2cf02500',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11546/l_daal_2017.3.196.tgz")
+ version('2017.2.174', 'f067d5d7b0f70914fba1f78da0361065',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11308/l_daal_2017.2.174.tgz")
+ version('2017.1.132', '56eef8cc45219f92a27de03ae914eba4',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/10983/l_daal_2017.1.132.tgz")
+ version('2017.0.098', 'b4eb234de12beff4a5cba4b81ea60673',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9664/l_daal_2017.0.098.tgz")
+ version('2016.3.210', 'ad747c0dd97dace4cad03cf2266cad28',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9099/l_daal_2016.3.210.tgz")
+ version('2016.2.181', 'aad2aa70e5599ebfe6f85b29d8719d46',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8687/l_daal_2016.2.181.tgz")
+
+ provides('daal')
+
+ @property
+ def license_required(self):
+ # The Intel libraries are provided without requiring a license as of
+ # version 2017.2. Trying to specify the license will fail. See:
+ # https://software.intel.com/en-us/articles/free-ipsxe-tools-and-libraries
+ if self.version >= Version('2017.2'):
+ return False
+ else:
+ return True
+
+ def setup_environment(self, spack_env, run_env):
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source daal/bin/daalvars.sh intel64
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ daalvars = os.path.join(self.prefix.daal.bin, 'daalvars.sh')
+
+ if os.path.isfile(daalvars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ daalvars, 'intel64'))
diff --git a/var/spack/repos/builtin/packages/intel-gpu-tools/package.py b/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
index 132e29839b..5238e57e32 100644
--- a/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
+++ b/var/spack/repos/builtin/packages/intel-gpu-tools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,9 +23,10 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
-class IntelGpuTools(Package):
+class IntelGpuTools(AutotoolsPackage):
"""Intel GPU Tools is a collection of tools for development and testing of
the Intel DRM driver. There are many macro-level test suites that get used
against the driver, including xtest, rendercheck, piglit, and oglconform,
@@ -41,7 +42,7 @@ class IntelGpuTools(Package):
version('1.16', '3996f10fc86a28ec59e1cf7b227dad78')
depends_on('libdrm@2.4.64:')
- depends_on('libpciaccess@0.10:')
+ depends_on('libpciaccess@0.10:', when=(sys.platform != 'darwin'))
depends_on('cairo@1.12.0:')
depends_on('glib')
@@ -58,10 +59,3 @@ class IntelGpuTools(Package):
# python-docutils
# x11proto-dri2-dev
# xutils-dev
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/intel-ipp/package.py b/var/spack/repos/builtin/packages/intel-ipp/package.py
new file mode 100644
index 0000000000..ae7a1358e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-ipp/package.py
@@ -0,0 +1,82 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import os
+
+from spack import *
+from spack.environment import EnvironmentModifications
+
+
+class IntelIpp(IntelPackage):
+ """Intel Integrated Performance Primitives."""
+
+ homepage = "https://software.intel.com/en-us/intel-ipp"
+
+ version('2018.0.128', 'e64190bc9041b52d9eed7e8ee91bf1de',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12071/l_ipp_2018.0.128.tgz')
+ version('2017.3.196', '47e53bd1a2740041f4d0be7c36b61a18',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11545/l_ipp_2017.3.196.tgz")
+ version('2017.2.174', '8ad7753ee30c5176c4931070334144bc',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11307/l_ipp_2017.2.174.tgz")
+ version('2017.1.132', '9fbbaa402b8d16f4cb4be9aee2f557c2',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11031/l_ipp_2017.1.132.tgz")
+ version('2017.0.098', 'e7be757ebe351d9f9beed7efdc7b7118',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9663/l_ipp_2017.0.098.tgz")
+ version('9.0.3.210', '0e1520dd3de7f811a6ef6ebc7aa429a3',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9067/l_ipp_9.0.3.210.tgz")
+
+ provides('ipp')
+
+ @property
+ def license_required(self):
+ # The Intel libraries are provided without requiring a license as of
+ # version 2017.2. Trying to specify the license will fail. See:
+ # https://software.intel.com/en-us/articles/free-ipsxe-tools-and-libraries
+ if self.version >= Version('2017.2'):
+ return False
+ else:
+ return True
+
+ def setup_environment(self, spack_env, run_env):
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source ipp/bin/ippvars.sh intel64
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ ippvars = os.path.join(self.prefix.ipp.bin, 'ippvars.sh')
+
+ if os.path.isfile(ippvars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ ippvars, 'intel64'))
diff --git a/var/spack/repos/builtin/packages/intel-mkl/package.py b/var/spack/repos/builtin/packages/intel-mkl/package.py
index f369e10d38..e2c2b8d46a 100644
--- a/var/spack/repos/builtin/packages/intel-mkl/package.py
+++ b/var/spack/repos/builtin/packages/intel-mkl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,78 +22,200 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
import os
+import sys
-from spack.pkg.builtin.intel import IntelInstaller
-
-
-class IntelMkl(IntelInstaller):
- """Intel Math Kernel Library.
+from spack import *
+from spack.environment import EnvironmentModifications
- Note: You will have to add the download file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html.
- To set the threading layer at run time set MKL_THREADING_LAYER
- variable to one of the following values: INTEL (default), SEQUENTIAL, PGI.
- To set interface layer at run time, use set the MKL_INTERFACE_LAYER
- variable to LP64 (default) or ILP64.
- """
+class IntelMkl(IntelPackage):
+ """Intel Math Kernel Library."""
homepage = "https://software.intel.com/en-us/intel-mkl"
- version('11.3.2.181', '536dbd82896d6facc16de8f961d17d65',
- url="file://%s/l_mkl_11.3.2.181.tgz" % os.getcwd())
+ version('2018.0.128', '0fa23779816a0f2ee23a396fc1af9978',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12070/l_mkl_2018.0.128.tgz")
+ version('2017.4.239', '3066272dd0ad3da7961b3d782e1fab3b',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12147/l_mkl_2017.4.239.tgz")
+ version('2017.3.196', '4a2eb4bee789391d9c07d7c348a80702',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11544/l_mkl_2017.3.196.tgz")
+ version('2017.2.174', 'ef39a12dcbffe5f4a0ef141b8759208c',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11306/l_mkl_2017.2.174.tgz")
+ version('2017.1.132', '7911c0f777c4cb04225bf4518088939e',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11024/l_mkl_2017.1.132.tgz")
+ version('2017.0.098', '3cdcb739ab5ab1e047eb130b9ffdd8d0',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9662/l_mkl_2017.0.098.tgz")
version('11.3.3.210', 'f72546df27f5ebb0941b5d21fd804e34',
- url="file://%s/l_mkl_11.3.3.210.tgz" % os.getcwd())
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9068/l_mkl_11.3.3.210.tgz")
+ version('11.3.2.181', '536dbd82896d6facc16de8f961d17d65',
+ url="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8711/l_mkl_11.3.2.181.tgz")
variant('shared', default=True, description='Builds shared library')
variant('ilp64', default=False, description='64 bit integers')
- variant('openmp', default=False, description='OpenMP multithreading layer')
+ variant(
+ 'threads', default='none',
+ description='Multithreading support',
+ values=('openmp', 'none'),
+ multi=False
+ )
- # virtual dependency
provides('blas')
provides('lapack')
+ provides('scalapack')
provides('mkl')
- # TODO: MKL also provides implementation of Scalapack.
+
+ if sys.platform == 'darwin':
+ # there is no libmkl_gnu_thread on macOS
+ conflicts('threads=openmp', when='%gcc')
+
+ @property
+ def license_required(self):
+ # The Intel libraries are provided without requiring a license as of
+ # version 2017.2. Trying to specify the license will fail. See:
+ # https://software.intel.com/en-us/articles/free-ipsxe-tools-and-libraries
+ if self.version >= Version('2017.2'):
+ return False
+ else:
+ return True
@property
def blas_libs(self):
- shared = True if '+shared' in self.spec else False
- suffix = dso_suffix if '+shared' in self.spec else 'a'
- mkl_integer = ['libmkl_intel_ilp64'] if '+ilp64' in self.spec else ['libmkl_intel_lp64'] # NOQA: ignore=E501
+ spec = self.spec
+ prefix = self.prefix
+ shared = '+shared' in spec
+
+ if '+ilp64' in spec:
+ mkl_integer = ['libmkl_intel_ilp64']
+ else:
+ mkl_integer = ['libmkl_intel_lp64']
+
mkl_threading = ['libmkl_sequential']
- if '+openmp' in self.spec:
- mkl_threading = ['libmkl_intel_thread', 'libiomp5'] if '%intel' in self.spec else ['libmkl_gnu_thread'] # NOQA: ignore=E501
+
+ omp_libs = LibraryList([])
+
+ if spec.satisfies('threads=openmp'):
+ if '%intel' in spec:
+ mkl_threading = ['libmkl_intel_thread']
+ omp_threading = ['libiomp5']
+
+ if sys.platform != 'darwin':
+ omp_root = prefix.compilers_and_libraries.linux.lib.intel64
+ else:
+ omp_root = prefix.lib
+ omp_libs = find_libraries(
+ omp_threading, root=omp_root, shared=shared)
+ elif '%gcc' in spec:
+ mkl_threading = ['libmkl_gnu_thread']
+
+ gcc = Executable(self.compiler.cc)
+ libgomp = gcc('--print-file-name', 'libgomp.{0}'.format(
+ dso_suffix), output=str)
+ omp_libs = LibraryList(libgomp)
+
# TODO: TBB threading: ['libmkl_tbb_thread', 'libtbb', 'libstdc++']
+
+ if sys.platform != 'darwin':
+ mkl_root = prefix.compilers_and_libraries.linux.mkl.lib.intel64
+ else:
+ mkl_root = prefix.mkl.lib
+
mkl_libs = find_libraries(
mkl_integer + ['libmkl_core'] + mkl_threading,
- root=join_path(self.prefix.lib, 'intel64'),
+ root=mkl_root,
shared=shared
)
- system_libs = [
- 'libpthread.{0}'.format(suffix),
- 'libm.{0}'.format(suffix),
- 'libdl.{0}'.format(suffix)
- ]
- return mkl_libs + system_libs
+
+ # Intel MKL link line advisor recommends these system libraries
+ system_libs = find_system_libraries(
+ ['libpthread', 'libm', 'libdl'],
+ shared=shared
+ )
+
+ return mkl_libs + omp_libs + system_libs
@property
def lapack_libs(self):
return self.blas_libs
- def install(self, spec, prefix):
- self.intel_prefix = os.path.join(prefix, "pkg")
- IntelInstaller.install(self, spec, prefix)
+ @property
+ def scalapack_libs(self):
+ libnames = ['libmkl_scalapack']
+
+ # Intel MKL does not directly depend on mpi but the scalapack
+ # interface does and the corresponding BLACS library changes
+ # depending on the MPI implementation we are using. We need then to
+ # inspect the root package which asked for Scalapack and check which
+ # MPI it depends on.
+ root = self.spec.root
+ if sys.platform == 'darwin' and '^mpich' in root:
+ # MKL 2018 supports only MPICH on darwin
+ libnames.append('libmkl_blacs_mpich')
+ elif '^openmpi' in root:
+ libnames.append('libmkl_blacs_openmpi')
+ elif '^mpich@1' in root:
+ libnames.append('libmkl_blacs')
+ elif '^mpich@2:' in root:
+ libnames.append('libmkl_blacs_intelmpi')
+ elif '^mvapich2' in root:
+ libnames.append('libmkl_blacs_intelmpi')
+ elif '^mpt' in root:
+ libnames.append('libmkl_blacs_sgimpt')
+ elif '^intel-mpi' in root:
+ libnames.append('libmkl_blacs_intelmpi')
+ else:
+ raise InstallError('No MPI found for scalapack')
+
+ integer = 'ilp64' if '+ilp64' in self.spec else 'lp64'
+ mkl_root = self.prefix.mkl.lib if sys.platform == 'darwin' else \
+ self.prefix.compilers_and_libraries.linux.mkl.lib.intel64
+
+ shared = True if '+shared' in self.spec else False
- mkl_dir = os.path.join(self.intel_prefix, "mkl")
- for f in os.listdir(mkl_dir):
- os.symlink(os.path.join(mkl_dir, f), os.path.join(self.prefix, f))
+ libs = find_libraries(
+ ['{0}_{1}'.format(l, integer) for l in libnames],
+ root=mkl_root,
+ shared=shared
+ )
+
+ return libs
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
# set up MKLROOT for everyone using MKL package
- spack_env.set('MKLROOT', self.prefix)
+ if sys.platform == 'darwin':
+ mkl_lib = self.prefix.mkl.lib
+ mkl_root = self.prefix.mkl
+ else:
+ mkl_lib = self.prefix.compilers_and_libraries.linux.mkl.lib.intel64
+ mkl_root = self.prefix.compilers_and_libraries.linux.mkl
+
+ spack_env.set('MKLROOT', mkl_root)
+ spack_env.append_path('SPACK_COMPILER_EXTRA_RPATHS', mkl_lib)
+
+ def setup_environment(self, spack_env, run_env):
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source mkl/bin/mklvars.sh intel64
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ mklvars = os.path.join(self.prefix.mkl.bin, 'mklvars.sh')
- def setup_environment(self, spack_env, env):
- env.set('MKLROOT', self.prefix)
+ if sys.platform == 'darwin':
+ if os.path.isfile(mklvars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ mklvars))
+ else:
+ if os.path.isfile(mklvars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ mklvars, 'intel64'))
diff --git a/var/spack/repos/builtin/packages/intel-mpi/package.py b/var/spack/repos/builtin/packages/intel-mpi/package.py
new file mode 100644
index 0000000000..42b9872b30
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-mpi/package.py
@@ -0,0 +1,137 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import os
+
+from spack import *
+from spack.environment import EnvironmentModifications
+
+
+class IntelMpi(IntelPackage):
+ """Intel MPI"""
+
+ homepage = "https://software.intel.com/en-us/intel-mpi-library"
+
+ version('2018.0.128', '15b46fc6a3014595de897aa48d3a658b',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12120/l_mpi_2018.0.128.tgz')
+ version('2017.4.239', '460a9ef1b3599d60b4d696e3f0f2a14d',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12209/l_mpi_2017.4.239.tgz')
+ version('2017.3.196', '721ecd5f6afa385e038777e5b5361dfb',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11595/l_mpi_2017.3.196.tgz')
+ version('2017.2.174', 'b6c2e62c3fb9b1558ede72ccf72cf1d6',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11334/l_mpi_2017.2.174.tgz')
+ version('2017.1.132', 'd5e941ac2bcf7c5576f85f6bcfee4c18',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11014/l_mpi_2017.1.132.tgz')
+ version('5.1.3.223', '4316e78533a932081b1a86368e890800',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9278/l_mpi_p_5.1.3.223.tgz')
+
+ provides('mpi')
+
+ @property
+ def license_required(self):
+ # The Intel libraries are provided without requiring a license as of
+ # version 2017.2. Trying to specify the license will fail. See:
+ # https://software.intel.com/en-us/articles/free-ipsxe-tools-and-libraries
+ if self.version >= Version('2017.2'):
+ return False
+ else:
+ return True
+
+ @property
+ def mpi_libs(self):
+ mpi_root = self.prefix.compilers_and_libraries.linux.mpi.lib64
+ query_parameters = self.spec.last_query.extra_parameters
+ libraries = ['libmpifort', 'libmpi']
+
+ if 'cxx' in query_parameters:
+ libraries = ['libmpicxx'] + libraries
+
+ return find_libraries(
+ libraries, root=mpi_root, shared=True, recurse=True
+ )
+
+ @property
+ def mpi_headers(self):
+ # recurse from self.prefix will find too many things for all the
+ # supported sub-architectures like 'mic'
+ mpi_root = self.prefix.compilers_and_libraries.linux.mpi.include64
+ return find_headers('mpi', root=mpi_root, recurse=False)
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.set('I_MPI_CC', spack_cc)
+ spack_env.set('I_MPI_CXX', spack_cxx)
+ spack_env.set('I_MPI_F77', spack_fc)
+ spack_env.set('I_MPI_F90', spack_f77)
+ spack_env.set('I_MPI_FC', spack_fc)
+
+ def setup_dependent_package(self, module, dep_spec):
+ # Intel comes with 2 different flavors of MPI wrappers:
+ #
+ # * mpiicc, mpiicpc, and mpifort are hardcoded to wrap around
+ # the Intel compilers.
+ # * mpicc, mpicxx, mpif90, and mpif77 allow you to set which
+ # compilers to wrap using I_MPI_CC and friends. By default,
+ # wraps around the GCC compilers.
+ #
+ # In theory, these should be equivalent as long as I_MPI_CC
+ # and friends are set to point to the Intel compilers, but in
+ # practice, mpicc fails to compile some applications while
+ # mpiicc works.
+ bindir = self.prefix.compilers_and_libraries.linux.mpi.intel64.bin
+
+ if self.compiler.name == 'intel':
+ self.spec.mpicc = bindir.mpiicc
+ self.spec.mpicxx = bindir.mpiicpc
+ self.spec.mpifc = bindir.mpiifort
+ self.spec.mpif77 = bindir.mpiifort
+ else:
+ self.spec.mpicc = bindir.mpicc
+ self.spec.mpicxx = bindir.mpicxx
+ self.spec.mpifc = bindir.mpif90
+ self.spec.mpif77 = bindir.mpif77
+
+ def setup_environment(self, spack_env, run_env):
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source compilers_and_libraries/linux/mpi/intel64/bin/mpivars.sh
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ mpivars = os.path.join(
+ self.prefix.compilers_and_libraries.linux.mpi.intel64.bin,
+ 'mpivars.sh')
+
+ if os.path.isfile(mpivars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ mpivars))
diff --git a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
index 8564eeb941..9828eaf6c0 100644
--- a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
+++ b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,216 +22,387 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
+import glob
import os
-import re
-
-from spack.pkg.builtin.intel import IntelInstaller, filter_pick, \
- get_all_components
+from spack import *
+from spack.environment import EnvironmentModifications
-class IntelParallelStudio(IntelInstaller):
- """Intel Parallel Studio.
- Note: You will have to add the download file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+class IntelParallelStudio(IntelPackage):
+ """Intel Parallel Studio."""
homepage = "https://software.intel.com/en-us/intel-parallel-studio-xe"
- version('professional.2017.1', '7f75a4a7e2c563be778c377f9d35a542')
- version('cluster.2017.1', '7f75a4a7e2c563be778c377f9d35a542')
- version('composer.2017.1', '1f31976931ed8ec424ac7c3ef56f5e85')
- version('professional.2017.0', '34c98e3329d6ac57408b738ae1daaa01')
- version('cluster.2017.0', '34c98e3329d6ac57408b738ae1daaa01')
- version('composer.2016.3', '3208eeabee951fc27579177b593cefe9')
- version('professional.2016.3', 'eda19bb0d0d19709197ede58f13443f3')
- version('cluster.2016.3', 'eda19bb0d0d19709197ede58f13443f3')
- version('composer.2016.2', '1133fb831312eb519f7da897fec223fa')
- version('professional.2016.2', '70be832f2d34c9bf596a5e99d5f2d832')
- version('cluster.2016.2', '70be832f2d34c9bf596a5e99d5f2d832')
-
- variant('rpath', default=True, description="Add rpath to .cfg files")
+ version('professional.2018.0', '9a233854e9218937bc5f46f02b3c7542',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12062/parallel_studio_xe_2018_professional_edition.tgz')
+ version('cluster.2018.0', 'fa9baeb83dd2e8e4a464e3db38f28d0f',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12058/parallel_studio_xe_2018_cluster_edition.tgz')
+ version('composer.2018.0', '31ba768fba6e7322957b03feaa3add28',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12067/parallel_studio_xe_2018_composer_edition.tgz')
+ version('professional.2017.4', '27398416078e1e4005afced3e9a6df7e',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11537/parallel_studio_xe_2017_update4.tgz')
+ version('cluster.2017.4', '27398416078e1e4005afced3e9a6df7e',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11537/parallel_studio_xe_2017_update4.tgz')
+ version('composer.2017.4', 'd03d351809e182c481dc65e07376d9a2',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11541/parallel_studio_xe_2017_update4_composer_edition.tgz')
+ version('professional.2017.3', '691874735458d3e88fe0bcca4438b2a9',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11460/parallel_studio_xe_2017_update3.tgz')
+ version('cluster.2017.3', '691874735458d3e88fe0bcca4438b2a9',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11460/parallel_studio_xe_2017_update3.tgz')
+ version('composer.2017.3', '52344df122c17ddff3687f84ceb21623',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11464/parallel_studio_xe_2017_update3_composer_edition.tgz')
+ version('professional.2017.2', '70e54b33d940a1609ff1d35d3c56e3b3',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11298/parallel_studio_xe_2017_update2.tgz')
+ version('cluster.2017.2', '70e54b33d940a1609ff1d35d3c56e3b3',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11298/parallel_studio_xe_2017_update2.tgz')
+ version('composer.2017.2', '2891ab1ece43eb61b6ab892f07c47f01',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11302/parallel_studio_xe_2017_update2_composer_edition.tgz')
+ version('professional.2017.1', '7f75a4a7e2c563be778c377f9d35a542',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/10973/parallel_studio_xe_2017_update1.tgz')
+ version('cluster.2017.1', '7f75a4a7e2c563be778c377f9d35a542',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/10973/parallel_studio_xe_2017_update1.tgz')
+ version('composer.2017.1', '1f31976931ed8ec424ac7c3ef56f5e85',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/10978/parallel_studio_xe_2017_update1_composer_edition.tgz')
+ version('professional.2017.0', '34c98e3329d6ac57408b738ae1daaa01',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9651/parallel_studio_xe_2017.tgz')
+ version('cluster.2017.0', '34c98e3329d6ac57408b738ae1daaa01',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9651/parallel_studio_xe_2017.tgz')
+ version('composer.2017.0', 'b67da0065a17a05f110ed1d15c3c6312',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9656/parallel_studio_xe_2017_composer_edition.tgz')
+ version('professional.2016.4', '16a641a06b156bb647c8a56e71f3bb33',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9781/parallel_studio_xe_2016_update4.tgz')
+ version('cluster.2016.4', '16a641a06b156bb647c8a56e71f3bb33',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9781/parallel_studio_xe_2016_update4.tgz')
+ version('composer.2016.4', '2bc9bfc9be9c1968a6e42efb4378f40e',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9785/parallel_studio_xe_2016_composer_edition_update4.tgz')
+ version('professional.2016.3', 'eda19bb0d0d19709197ede58f13443f3',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9061/parallel_studio_xe_2016_update3.tgz')
+ version('cluster.2016.3', 'eda19bb0d0d19709197ede58f13443f3',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9061/parallel_studio_xe_2016_update3.tgz')
+ version('composer.2016.3', '3208eeabee951fc27579177b593cefe9',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9063/parallel_studio_xe_2016_composer_edition_update3.tgz')
+ version('professional.2016.2', '70be832f2d34c9bf596a5e99d5f2d832',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8676/parallel_studio_xe_2016_update2.tgz')
+ version('cluster.2016.2', '70be832f2d34c9bf596a5e99d5f2d832',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8676/parallel_studio_xe_2016_update2.tgz')
+ version('composer.2016.2', '1133fb831312eb519f7da897fec223fa',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8680/parallel_studio_xe_2016_composer_edition_update2.tgz')
+ version('professional.2015.6', 'd460f362c30017b60f85da2e51ad25bf',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8469/parallel_studio_xe_2015_update6.tgz')
+ version('cluster.2015.6', 'd460f362c30017b60f85da2e51ad25bf',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8469/parallel_studio_xe_2015_update6.tgz')
+ version('composer.2015.6', 'da9f8600c18d43d58fba0488844f79c9',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8432/l_compxe_2015.6.233.tgz')
+
+ # Generic Variants
+ variant('rpath', default=True,
+ description='Add rpath to .cfg files')
variant('newdtags', default=False,
- description="Allow use of --enable-new-dtags in MPI wrappers")
- variant('all', default=False,
- description="Install all files with the requested edition")
- variant('mpi', default=True,
- description="Install the Intel MPI library and ITAC tool")
- variant('mkl', default=True, description="Install the Intel MKL library")
- variant('daal',
- default=True, description="Install the Intel DAAL libraries")
- variant('ipp', default=True, description="Install the Intel IPP libraries")
- variant('tools', default=True, description="Install the Intel Advisor, "
- "VTune Amplifier, and Inspector tools")
-
- variant('shared', default=True, description='Builds shared library')
- variant('ilp64', default=False, description='64 bit integers')
- variant('openmp', default=False, description='OpenMP multithreading layer')
-
- provides('mpi', when='@cluster:+mpi')
- provides('mkl', when='+mkl')
+ description='Allow use of --enable-new-dtags in MPI wrappers')
+ variant('shared', default=True,
+ description='Builds shared library')
+ variant('ilp64', default=False,
+ description='64 bit integers')
+ variant(
+ 'threads', default='none',
+ description='Multithreading support',
+ values=('openmp', 'none'),
+ multi=False
+ )
+
+ # Components available in all editions
+ variant('daal', default=True,
+ description='Install the Intel DAAL libraries')
+ variant('gdb', default=False,
+ description='Install the Intel Debugger for Heterogeneous Compute')
+ variant('ipp', default=True,
+ description='Install the Intel IPP libraries')
+ variant('mkl', default=True,
+ description='Install the Intel MKL library')
+ variant('mpi', default=True,
+ description='Install the Intel MPI library')
+ variant('tbb', default=True,
+ description='Install the Intel TBB libraries')
+
+ # Components only available in the Professional and Cluster Editions
+ variant('advisor', default=False,
+ description='Install the Intel Advisor')
+ variant('clck', default=False,
+ description='Install the Intel Cluster Checker')
+ variant('inspector', default=False,
+ description='Install the Intel Inspector')
+ variant('itac', default=False,
+ description='Install the Intel Trace Analyzer and Collector')
+ variant('vtune', default=False,
+ description='Install the Intel VTune Amplifier XE')
+
provides('daal', when='+daal')
+
provides('ipp', when='+ipp')
- # virtual dependency
- provides('blas', when='+mkl')
- provides('lapack', when='+mkl')
- # TODO: MKL also provides implementation of Scalapack.
+ provides('mkl', when='+mkl')
+ provides('blas', when='+mkl')
+ provides('lapack', when='+mkl')
+ provides('scalapack', when='+mkl')
+
+ provides('mpi', when='+mpi')
+
+ provides('tbb', when='+tbb')
+
+ # The following components are not available in the Composer Edition
+ conflicts('+advisor', when='@composer.0:composer.9999')
+ conflicts('+clck', when='@composer.0:composer.9999')
+ conflicts('+inspector', when='@composer.0:composer.9999')
+ conflicts('+itac', when='@composer.0:composer.9999')
+ conflicts('+vtune', when='@composer.0:composer.9999')
@property
def blas_libs(self):
- shared = True if '+shared' in self.spec else False
- suffix = dso_suffix if '+shared' in self.spec else 'a'
- mkl_integer = ['libmkl_intel_ilp64'] if '+ilp64' in self.spec else ['libmkl_intel_lp64'] # NOQA: ignore=E501
+ spec = self.spec
+ prefix = self.prefix
+ shared = '+shared' in spec
+
+ if '+ilp64' in spec:
+ mkl_integer = ['libmkl_intel_ilp64']
+ else:
+ mkl_integer = ['libmkl_intel_lp64']
+
mkl_threading = ['libmkl_sequential']
- if '+openmp' in self.spec:
- mkl_threading = ['libmkl_intel_thread', 'libiomp5'] if '%intel' in self.spec else ['libmkl_gnu_thread'] # NOQA: ignore=E501
+
+ omp_libs = LibraryList([])
+
+ if spec.satisfies('threads=openmp'):
+ if '%intel' in spec:
+ mkl_threading = ['libmkl_intel_thread']
+ omp_threading = ['libiomp5']
+
+ omp_root = prefix.compilers_and_libraries.linux.lib.intel64
+ omp_libs = find_libraries(
+ omp_threading, root=omp_root, shared=shared)
+ elif '%gcc' in spec:
+ mkl_threading = ['libmkl_gnu_thread']
+
+ gcc = Executable(self.compiler.cc)
+ omp_libs = gcc('--print-file-name', 'libgomp.{0}'.format(
+ dso_suffix), output=str)
+ omp_libs = LibraryList(omp_libs)
+
# TODO: TBB threading: ['libmkl_tbb_thread', 'libtbb', 'libstdc++']
+
+ mkl_root = prefix.compilers_and_libraries.linux.mkl.lib.intel64
+
mkl_libs = find_libraries(
mkl_integer + ['libmkl_core'] + mkl_threading,
- root=join_path(self.prefix, 'mkl', 'lib', 'intel64'),
+ root=mkl_root,
shared=shared
)
- system_libs = [
- 'libpthread.{0}'.format(suffix),
- 'libm.{0}'.format(suffix),
- 'libdl.{0}'.format(suffix)
- ]
- return mkl_libs + system_libs
+
+ # Intel MKL link line advisor recommends these system libraries
+ system_libs = find_system_libraries(
+ ['libpthread', 'libm', 'libdl'],
+ shared=shared
+ )
+
+ return mkl_libs + omp_libs + system_libs
@property
def lapack_libs(self):
return self.blas_libs
- def url_for_version(self, version):
- """Assume the tarball is in the current directory."""
+ @property
+ def scalapack_libs(self):
+ libnames = ['libmkl_scalapack']
+ if self.spec.satisfies('^openmpi'):
+ libnames.append('libmkl_blacs_openmpi')
+ elif self.spec.satisfies('^mpich@1'):
+ libnames.append('libmkl_blacs')
+ elif self.spec.satisfies('^mpich@2:'):
+ libnames.append('libmkl_blacs_intelmpi')
+ elif self.spec.satisfies('^mvapich2'):
+ libnames.append('libmkl_blacs_intelmpi')
+ elif self.spec.satisfies('^mpt'):
+ libnames.append('libmkl_blacs_sgimpt')
+ # TODO: ^intel-parallel-studio can mean intel mpi, a compiler or a lib
+ # elif self.spec.satisfies('^intel-parallel-studio'):
+ # libnames.append('libmkl_blacs_intelmpi')
+ else:
+ raise InstallError('No MPI found for scalapack')
- version_tuple = str(version).split('.')
- year = int(version_tuple[1])
+ integer = 'ilp64' if '+ilp64' in self.spec else 'lp64'
+ mkl_root = self.prefix.compilers_and_libraries.linux.mkl.lib.intel64
+ shared = True if '+shared' in self.spec else False
- url = "file://{0}/parallel_studio_xe_{1}".format(
- os.getcwd(), version_tuple[1])
+ libs = find_libraries(
+ ['{0}_{1}'.format(l, integer) for l in libnames],
+ root=mkl_root,
+ shared=shared
+ )
+ return libs
- update_string = ""
- if version_tuple[2] != '0':
- update_string = "_update{0}".format(version_tuple[2])
+ @property
+ def mpi_libs(self):
+ mpi_root = self.prefix.compilers_and_libraries.linux.mpi.lib64
+ query_parameters = self.spec.last_query.extra_parameters
+ libraries = ['libmpifort', 'libmpi']
+
+ if 'cxx' in query_parameters:
+ libraries = ['libmpicxx'] + libraries
+
+ return find_libraries(
+ libraries, root=mpi_root, shared=True, recurse=True
+ )
+
+ @property
+ def mpi_headers(self):
+ # recurse from self.prefix will find too many things for all the
+ # supported sub-architectures like 'mic'
+ mpi_root = self.prefix.compilers_and_libraries.linux.mpi.include64
+ return find_headers('mpi', root=mpi_root, recurse=False)
+
+ @property
+ def components(self):
+ spec = self.spec
+ edition = self.version[0]
+
+ # Intel(R) Compilers
+ components = [
+ # Common files
+ 'intel-comp-',
+ 'intel-openmp',
+
+ # C/C++
+ 'intel-icc',
+
+ # Fortran
+ 'intel-ifort',
+
+ # Parallel Studio Documentation and Licensing Files
+ 'intel-psxe',
+ ]
+
+ # Intel(R) Parallel Studio XE Suite Files and Documentation
+ if edition == 'cluster':
+ components.append('intel-icsxe')
+ elif edition == 'professional':
+ components.extend(['intel-ips', 'intel-ipsc', 'intel-ipsf'])
+ elif edition == 'composer':
+ components.extend([
+ 'intel-compxe', 'intel-ccompxe', 'intel-fcompxe'
+ ])
+
+ # Intel(R) Data Analytics Acceleration Library
+ if '+daal' in spec:
+ components.append('intel-daal')
+
+ # Intel(R) Debugger for Heterogeneous Compute
+ if '+gdb' in spec:
+ components.append('intel-gdb')
+
+ # Intel(R) Integrated Performance Primitives
+ if '+ipp' in spec:
+ components.extend(['intel-ipp', 'intel-crypto-ipp'])
+
+ # Intel(R) Math Kernel Library
+ if '+mkl' in spec:
+ components.append('intel-mkl')
+
+ # Intel(R) MPI Library
+ if '+mpi' in spec:
+ components.extend(['intel-mpi', 'intel-mpirt', 'intel-imb'])
+
+ # Intel(R) Threading Building Blocks
+ if '+tbb' in spec:
+ components.append('intel-tbb')
+
+ # Intel(R) Advisor
+ if '+advisor' in spec:
+ components.append('intel-advisor')
+
+ # Intel(R) Cluster Checker
+ if '+clck' in spec:
+ components.append('intel_clck')
+
+ # Intel(R) Inspector
+ if '+inspector' in spec:
+ components.append('intel-inspector')
+
+ # Intel(R) Trace Analyzer and Collector
+ if '+itac' in spec:
+ components.extend(['intel-itac', 'intel-ta', 'intel-tc'])
+
+ # Intel(R) VTune(TM) Amplifier XE
+ if '+vtune' in spec:
+ components.append('intel-vtune-amplifier-xe')
+
+ return components
+
+ @property
+ def bin_dir(self):
+ """The relative path to the bin directory with symlinks resolved."""
+
+ bin_path = os.path.join(self.prefix.bin, 'icc')
+ absolute_path = os.path.realpath(bin_path) # resolve symlinks
+ relative_path = os.path.relpath(absolute_path, self.prefix)
+ return os.path.dirname(relative_path)
+
+ @property
+ def lib_dir(self):
+ """The relative path to the lib directory with symlinks resolved."""
+
+ lib_path = os.path.join(self.prefix.lib, 'intel64', 'libimf.a')
+ absolute_path = os.path.realpath(lib_path) # resolve symlinks
+ relative_path = os.path.relpath(absolute_path, self.prefix)
+ return os.path.dirname(relative_path)
+
+ @property
+ def license_files(self):
+ spec = self.spec
+ year = self.version[1]
+
+ directories = [
+ 'Licenses',
+ self.bin_dir
+ ]
+
+ if '+advisor' in spec:
+ advisor_dir = 'advisor_xe/licenses'
- if version_tuple[0] == 'composer':
- if year == 2016:
- url += "_composer_edition{0}".format(update_string)
- else:
- url += "{0}_composer_edition".format(update_string)
- else:
- url += update_string
-
- return url + ".tgz"
-
- def check_variants(self, spec):
- error_message = '\t{variant} can not be turned off if "+all" is set'
-
- if self.spec.satisfies('+all'):
- errors = [error_message.format(variant=x)
- for x in ('mpi', 'mkl', 'daal', 'ipp', 'tools')
- if ('~' + x) in self.spec]
- if errors:
- errors = ['incompatible variants given'] + errors
- raise InstallError('\n'.join(errors))
-
- def install(self, spec, prefix):
- self.check_variants(spec)
-
- base_components = "ALL" # when in doubt, install everything
- mpi_components = ""
- mkl_components = ""
- daal_components = ""
- ipp_components = ""
-
- if not spec.satisfies('+all'):
- all_components = get_all_components()
- regex = '(comp|openmp|intel-tbb|icc|ifort|psxe)'
- base_components = \
- filter_pick(all_components, re.compile(regex).search)
- regex = '(icsxe|imb|mpi|itac|intel-ta|intel-tc|clck)'
- mpi_components = \
- filter_pick(all_components, re.compile(regex).search)
- mkl_components = \
- filter_pick(all_components, re.compile('(mkl)').search)
- daal_components = \
- filter_pick(all_components, re.compile('(daal)').search)
- ipp_components = \
- filter_pick(all_components, re.compile('(ipp)').search)
- regex = '(gdb|vtune|inspector|advisor)'
- tool_components = \
- filter_pick(all_components, re.compile(regex).search)
- components = base_components
-
- if not spec.satisfies('+all'):
- if spec.satisfies('+mpi'):
- components += mpi_components
- if spec.satisfies('+mkl'):
- components += mkl_components
- if spec.satisfies('+daal'):
- components += daal_components
- if spec.satisfies('+ipp'):
- components += ipp_components
- if spec.satisfies('+tools') and (spec.satisfies('@cluster') or
- spec.satisfies('@professional')):
- components += tool_components
-
- if spec.satisfies('+all'):
- self.intel_components = 'ALL'
- else:
- self.intel_components = ';'.join(components)
- IntelInstaller.install(self, spec, prefix)
-
- absbindir = os.path.dirname(
- os.path.realpath(os.path.join(self.prefix.bin, "icc")))
- abslibdir = os.path.dirname(
- os.path.realpath(os.path.join(
- self.prefix.lib, "intel64", "libimf.a")))
-
- os.symlink(self.global_license_file, os.path.join(absbindir,
- "license.lic"))
- if spec.satisfies('+tools') and (spec.satisfies('@cluster') or
- spec.satisfies('@professional')):
- inspector_dir = "inspector_xe/licenses"
- advisor_dir = "advisor_xe/licenses"
- vtune_amplifier_dir = "vtune_amplifier_xe/licenses"
-
- year = int(str(self.version).split('.')[1])
if year >= 2017:
- inspector_dir = "inspector/licenses"
- advisor_dir = "advisor/licenses"
-
- os.mkdir(os.path.join(self.prefix, inspector_dir))
- os.symlink(self.global_license_file, os.path.join(
- self.prefix, inspector_dir, "license.lic"))
- os.mkdir(os.path.join(self.prefix, advisor_dir))
- os.symlink(self.global_license_file, os.path.join(
- self.prefix, advisor_dir, "license.lic"))
- os.mkdir(os.path.join(self.prefix, vtune_amplifier_dir))
- os.symlink(self.global_license_file, os.path.join(
- self.prefix, vtune_amplifier_dir, "license.lic"))
-
- if (spec.satisfies('+all') or spec.satisfies('+mpi')) and \
- spec.satisfies('@cluster'):
- for ifile in os.listdir(os.path.join(self.prefix, "itac")):
- if os.path.isdir(os.path.join(self.prefix, "itac", ifile)):
- os.symlink(self.global_license_file,
- os.path.join(self.prefix, "itac", ifile,
- "license.lic"))
- if os.path.isdir(os.path.join(self.prefix, "itac",
- ifile, "intel64")):
- os.symlink(self.global_license_file,
- os.path.join(self.prefix, "itac",
- ifile, "intel64",
- "license.lic"))
- if spec.satisfies('~newdtags'):
- wrappers = ["mpif77", "mpif77", "mpif90", "mpif90",
- "mpigcc", "mpigcc", "mpigxx", "mpigxx",
- "mpiicc", "mpiicc", "mpiicpc", "mpiicpc",
- "mpiifort", "mpiifort"]
+ advisor_dir = 'advisor/licenses'
+
+ directories.append(advisor_dir)
+
+ if '+inspector' in spec:
+ inspector_dir = 'inspector_xe/licenses'
+
+ if year >= 2017:
+ inspector_dir = 'inspector/licenses'
+
+ directories.append(inspector_dir)
+
+ if '+itac' in spec:
+ itac_dir = 'itac_{0}'.format(year)
+
+ directories.append(itac_dir)
+
+ if '+vtune' in spec:
+ vtune_dir = 'vtune_amplifier_xe/licenses'
+
+ directories.append(vtune_dir)
+
+ return [os.path.join(dir, 'license.lic') for dir in directories]
+
+ @run_after('install')
+ def filter_compiler_wrappers(self):
+ spec = self.spec
+
+ if '+mpi' in spec:
+ if '~newdtags' in spec:
+ wrappers = [
+ 'mpif77', 'mpif90', 'mpigcc', 'mpigxx',
+ 'mpiicc', 'mpiicpc', 'mpiifort'
+ ]
wrapper_paths = []
for root, dirs, files in os.walk(spec.prefix):
for name in files:
@@ -239,124 +410,95 @@ class IntelParallelStudio(IntelInstaller):
wrapper_paths.append(os.path.join(spec.prefix,
root, name))
for wrapper in wrapper_paths:
- filter_file(r'-Xlinker --enable-new-dtags', r' ',
- wrapper)
-
- if spec.satisfies('+rpath'):
- for compiler_command in ["icc", "icpc", "ifort"]:
- cfgfilename = os.path.join(absbindir, "%s.cfg" %
- compiler_command)
- with open(cfgfilename, "w") as f:
- f.write('-Xlinker -rpath -Xlinker %s\n' % abslibdir)
-
- os.symlink(os.path.join(self.prefix.man, "common", "man1"),
- os.path.join(self.prefix.man, "man1"))
+ filter_file('-Xlinker --enable-new-dtags', ' ',
+ wrapper, string=True)
+
+ @run_after('install')
+ def rpath_configuration(self):
+ spec = self.spec
+
+ if '+rpath' in spec:
+ lib_dir = os.path.join(self.prefix, self.lib_dir)
+ for compiler in ['icc', 'icpc', 'ifort']:
+ cfgfilename = os.path.join(
+ self.prefix, self.bin_dir, '{0}.cfg'.format(compiler))
+ with open(cfgfilename, 'w') as f:
+ f.write('-Xlinker -rpath -Xlinker {0}\n'.format(lib_dir))
+
+ @run_after('install')
+ def fix_psxevars(self):
+ """Newer versions of Intel Parallel Studio have a bug in the
+ ``psxevars.sh`` script."""
+
+ bindir = glob.glob(join_path(
+ self.prefix, 'parallel_studio*', 'bin'))[0]
+
+ filter_file('^SCRIPTPATH=.*', 'SCRIPTPATH={0}'.format(self.prefix),
+ os.path.join(bindir, 'psxevars.sh'),
+ os.path.join(bindir, 'psxevars.csh'))
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ if '+mpi' in self.spec:
+ spack_env.set('I_MPI_CC', spack_cc)
+ spack_env.set('I_MPI_CXX', spack_cxx)
+ spack_env.set('I_MPI_F77', spack_fc)
+ spack_env.set('I_MPI_F90', spack_f77)
+ spack_env.set('I_MPI_FC', spack_fc)
+
+ # set up MKLROOT for everyone using MKL package
+ if '+mkl' in self.spec:
+ mkl_root = self.prefix.compilers_and_libraries.linux.mkl.lib.intel64 # noqa
+
+ spack_env.set('MKLROOT', self.prefix)
+ spack_env.append_path('SPACK_COMPILER_EXTRA_RPATHS', mkl_root)
+
+ def setup_dependent_package(self, module, dep_spec):
+ if '+mpi' in self.spec:
+ # Intel comes with 2 different flavors of MPI wrappers:
+ #
+ # * mpiicc, mpiicpc, and mpifort are hardcoded to wrap around
+ # the Intel compilers.
+ # * mpicc, mpicxx, mpif90, and mpif77 allow you to set which
+ # compilers to wrap using I_MPI_CC and friends. By default,
+ # wraps around the GCC compilers.
+ #
+ # In theory, these should be equivalent as long as I_MPI_CC
+ # and friends are set to point to the Intel compilers, but in
+ # practice, mpicc fails to compile some applications while
+ # mpiicc works.
+ bindir = self.prefix.compilers_and_libraries.linux.mpi.intel64.bin
+
+ if self.compiler.name == 'intel':
+ self.spec.mpicc = bindir.mpiicc
+ self.spec.mpicxx = bindir.mpiicpc
+ self.spec.mpifc = bindir.mpiifort
+ self.spec.mpif77 = bindir.mpiifort
+ else:
+ self.spec.mpicc = bindir.mpicc
+ self.spec.mpicxx = bindir.mpicxx
+ self.spec.mpifc = bindir.mpif90
+ self.spec.mpif77 = bindir.mpif77
def setup_environment(self, spack_env, run_env):
- # TODO: Determine variables needed for the professional edition.
-
- major_ver = self.version[1]
-
- # Remove paths that were guessed but are incorrect for this package.
- run_env.remove_path('LIBRARY_PATH',
- join_path(self.prefix, 'lib'))
- run_env.remove_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib'))
- run_env.remove_path('CPATH',
- join_path(self.prefix, 'include'))
-
- # Add the default set of variables
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'intel64'))
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'intel64'))
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib',
- 'intel64', 'gcc4.4'))
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib',
- 'intel64', 'gcc4.4'))
- run_env.prepend_path('CPATH',
- join_path(self.prefix, 'tbb', 'include'))
- run_env.prepend_path('MIC_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'mic'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'mic'))
- run_env.prepend_path('MIC_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib', 'mic'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib', 'mic'))
-
- if self.spec.satisfies('+all'):
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix,
- 'debugger_{0}'.format(major_ver),
- 'libipt', 'intel64', 'lib'))
- run_env.set('GDBSERVER_MIC',
- join_path(self.prefix,
- 'debugger_{0}'.format(major_ver), 'gdb',
- 'targets', 'mic', 'bin', 'gdbserver'))
- run_env.set('GDB_CROSS',
- join_path(self.prefix,
- 'debugger_{0}'.format(major_ver),
- 'gdb', 'intel64_mic', 'bin', 'gdb-mic'))
- run_env.set('MPM_LAUNCHER',
- join_path(self.prefix,
- 'debugger_{0}'.format(major_ver), 'mpm',
- 'mic',
- 'bin', 'start_mpm.sh'))
- run_env.set('INTEL_PYTHONHOME',
- join_path(self.prefix,
- 'debugger_{0}'.format(major_ver), 'python',
- 'intel64'))
-
- if (self.spec.satisfies('+all') or self.spec.satisfies('+mpi')):
- # Only I_MPI_ROOT is set here because setting the various PATH
- # variables will potentially be in conflict with other MPI
- # environment modules. The I_MPI_ROOT environment variable can be
- # used as a base to set necessary PATH variables for using Intel
- # MPI. It is also possible to set the variables in the modules.yaml
- # file if Intel MPI is the dominant, or only, MPI on a system.
- run_env.set('I_MPI_ROOT', join_path(self.prefix, 'impi'))
-
- if self.spec.satisfies('+all') or self.spec.satisfies('+mkl'):
- spack_env.set('MKLROOT', join_path(self.prefix, 'mkl'))
-
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'mkl', 'lib',
- 'intel64'))
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'mkl', 'lib',
- 'intel64'))
- run_env.prepend_path('CPATH',
- join_path(self.prefix, 'mkl', 'include'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'mkl', 'lib', 'mic'))
- run_env.set('MKLROOT', join_path(self.prefix, 'mkl'))
-
- if self.spec.satisfies('+all') or self.spec.satisfies('+daal'):
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'daal', 'lib',
- 'intel64_lin'))
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'daal', 'lib',
- 'intel64_lin'))
- run_env.prepend_path('CPATH',
- join_path(self.prefix, 'daal', 'include'))
- run_env.prepend_path('CLASSPATH',
- join_path(self.prefix, 'daal', 'lib',
- 'daal.jar'))
- run_env.set('DAALROOT', join_path(self.prefix, 'daal'))
-
- if self.spec.satisfies('+all') or self.spec.satisfies('+ipp'):
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'ipp', 'lib',
- 'intel64'))
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'ipp', 'lib',
- 'intel64'))
- run_env.prepend_path('CPATH',
- join_path(self.prefix, 'ipp', 'include'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'ipp', 'lib', 'mic'))
- run_env.set('IPPROOT', join_path(self.prefix, 'ipp'))
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source parallel_studio_xe_2017/bin/psxevars.sh intel64
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ psxevars = glob.glob(join_path(
+ self.prefix, 'parallel_studio*', 'bin', 'psxevars.sh'))
+
+ if psxevars:
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ psxevars[0], 'intel64'))
diff --git a/var/spack/repos/builtin/packages/tbb/package.py b/var/spack/repos/builtin/packages/intel-tbb/package.py
index 33dea6625b..05185ce297 100644
--- a/var/spack/repos/builtin/packages/tbb/package.py
+++ b/var/spack/repos/builtin/packages/intel-tbb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import glob
-class Tbb(Package):
+class IntelTbb(Package):
"""Widely used C++ template library for task parallelism.
Intel Threading Building Blocks (Intel TBB) lets you easily write parallel
C++ programs that take full advantage of multicore performance, that are
@@ -35,7 +35,16 @@ class Tbb(Package):
homepage = "http://www.threadingbuildingblocks.org/"
# Only version-specific URL's work for TBB
- # can also use https://github.com/01org/tbb/releases/
+ version('2018.1', 'b2f2fa09adf44a22f4024049907f774b',
+ url='https://github.com/01org/tbb/archive/2018_U1.tar.gz')
+ version('2018.0', 'e54de69981905ad69eb9cf0226b9bf5f9a4ba065',
+ url='https://github.com/01org/tbb/archive/2018.tar.gz')
+ version('2017.8', '488f049fd107d8b1f6ba59cf4aad881172525106',
+ url='https://github.com/01org/tbb/archive/2017_U8.tar.gz')
+ version('2017.6', 'c0a722fd1ae66b40aeab25da6049086ef5f02f17',
+ url='https://github.com/01org/tbb/archive/2017_U6.tar.gz')
+ version('2017.5', '26f720729d322913912e99d1e4a36bd10625d3ca',
+ url='https://github.com/01org/tbb/archive/2017_U5.tar.gz')
version('2017.3', '2c451a5bcf6fc31487b98b4b29651c369874277c',
url='https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb2017_20161128oss_src.tgz')
version('4.4.4', 'd4cee5e4ca75cab5181834877738619c56afeb71',
@@ -43,6 +52,11 @@ class Tbb(Package):
version('4.4.3', '80707e277f69d9b20eeebdd7a5f5331137868ce1',
url='https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160128oss_src_0.tgz')
+ provides('tbb')
+
+ # include patch for gcc rtm options
+ patch("tbb_gcc_rtm_key.patch", level=0)
+
def coerce_to_spack(self, tbb_build_subdir):
for compiler in ["icc", "gcc", "clang"]:
fs = glob.glob(join_path(tbb_build_subdir,
diff --git a/var/spack/repos/builtin/packages/intel-tbb/tbb_gcc_rtm_key.patch b/var/spack/repos/builtin/packages/intel-tbb/tbb_gcc_rtm_key.patch
new file mode 100644
index 0000000000..f1a42fb52f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/intel-tbb/tbb_gcc_rtm_key.patch
@@ -0,0 +1,23 @@
+*** build/linux.gcc.inc.orig 2017-01-10 16:54:01.000000000 -0800
+--- build/linux.gcc.inc 2017-01-10 16:54:04.000000000 -0800
+***************
+*** 49,57 ****
+ endif
+
+ # gcc 4.8 and later support RTM intrinsics, but require command line switch to enable them
+! ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[8-9]|[5-9])"))
+! RTM_KEY = -mrtm
+! endif
+
+ ifeq ($(cfg), release)
+ CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
+--- 49,57 ----
+ endif
+
+ # gcc 4.8 and later support RTM intrinsics, but require command line switch to enable them
+! #ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[8-9]|[5-9])"))
+! # RTM_KEY = -mrtm
+! #endif
+
+ ifeq ($(cfg), release)
+ CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/intel/package.py b/var/spack/repos/builtin/packages/intel/package.py
index 4164383f5b..d67550caa6 100644
--- a/var/spack/repos/builtin/packages/intel/package.py
+++ b/var/spack/repos/builtin/packages/intel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,155 +22,89 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
import os
-import re
-
-
-def filter_pick(input_list, regex_filter):
- """Returns the items in input_list that are found in the regex_filter"""
- return [l for l in input_list for m in (regex_filter(l),) if m]
-
-
-def unfilter_pick(input_list, regex_filter):
- """Returns the items in input_list that are not found in the
- regex_filter"""
- return [l for l in input_list for m in (regex_filter(l),) if not m]
-
-
-def get_all_components():
- """Returns a list of all the components associated with the downloaded
- Intel package"""
- all_components = []
- with open("pset/mediaconfig.xml", "r") as f:
- lines = f.readlines()
- for line in lines:
- if line.find('<Abbr>') != -1:
- component = line[line.find('<Abbr>') + 6:line.find('</Abbr>')]
- all_components.append(component)
- return all_components
-
-class IntelInstaller(Package):
- """Base package containing common methods for installing Intel software"""
+from spack import *
+from spack.environment import EnvironmentModifications
- homepage = "https://software.intel.com/en-us"
- intel_components = "ALL"
- license_required = True
- license_comment = '#'
- license_files = ['Licenses/license.lic']
- license_vars = ['INTEL_LICENSE_FILE']
- license_url = \
- 'https://software.intel.com/en-us/articles/intel-license-manager-faq'
- @property
- def global_license_file(self):
- """Returns the path where a global license file should be stored."""
- if not self.license_files:
- return
- return join_path(self.global_license_dir, "intel",
- os.path.basename(self.license_files[0]))
-
- def install(self, spec, prefix):
-
- if not hasattr(self, "intel_prefix"):
- self.intel_prefix = self.prefix
-
- silent_config_filename = 'silent.cfg'
- with open(silent_config_filename, 'w') as f:
- f.write("""
-ACCEPT_EULA=accept
-PSET_MODE=install
-CONTINUE_WITH_INSTALLDIR_OVERWRITE=yes
-PSET_INSTALL_DIR=%s
-NONRPM_DB_DIR=%s
-ACTIVATION_LICENSE_FILE=%s
-ACTIVATION_TYPE=license_file
-PHONEHOME_SEND_USAGE_DATA=no
-CONTINUE_WITH_OPTIONAL_ERROR=yes
-COMPONENTS=%s
-""" % (self.intel_prefix, self.intel_prefix, self.global_license_file,
- self.intel_components))
-
- install_script = Executable("./install.sh")
- install_script('--silent', silent_config_filename)
-
-
-class Intel(IntelInstaller):
- """Intel Compilers.
-
- Note: You will have to add the download file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+class Intel(IntelPackage):
+ """Intel Compilers."""
homepage = "https://software.intel.com/en-us/intel-parallel-studio-xe"
- # TODO: can also try the online installer (will download files on demand)
- version('16.0.2', '1133fb831312eb519f7da897fec223fa',
- url="file://%s/parallel_studio_xe_2016_composer_edition_update2.tgz"
- % os.getcwd())
+ version('18.0.0', '31ba768fba6e7322957b03feaa3add28',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/12067/parallel_studio_xe_2018_composer_edition.tgz')
+ version('17.0.4', 'd03d351809e182c481dc65e07376d9a2',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11541/parallel_studio_xe_2017_update4_composer_edition.tgz')
+ version('17.0.3', '52344df122c17ddff3687f84ceb21623',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11464/parallel_studio_xe_2017_update3_composer_edition.tgz')
+ version('17.0.2', '2891ab1ece43eb61b6ab892f07c47f01',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/11302/parallel_studio_xe_2017_update2_composer_edition.tgz')
+ version('17.0.1', '1f31976931ed8ec424ac7c3ef56f5e85',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/10978/parallel_studio_xe_2017_update1_composer_edition.tgz')
+ version('17.0.0', 'b67da0065a17a05f110ed1d15c3c6312',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9656/parallel_studio_xe_2017_composer_edition.tgz')
+ version('16.0.4', '2bc9bfc9be9c1968a6e42efb4378f40e',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9785/parallel_studio_xe_2016_composer_edition_update4.tgz')
version('16.0.3', '3208eeabee951fc27579177b593cefe9',
- url="file://%s/parallel_studio_xe_2016_composer_edition_update3.tgz"
- % os.getcwd())
-
- variant('rpath', default=True, description="Add rpath to .cfg files")
-
- def install(self, spec, prefix):
- components = []
- all_components = get_all_components()
- regex = '(comp|openmp|intel-tbb|icc|ifort|psxe|icsxe-pset)'
- components = filter_pick(all_components, re.compile(regex).search)
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9063/parallel_studio_xe_2016_composer_edition_update3.tgz')
+ version('16.0.2', '1133fb831312eb519f7da897fec223fa',
+ url='http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/8680/parallel_studio_xe_2016_composer_edition_update2.tgz')
- self.intel_components = ';'.join(components)
- IntelInstaller.install(self, spec, prefix)
+ variant('rpath', default=True, description='Add rpath to .cfg files')
- absbindir = os.path.split(os.path.realpath(os.path.join(
- self.prefix.bin, "icc")))[0]
- abslibdir = os.path.split(os.path.realpath(os.path.join(
- self.prefix.lib, "intel64", "libimf.a")))[0]
+ components = [
+ # Common files
+ 'intel-comp-',
+ 'intel-openmp',
- # symlink or copy?
- os.symlink(self.global_license_file,
- os.path.join(absbindir, "license.lic"))
+ # C/C++
+ 'intel-icc',
- if spec.satisfies('+rpath'):
- for compiler_command in ["icc", "icpc", "ifort"]:
- cfgfilename = os.path.join(absbindir, "%s.cfg" %
- compiler_command)
- with open(cfgfilename, "w") as f:
- f.write('-Xlinker -rpath -Xlinker %s\n' % abslibdir)
+ # Fortran
+ 'intel-ifort',
+ ]
- os.symlink(os.path.join(self.prefix.man, "common", "man1"),
- os.path.join(self.prefix.man, "man1"))
+ @property
+ def license_files(self):
+ return [
+ 'Licenses/license.lic',
+ join_path('compilers_and_libraries', 'linux', 'bin',
+ 'intel64', 'license.lic')
+ ]
+
+ @run_after('install')
+ def rpath_configuration(self):
+ if '+rpath' in self.spec:
+ bin_dir = join_path(self.prefix, 'compilers_and_libraries',
+ 'linux', 'bin', 'intel64')
+ lib_dir = join_path(self.prefix, 'compilers_and_libraries',
+ 'linux', 'compiler', 'lib', 'intel64_lin')
+ for compiler in ['icc', 'icpc', 'ifort']:
+ cfgfilename = join_path(bin_dir, '{0}.cfg'.format(compiler))
+ with open(cfgfilename, 'w') as f:
+ f.write('-Xlinker -rpath -Xlinker {0}\n'.format(lib_dir))
def setup_environment(self, spack_env, run_env):
-
- # Remove paths that were guessed but are incorrect for this package.
- run_env.remove_path('LIBRARY_PATH',
- join_path(self.prefix, 'lib'))
- run_env.remove_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib'))
- run_env.remove_path('CPATH',
- join_path(self.prefix, 'include'))
-
- # Add the default set of variables
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'intel64'))
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'intel64'))
- run_env.prepend_path('LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib',
- 'intel64', 'gcc4.4'))
- run_env.prepend_path('LD_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib',
- 'intel64', 'gcc4.4'))
- run_env.prepend_path('CPATH',
- join_path(self.prefix, 'tbb', 'include'))
- run_env.prepend_path('MIC_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'mic'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'lib', 'mic'))
- run_env.prepend_path('MIC_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib', 'mic'))
- run_env.prepend_path('MIC_LD_LIBRARY_PATH',
- join_path(self.prefix, 'tbb', 'lib', 'mic'))
+ """Adds environment variables to the generated module file.
+
+ These environment variables come from running:
+
+ .. code-block:: console
+
+ $ source bin/compilervars.sh intel64
+ """
+ # NOTE: Spack runs setup_environment twice, once pre-build to set up
+ # the build environment, and once post-installation to determine
+ # the environment variables needed at run-time to add to the module
+ # file. The script we need to source is only present post-installation,
+ # so check for its existence before sourcing.
+ # TODO: At some point we should split setup_environment into
+ # setup_build_environment and setup_run_environment to get around
+ # this problem.
+ compilervars = os.path.join(self.prefix.bin, 'compilervars.sh')
+
+ if os.path.isfile(compilervars):
+ run_env.extend(EnvironmentModifications.from_sourcing_file(
+ compilervars, 'intel64'))
diff --git a/var/spack/repos/builtin/packages/intltool/package.py b/var/spack/repos/builtin/packages/intltool/package.py
index e934734691..0c84d3b516 100644
--- a/var/spack/repos/builtin/packages/intltool/package.py
+++ b/var/spack/repos/builtin/packages/intltool/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,23 +25,37 @@
from spack import *
-class Intltool(Package):
+class Intltool(AutotoolsPackage):
"""intltool is a set of tools to centralize translation of many different
- file formats using GNU gettext-compatible PO files.
+ file formats using GNU gettext-compatible PO files."""
- """
- homepage = 'https://freedesktop.org/wiki/Software/intltool/'
+ homepage = 'https://freedesktop.org/wiki/Software/intltool/'
+ url = 'https://launchpad.net/intltool/trunk/0.51.0/+download/intltool-0.51.0.tar.gz'
+ list_url = 'https://launchpad.net/intltool/+download'
- version('0.51.0', '12e517cac2b57a0121cda351570f1e63')
+ version('0.51.0', '12e517cac2b57a0121cda351570f1e63')
- def url_for_version(self, version):
- """Handle version-based custom URLs."""
- return 'https://launchpad.net/intltool/trunk/%s/+download/intltool-%s.tar.gz' % (version, version)
+ # requires XML::Parser perl module
+ depends_on('perl-xml-parser', type=('build', 'run'))
+ depends_on('perl@5.8.1:', type=('build', 'run'))
- def install(self, spec, prefix):
+ def check(self):
+ # `make check` passes but causes `make install` to fail
+ pass
- # configure, build, install:
- options = ['--prefix=%s' % prefix]
- configure(*options)
- make()
- make('install')
+ def _make_executable(self, name):
+ return Executable(join_path(self.prefix.bin, name))
+
+ def setup_dependent_package(self, module, dependent_spec):
+ # intltool is very likely to be a build dependency,
+ # so we add the tools it provides to the dependent module
+ executables = [
+ 'intltool-extract',
+ 'intltoolize',
+ 'intltool-merge',
+ 'intltool-prepare',
+ 'intltool-update'
+ ]
+
+ for name in executables:
+ setattr(module, name, self._make_executable(name))
diff --git a/var/spack/repos/builtin/packages/ior/package.py b/var/spack/repos/builtin/packages/ior/package.py
index b8825c0fe4..96b5a455c9 100644
--- a/var/spack/repos/builtin/packages/ior/package.py
+++ b/var/spack/repos/builtin/packages/ior/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,10 +23,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class Ior(Package):
+class Ior(AutotoolsPackage):
"""The IOR software is used for benchmarking parallel file systems
using POSIX, MPI-IO, or HDF5 interfaces."""
@@ -38,20 +37,27 @@ class Ior(Package):
variant('hdf5', default=False, description='support IO with HDF5 backend')
variant('ncmpi', default=False, description='support IO with NCMPI backend')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
depends_on('mpi')
- depends_on('hdf5+mpi', when='+hdf5')
- depends_on('netcdf+mpi', when='+ncmpi')
+ depends_on('hdf5+mpi', when='+hdf5')
+ depends_on('parallel-netcdf', when='+ncmpi')
- def install(self, spec, prefix):
- os.system('./bootstrap')
+ @run_before('autoreconf')
+ def bootstrap(self):
+ Executable('./bootstrap')()
- config_args = [
- 'MPICC=%s' % spec['mpi'].prefix.bin + '/mpicc',
- '--prefix=%s' % prefix,
- ]
+ def configure_args(self):
+ spec = self.spec
+ config_args = []
+
+ env['CC'] = spec['mpi'].mpicc
if '+hdf5' in spec:
config_args.append('--with-hdf5')
+ config_args.append('CFLAGS=-D H5_USE_16_API')
else:
config_args.append('--without-hdf5')
@@ -60,7 +66,4 @@ class Ior(Package):
else:
config_args.append('--without-ncmpi')
- configure(*config_args)
-
- make()
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/iozone/package.py b/var/spack/repos/builtin/packages/iozone/package.py
new file mode 100644
index 0000000000..c75595ba14
--- /dev/null
+++ b/var/spack/repos/builtin/packages/iozone/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Iozone(MakefilePackage):
+ """IOzone is a filesystem benchmark tool. The benchmark generates and
+ measures a variety of file operations. Iozone has been ported to many
+ machines and runs under many operating systems."""
+
+ homepage = "http://www.iozone.org/"
+ url = "http://www.iozone.org/src/current/iozone3_465.tar"
+
+ version('3_465', 'c924e5e46fb1cf8145f420e8e57eb954')
+
+ # TODO: Add support for other architectures as necessary
+ build_targets = ['linux-AMD64']
+
+ build_directory = 'src/current'
+
+ def edit(self, spec, prefix):
+ with working_dir(self.build_directory):
+ filter_file(r'^CC\t= cc',
+ r'CC\t= {0}'.format(spack_cc),
+ 'makefile')
+
+ def install(self, spec, prefix):
+ install_tree('docs', join_path(prefix, 'docs'))
+
+ with working_dir(self.build_directory):
+ install_tree('.', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/ipopt/ipopt_ppc_build.patch b/var/spack/repos/builtin/packages/ipopt/ipopt_ppc_build.patch
new file mode 100644
index 0000000000..a903544cc7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ipopt/ipopt_ppc_build.patch
@@ -0,0 +1,26 @@
+--- ipopt/config.guess 2017-06-20 14:49:19.618016003 -0700
++++ ipopt/config.guess.new 2017-06-20 14:50:35.678878802 -0700
+@@ -908,6 +908,9 @@
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-gnu
+ exit ;;
++ ppc64le:Linux:*:*)
++ echo powerpc64-unknown-linux-gnu
++ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-gnu
+ exit ;;
+
+
+--- ipopt/Ipopt/config.guess 2017-06-20 14:49:19.618016003 -0700
++++ ipopt/Ipopt/config.guess.new 2017-06-20 14:50:35.678878802 -0700
+@@ -908,6 +908,9 @@
+ ppc:Linux:*:*)
+ echo powerpc-unknown-linux-gnu
+ exit ;;
++ ppc64le:Linux:*:*)
++ echo powerpc64-unknown-linux-gnu
++ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-unknown-linux-gnu
+ exit ;;
diff --git a/var/spack/repos/builtin/packages/ipopt/package.py b/var/spack/repos/builtin/packages/ipopt/package.py
index bd1e5f36ef..a9502a3e85 100644
--- a/var/spack/repos/builtin/packages/ipopt/package.py
+++ b/var/spack/repos/builtin/packages/ipopt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,16 +31,28 @@ class Ipopt(Package):
homepage = "https://projects.coin-or.org/Ipopt"
url = "http://www.coin-or.org/download/source/Ipopt/Ipopt-3.12.4.tgz"
+ version('3.12.7', '2a36e4a04717a8ed7012ac7d1253ae4ffbc1a8fd')
+ version('3.12.6', 'ed4072427fab786fcf6082fe7e6f6c2ed9b5e6f8')
+ version('3.12.5', '3f63ddfff517235ead17af6cceb426ca858dda37')
version('3.12.4', '12a8ecaff8dd90025ddea6c65b49cb03')
version('3.12.3', 'c560cbfa9cbf62acf8b485823c255a1b')
version('3.12.2', 'ec1e855257d7de09e122c446506fb00d')
version('3.12.1', 'ceaf895ce80c77778f2cab68ba9f17f3')
version('3.12.0', 'f7dfc3aa106a6711a85214de7595e827')
+ variant('coinhsl', default=False,
+ description="Build with Coin Harwell Subroutine Libraries")
+ variant('metis', default=False,
+ description="Build with METIS partitioning support")
+
depends_on("blas")
depends_on("lapack")
depends_on("pkg-config", type='build')
depends_on("mumps+double~mpi")
+ depends_on('coinhsl', when='+coinhsl')
+ depends_on('metis@4.0:4.999', when='+metis')
+
+ patch('ipopt_ppc_build.patch', when='arch=ppc64le')
def install(self, spec, prefix):
# Dependency directories
@@ -53,20 +65,31 @@ class Ipopt(Package):
mumps_flags = "-ldmumps -lmumps_common -lpord -lmpiseq"
mumps_libcmd = "-L%s " % mumps_dir.lib + mumps_flags
- blas_lib = spec['blas'].blas_libs.ld_flags
- lapack_lib = spec['lapack'].lapack_libs.ld_flags
+ blas_lib = spec['blas'].libs.ld_flags
+ lapack_lib = spec['lapack'].libs.ld_flags
configure_args = [
"--prefix=%s" % prefix,
"--with-mumps-incdir=%s" % mumps_dir.include,
"--with-mumps-lib=%s" % mumps_libcmd,
"--enable-shared",
+ "coin_skip_warn_cxxflags=yes",
"--with-blas-incdir=%s" % blas_dir.include,
"--with-blas-lib=%s" % blas_lib,
"--with-lapack-incdir=%s" % lapack_dir.include,
"--with-lapack-lib=%s" % lapack_lib
]
+ if 'coinhsl' in spec:
+ configure_args.extend([
+ '--with-hsl-lib=%s' % spec['coinhsl'].libs.ld_flags,
+ '--with-hsl-incdir=%s' % spec['coinhsl'].prefix.include])
+
+ if 'metis' in spec:
+ configure_args.extend([
+ '--with-metis-lib=%s' % spec['metis'].libs.ld_flags,
+ '--with-metis-incdir=%s' % spec['metis'].prefix.include])
+
configure(*configure_args)
# IPOPT does not build correctly in parallel on OS X
diff --git a/var/spack/repos/builtin/packages/isaac-server/jpeg.patch b/var/spack/repos/builtin/packages/isaac-server/jpeg.patch
new file mode 100644
index 0000000000..ee0a74e769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/isaac-server/jpeg.patch
@@ -0,0 +1,34 @@
+diff --git a/server/src/Broker.cpp b/server/src/Broker.cpp
+index 03d60f4..aab449f 100644
+--- a/server/src/Broker.cpp
++++ b/server/src/Broker.cpp
+@@ -108,14 +108,14 @@ MetaDataClient* Broker::addDataClient()
+ }
+ boolean isaac_jpeg_fill_input_buffer(j_decompress_ptr cinfo)
+ {
+- return true;
++ return TRUE;
+ }
+ void isaac_jpeg_skip_input_data(j_decompress_ptr cinfo,long num_bytes)
+ {
+ }
+ boolean isaac_jpeg_resync_to_restart(j_decompress_ptr cinfo, int desired)
+ {
+- return true;
++ return TRUE;
+ }
+ void isaac_jpeg_term_source(j_decompress_ptr cinfo)
+ {
+diff --git a/server/src/URIImageConnector.cpp b/server/src/URIImageConnector.cpp
+index 0b11800..e843aa4 100644
+--- a/server/src/URIImageConnector.cpp
++++ b/server/src/URIImageConnector.cpp
+@@ -40,7 +40,7 @@ void isaac_init_destination(j_compress_ptr cinfo)
+ }
+ boolean isaac_jpeg_empty_output_buffer(j_compress_ptr cinfo)
+ {
+- return true;
++ return TRUE;
+ }
+ void isaac_jpeg_term_destination(j_compress_ptr cinfo)
+ {
diff --git a/var/spack/repos/builtin/packages/isaac-server/package.py b/var/spack/repos/builtin/packages/isaac-server/package.py
new file mode 100644
index 0000000000..3bfad09f98
--- /dev/null
+++ b/var/spack/repos/builtin/packages/isaac-server/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class IsaacServer(CMakePackage):
+ """In Situ Animation of Accelerated Computations: Server"""
+
+ homepage = "http://computationalradiationphysics.github.io/isaac/"
+ url = "https://github.com/ComputationalRadiationPhysics/isaac/archive/v1.3.0.tar.gz"
+
+ version('develop', branch='dev',
+ git='https://github.com/ComputationalRadiationPhysics/isaac.git')
+ version('master', branch='master',
+ git='https://github.com/ComputationalRadiationPhysics/isaac.git')
+ version('1.3.2', 'c557daa74de52fd79e734c9758fca38b')
+ version('1.3.1', '7fe075f9af68d05355eaba0e224f20ca')
+ version('1.3.0', 'c8a794da9bb998ef0e75449bfece1a12')
+
+ # variant('gstreamer', default=False, description= \
+ # 'Support for RTP streams, e.g. to Twitch or Youtube')
+
+ depends_on('cmake@3.3:', type='build')
+ depends_on('jpeg', type='link')
+ depends_on('jansson', type='link')
+ depends_on('boost@1.56.0:', type='link')
+ depends_on('libwebsockets@2.1.1:', type='link')
+ # depends_on('gstreamer@1.0', when='+gstreamer')
+
+ # Until the pull request is merged: https://github.com/ComputationalRadiationPhysics/isaac/pull/70
+ patch('jpeg.patch', when='@:1.3.1')
+
+ root_cmakelists_dir = 'server'
diff --git a/var/spack/repos/builtin/packages/isaac/package.py b/var/spack/repos/builtin/packages/isaac/package.py
new file mode 100644
index 0000000000..4c05faeb26
--- /dev/null
+++ b/var/spack/repos/builtin/packages/isaac/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Isaac(CMakePackage):
+ """In Situ Animation of Accelerated Computations: Header-Only Library"""
+
+ homepage = "http://computationalradiationphysics.github.io/isaac/"
+ url = "https://github.com/ComputationalRadiationPhysics/isaac/archive/v1.3.0.tar.gz"
+
+ version('develop', branch='dev',
+ git='https://github.com/ComputationalRadiationPhysics/isaac.git')
+ version('master', branch='master',
+ git='https://github.com/ComputationalRadiationPhysics/isaac.git')
+ version('1.3.3', '7aeebaf0c5a77e2cb9bea066750e369b')
+ version('1.3.2', 'c557daa74de52fd79e734c9758fca38b')
+ version('1.3.1', '7fe075f9af68d05355eaba0e224f20ca')
+ version('1.3.0', 'c8a794da9bb998ef0e75449bfece1a12')
+
+ variant('cuda', default=True,
+ description='Generate CUDA kernels for Nvidia GPUs')
+ # variant('alpaka', default=False,
+ # description='Generate kernels via Alpaka, for CPUs or GPUs')
+
+ depends_on('cmake@3.3:', type='build')
+ depends_on('jpeg', type='link')
+ depends_on('jansson', type='link')
+ depends_on('boost@1.56.0:', type='link')
+ depends_on('boost@1.65.1:', type='link', when='^cuda@9:')
+ depends_on('cuda@7.0:', type='link', when='+cuda')
+ # depends_on('alpaka', when='+alpaka')
+ depends_on('icet', type='link')
+ depends_on('mpi', type='link')
+
+ root_cmakelists_dir = 'lib'
diff --git a/var/spack/repos/builtin/packages/isl/package.py b/var/spack/repos/builtin/packages/isl/package.py
index f6188e6b3e..4c25f3ec97 100644
--- a/var/spack/repos/builtin/packages/isl/package.py
+++ b/var/spack/repos/builtin/packages/isl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,19 @@
from spack import *
-class Isl(Package):
- """isl is a thread-safe C library for manipulating sets and
- relations of integer points bounded by affine constraints."""
+class Isl(AutotoolsPackage):
+ """isl (Integer Set Library) is a thread-safe C library for manipulating
+ sets and relations of integer points bounded by affine constraints."""
+
homepage = "http://isl.gforge.inria.fr"
- url = "http://isl.gforge.inria.fr/isl-0.14.tar.bz2"
+ url = "http://isl.gforge.inria.fr/isl-0.18.tar.bz2"
version('0.18', '11436d6b205e516635b666090b94ab32')
version('0.14', 'acd347243fca5609e3df37dba47fd0bb')
- depends_on("gmp")
+ depends_on('gmp')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--with-gmp-prefix=%s" % spec['gmp'].prefix)
- make()
- make("install")
+ def configure_args(self):
+ return [
+ '--with-gmp-prefix={0}'.format(self.spec['gmp'].prefix)
+ ]
diff --git a/var/spack/repos/builtin/packages/itstool/package.py b/var/spack/repos/builtin/packages/itstool/package.py
index b8b2b4459f..00e273bb2f 100644
--- a/var/spack/repos/builtin/packages/itstool/package.py
+++ b/var/spack/repos/builtin/packages/itstool/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Itstool(Package):
+class Itstool(AutotoolsPackage):
"""ITS Tool allows you to translate your XML documents with PO files, using
rules from the W3C Internationalization Tag Set (ITS) to determine what
to translate and how to separate it into PO file messages."""
@@ -37,8 +37,3 @@ class Itstool(Package):
version('2.0.1', '40935cfb08228488bd45575e5f001a34')
version('2.0.0', 'd8c702c3e8961db83d04182c2aa4730b')
version('1.2.0', 'c0925f6869e33af8e7fe56848c129152')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/itsx/package.py b/var/spack/repos/builtin/packages/itsx/package.py
new file mode 100644
index 0000000000..84dc525740
--- /dev/null
+++ b/var/spack/repos/builtin/packages/itsx/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Itsx(Package):
+ """Improved software detection and extraction of ITS1 and ITS2 from
+ ribosomal ITS sequences of fungi and other eukaryotes for use in
+ environmental sequencing"""
+
+ homepage = "http://microbiology.se/software/itsx/"
+ url = "http://microbiology.se/sw/ITSx_1.0.11.tar.gz"
+
+ version('1.0.11', '1bff12f1d5742f19be6ca585e9bf81fa')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('hmmer')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('ITSx', prefix.bin)
+ install_tree('ITSx_db', prefix.bin.ITSx_db)
diff --git a/var/spack/repos/builtin/packages/jags/package.py b/var/spack/repos/builtin/packages/jags/package.py
new file mode 100644
index 0000000000..248f4019d6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/jags/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Jags(AutotoolsPackage):
+ """JAGS is Just Another Gibbs Sampler. It is a program for analysis of
+ Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC)
+ simulation not wholly unlike BUGS"""
+
+ homepage = "http://mcmc-jags.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/mcmc-jags/JAGS/4.x/Source/JAGS-4.2.0.tar.gz"
+
+ version('4.2.0', '9e521b3cfb23d3290a8c6bc0b79bf426')
+
+ depends_on('blas')
+ depends_on('lapack')
+
+ def configure_args(self):
+ args = ['--with-blas=-L%s' % self.spec['blas'].prefix.lib,
+ '--with-lapack=-L%s' % self.spec['lapack'].prefix.lib]
+ return args
diff --git a/var/spack/repos/builtin/packages/jansson/package.py b/var/spack/repos/builtin/packages/jansson/package.py
index e6100607aa..e3e2d56cff 100644
--- a/var/spack/repos/builtin/packages/jansson/package.py
+++ b/var/spack/repos/builtin/packages/jansson/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,3 +33,12 @@ class Jansson(CMakePackage):
url = "https://github.com/akheron/jansson/archive/v2.9.tar.gz"
version('2.9', 'd2db25c437b359fc5a065ed938962237')
+
+ variant('shared', default=True,
+ description='Enables the build of shared libraries')
+
+ def cmake_args(self):
+ return [
+ '-DJANSSON_BUILD_SHARED_LIBS:BOOL=%s' % (
+ 'ON' if '+shared' in self.spec else 'OFF'),
+ ]
diff --git a/var/spack/repos/builtin/packages/jasper/package.py b/var/spack/repos/builtin/packages/jasper/package.py
index f450c7d155..5739f902a1 100644
--- a/var/spack/repos/builtin/packages/jasper/package.py
+++ b/var/spack/repos/builtin/packages/jasper/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Jasper(Package):
+class Jasper(AutotoolsPackage):
"""Library for manipulating JPEG-2000 images"""
homepage = "https://www.ece.uvic.ca/~frodo/jasper/"
@@ -38,26 +38,21 @@ class Jasper(Package):
variant('debug', default=False,
description='Builds debug versions of the libraries')
- depends_on('libjpeg-turbo')
+ depends_on('jpeg')
# Fixes a bug (still in upstream as of v.1.900.1) where an assertion fails
# when certain JPEG-2000 files with an alpha channel are processed
# see: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=469786
patch('fix_alpha_channel_assert_fail.patch')
- def install(self, spec, prefix):
- configure_options = [
- '--prefix={0}'.format(prefix),
- '--mandir={0}'.format(spec.prefix.man),
- ]
+ def configure_args(self):
+ spec = self.spec
+ args = ['--mandir={0}'.format(spec.prefix.man)]
if '+shared' in spec:
- configure_options.append('--enable-shared')
+ args.append('--enable-shared')
if '+debug' not in spec:
- configure_options.append('--disable-debug')
+ args.append('--disable-debug')
- configure(*configure_options)
-
- make()
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/jdk/package.py b/var/spack/repos/builtin/packages/jdk/package.py
index 518a469435..9c221fa364 100644
--- a/var/spack/repos/builtin/packages/jdk/package.py
+++ b/var/spack/repos/builtin/packages/jdk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -45,12 +45,29 @@ class Jdk(Package):
'-H', # specify required License Agreement cookie
'Cookie: oraclelicense=accept-securebackup-cookie']
- version('8u66-linux-x64', '88f31f3d642c3287134297b8c10e61bf',
- url="http://download.oracle.com/otn-pub/java/jdk/8u66-b17/jdk-8u66-linux-x64.tar.gz",
- curl_options=curl_options)
- version('8u92-linux-x64', '65a1cc17ea362453a6e0eb4f13be76e4',
- url="http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.tar.gz",
- curl_options=curl_options)
+ # For instructions on how to find the magic URL, see:
+ # https://gist.github.com/P7h/9741922
+ # https://linuxconfig.org/how-to-install-java-se-development-kit-on-debian-linux
+ version('8u141-b15', '8cf4c4e00744bfafc023d770cb65328c', curl_options=curl_options,
+ url='http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz')
+ version('8u131-b11', '75b2cb2249710d822a60f83e28860053', curl_options=curl_options,
+ url='http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz')
+ version('8u92-b14', '65a1cc17ea362453a6e0eb4f13be76e4', curl_options=curl_options)
+ version('8u73-b02', '1b0120970aa8bc182606a16bf848a686', curl_options=curl_options)
+ version('8u66-b17', '88f31f3d642c3287134297b8c10e61bf', curl_options=curl_options)
+ # The 7u80 tarball is not readily available from Oracle. If you have
+ # the tarball, add it to your mirror as mirror/jdk/jdk-7u80.tar.gz and
+ # away you go.
+ version('7u80-b0', '6152f8a7561acf795ca4701daa10a965')
+
+ provides('java@8', when='@8u0:8u999')
+ provides('java@7', when='@7u0:7u999')
+
+ def url_for_version(self, version):
+ url = "http://download.oracle.com/otn-pub/java/jdk/{0}/jdk-{1}-linux-x64.tar.gz"
+ version = str(version)
+ minor_version = version[:version.index('-')]
+ return url.format(version, minor_version)
def install(self, spec, prefix):
distutils.dir_util.copy_tree(".", prefix)
diff --git a/var/spack/repos/builtin/packages/jellyfish/package.py b/var/spack/repos/builtin/packages/jellyfish/package.py
new file mode 100644
index 0000000000..e6d65838a1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/jellyfish/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Jellyfish(AutotoolsPackage):
+ """JELLYFISH is a tool for fast, memory-efficient counting of k-mers in
+ DNA."""
+
+ homepage = "http://www.cbcb.umd.edu/software/jellyfish/"
+ url = "http://www.cbcb.umd.edu/software/jellyfish/jellyfish-1.1.11.tar.gz"
+
+ version('1.1.11', 'dc994ea8b0896156500ea8c648f24846')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('python', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/jemalloc/package.py b/var/spack/repos/builtin/packages/jemalloc/package.py
index 839251f47b..0534c72ed5 100644
--- a/var/spack/repos/builtin/packages/jemalloc/package.py
+++ b/var/spack/repos/builtin/packages/jemalloc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,8 @@ class Jemalloc(Package):
homepage = "http://www.canonware.com/jemalloc/"
url = "https://github.com/jemalloc/jemalloc/releases/download/4.0.4/jemalloc-4.0.4.tar.bz2"
+ version('4.5.0', 'a5624318fbf5bf653697306642683a11')
+ version('4.4.0', '81b59778e19696d99e2f7922820671b0')
version('4.3.1', 'f204c0ea1aef92fbb339dc640de338a6')
version('4.2.1', '094b0a7b8c77c464d0dc8f0643fd3901')
version('4.2.0', 'e6b5d5a1ea93a04207528d274efdd144')
diff --git a/var/spack/repos/builtin/packages/jmol/package.py b/var/spack/repos/builtin/packages/jmol/package.py
new file mode 100644
index 0000000000..0688d63816
--- /dev/null
+++ b/var/spack/repos/builtin/packages/jmol/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class Jmol(Package):
+ """Jmol: an open-source Java viewer for chemical structures in 3D
+ with features for chemicals, crystals, materials and biomolecules."""
+
+ homepage = "http://jmol.sourceforge.net/"
+ url = "https://sourceforge.net/projects/jmol/files/Jmol/Version%2014.8/Jmol%2014.8.0/Jmol-14.8.0-binary.tar.gz"
+
+ version('14.8.0', '3c9f4004b9e617ea3ea0b78ab32397ea')
+
+ depends_on('java', type='run')
+
+ def install(self, spec, prefix):
+ copy_tree('jmol-{0}'.format(self.version), prefix)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', self.prefix)
+ run_env.set('JMOL_HOME', self.prefix)
diff --git a/var/spack/repos/builtin/packages/jq/package.py b/var/spack/repos/builtin/packages/jq/package.py
new file mode 100644
index 0000000000..1d7d912a91
--- /dev/null
+++ b/var/spack/repos/builtin/packages/jq/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Jq(AutotoolsPackage):
+ """jq is a lightweight and flexible command-line JSON processor."""
+
+ homepage = "https://stedolan.github.io/jq/"
+ url = "https://github.com/stedolan/jq/archive/jq-1.5.tar.gz"
+
+ version('1.5', 'c8070bd6ec275404f77db3d2e568c9a3')
+
+ depends_on('oniguruma')
+ depends_on('bison@3.0:', type='build')
diff --git a/var/spack/repos/builtin/packages/libjson-c/package.py b/var/spack/repos/builtin/packages/json-c/package.py
index 561c8ab71f..5076650d69 100644
--- a/var/spack/repos/builtin/packages/libjson-c/package.py
+++ b/var/spack/repos/builtin/packages/json-c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,14 @@
from spack import *
-class LibjsonC(AutotoolsPackage):
- """ A JSON implementation in C """
+class JsonC(AutotoolsPackage):
+ """A JSON implementation in C."""
homepage = "https://github.com/json-c/json-c/wiki"
- url = "https://s3.amazonaws.com/json-c_releases/releases/json-c-0.11.tar.gz"
+ url = "https://s3.amazonaws.com/json-c_releases/releases/json-c-0.12.1.tar.gz"
- parallel = False
+ version('0.12.1', '55f7853f7d8cf664554ce3fa71bf1c7d')
+ version('0.11', 'aa02367d2f7a830bf1e3376f77881e98')
+
+ depends_on('autoconf', type='build')
- version('0.11', 'aa02367d2f7a830bf1e3376f77881e98')
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/json-cwx/package.py b/var/spack/repos/builtin/packages/json-cwx/package.py
new file mode 100644
index 0000000000..bd331acb03
--- /dev/null
+++ b/var/spack/repos/builtin/packages/json-cwx/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class JsonCwx(AutotoolsPackage):
+ """JSON-C with Extensions"""
+
+ homepage = "https://github.com/LLNL/json-cwx"
+ url = "https://github.com/LLNL/json-cwx/archive/0.12.tar.gz"
+
+ version('0.12', '8ba44ef7f463f004b4b14c6d8d85a2b70db977a4')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ parallel = False
+
+ configure_directory = 'json-cwx'
+
+ def autoreconf(self, spec, prefix):
+ with working_dir('json-cwx'):
+ autogen = Executable("./autogen.sh")
+ autogen()
diff --git a/var/spack/repos/builtin/packages/jsoncpp/package.py b/var/spack/repos/builtin/packages/jsoncpp/package.py
index 5169b338ee..3b486bf356 100644
--- a/var/spack/repos/builtin/packages/jsoncpp/package.py
+++ b/var/spack/repos/builtin/packages/jsoncpp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Jsoncpp(Package):
+class Jsoncpp(CMakePackage):
"""JsonCpp is a C++ library that allows manipulating JSON values,
including serialization and deserialization to and from strings.
It can also preserve existing comment in unserialization/serialization
@@ -36,14 +36,14 @@ class Jsoncpp(Package):
version('1.7.3', 'aff6bfb5b81d9a28785429faa45839c5')
- depends_on('cmake', type='build')
- # depends_on('python', type='test')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo',
+ 'MinSizeRel', 'Coverage'))
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', '-DBUILD_SHARED_LIBS=ON', *std_cmake_args)
+ depends_on('cmake@3.1:', type='build')
+ # TODO: Add a 'test' deptype
+ # depends_on('python', type='test')
- make()
- if self.run_tests:
- make('test') # Python needed to run tests
- make('install')
+ def cmake_args(self):
+ return ['-DBUILD_SHARED_LIBS=ON']
diff --git a/var/spack/repos/builtin/packages/judy/package.py b/var/spack/repos/builtin/packages/judy/package.py
index 8b8b261e53..87b061bd33 100644
--- a/var/spack/repos/builtin/packages/judy/package.py
+++ b/var/spack/repos/builtin/packages/judy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,11 @@
from spack import *
-class Judy(Package):
+class Judy(AutotoolsPackage):
"""Judy: General-purpose dynamic array, associative array and hash-trie."""
homepage = "http://judy.sourceforge.net/"
url = "http://downloads.sourceforge.net/project/judy/judy/Judy-1.0.5/Judy-1.0.5.tar.gz"
version('1.0.5', '115a0d26302676e962ae2f70ec484a54')
- parallel = False
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make("install")
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/julia/package.py b/var/spack/repos/builtin/packages/julia/package.py
index 89db570b81..fa6aaf3f95 100644
--- a/var/spack/repos/builtin/packages/julia/package.py
+++ b/var/spack/repos/builtin/packages/julia/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,9 @@ class Julia(Package):
git='https://github.com/JuliaLang/julia.git', branch='master')
version('release-0.5',
git='https://github.com/JuliaLang/julia.git', branch='release-0.5')
- version('0.5.0', 'b61385671ba74767ab452363c43131fb', preferred=True)
+ version('0.5.2', '8c3fff150a6f96cf0536fb3b4eaa5cbb', preferred=True)
+ version('0.5.1', 'bce119b98f274e0f07ce01498c463ad5')
+ version('0.5.0', 'b61385671ba74767ab452363c43131fb')
version('release-0.4',
git='https://github.com/JuliaLang/julia.git', branch='release-0.4')
version('0.4.7', '75a7a7dd882b7840829d8f165e9b9078')
@@ -53,6 +55,7 @@ class Julia(Package):
description="Install Julia plotting packages")
variant("python", default=False,
description="Install Julia Python package")
+ variant("simd", default=False, description="Install Julia SIMD package")
patch('gc.patch', when='@0.4:0.4.5')
patch('openblas.patch', when='@0.4:0.4.5')
@@ -73,7 +76,7 @@ class Julia(Package):
depends_on("git", when='@:0.4')
depends_on("git", when='@release-0.4')
depends_on("openssl")
- depends_on("python @2.7:2.999")
+ depends_on("python@2.7:2.8")
# Run-time dependencies:
# depends_on("arpack")
@@ -148,8 +151,10 @@ class Julia(Package):
make("install")
# Julia's package manager needs a certificate
+ cacert_dir = join_path(prefix, "etc", "curl")
+ mkdirp(cacert_dir)
+ cacert_file = join_path(cacert_dir, "cacert.pem")
curl = which("curl")
- cacert_file = join_path(prefix, "etc", "curl", "cacert.pem")
curl("--create-dirs",
"--output", cacert_file,
"https://curl.haxx.se/ca/cacert.pem")
@@ -181,7 +186,7 @@ class Julia(Package):
juliarc.write('\n')
# Install some commonly used packages
- julia = Executable(join_path(prefix.bin, "julia"))
+ julia = spec['julia'].command
julia("-e", 'Pkg.init(); Pkg.update()')
# Install HDF5
@@ -212,7 +217,7 @@ class Julia(Package):
with open(join_path(prefix, "etc", "julia", "juliarc.jl"),
"a") as juliarc:
juliarc.write('# Python\n')
- juliarc.write('ENV["PYTHON"] = "%s"\n' % spec["python"].prefix)
+ juliarc.write('ENV["PYTHON"] = "%s"\n' % spec["python"].home)
juliarc.write('\n')
# Python's OpenSSL package installer complains:
# Error: PREFIX too long: 166 characters, but only 128 allowed
@@ -233,4 +238,8 @@ unicodeplots()
plot(x->sin(x)*cos(x), linspace(0, 2pi))
""")
+ # Install SIMD
+ if "+simd" in spec:
+ julia("-e", 'Pkg.add("SIMD"); using SIMD')
+
julia("-e", 'Pkg.status()')
diff --git a/var/spack/repos/builtin/packages/kahip/package.py b/var/spack/repos/builtin/packages/kahip/package.py
new file mode 100644
index 0000000000..30565a5180
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kahip/package.py
@@ -0,0 +1,88 @@
+##############################################################################
+# Copyright (c) 2017 Christian Schulz
+# Karlsruhe Institute of Technology (KIT), Karlsruhe, Germany
+#
+# This file is released as part of Spack under the LGPL license
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE file for the LLNL notice and LGPL.
+#
+# License
+# -------
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+import os
+import re
+
+
+class Kahip(SConsPackage):
+ """KaHIP - Karlsruhe High Quality Partitioning - is a family of graph
+ partitioning programs. It includes KaFFPa (Karlsruhe Fast Flow
+ Partitioner), which is a multilevel graph partitioning algorithm,
+ in its variants Strong, Eco and Fast, KaFFPaE (KaFFPaEvolutionary)
+ which is a parallel evolutionary algorithm that uses KaFFPa to
+ provide combine and mutation operations, as well as KaBaPE which
+ extends the evolutionary algorithm. Moreover, specialized
+ techniques are included to partition road networks (Buffoon), to
+ output a vertex separator from a given partition or techniques
+ geared towards efficient partitioning of social networks.
+ """
+
+ homepage = 'http://algo2.iti.kit.edu/documents/kahip/index.html'
+ url = 'http://algo2.iti.kit.edu/schulz/software_releases/KaHIP_2.00.tar.gz'
+
+ version('develop', git='https://github.com/schulzchristian/KaHIP.git')
+ version('2.00', '0a66b0a604ad72cfb7e3dce00e2c9fdfac82b855')
+
+ depends_on('argtable')
+ depends_on('mpi') # Note: upstream package only tested on openmpi
+
+ conflicts('%clang')
+
+ def patch(self):
+ """Internal compile.sh scripts hardcode number of cores to build with.
+ Filter these out so Spack can control it."""
+
+ files = [
+ 'compile.sh',
+ 'parallel/modified_kahip/compile.sh',
+ 'parallel/parallel_src/compile.sh',
+ ]
+
+ for f in files:
+ filter_file('NCORES=.*', 'NCORES={0}'.format(make_jobs), f)
+
+ def build(self, spec, prefix):
+ """Build using the KaHIP compile.sh script. Uses scons internally."""
+ builder = Executable('./compile.sh')
+ builder()
+
+ def install(self, spec, prefix):
+ """Install under the prefix"""
+ # Ugly: all files land under 'deploy' and we need to disentangle them
+ mkdirp(prefix.bin)
+ mkdirp(prefix.include)
+ mkdirp(prefix.lib)
+
+ with working_dir('deploy'):
+ for f in os.listdir('.'):
+ if re.match(r'.*\.(a|so|dylib)$', f):
+ install(f, prefix.lib)
+ elif re.match(r'.*\.h$', f):
+ install(f, prefix.include)
+ else:
+ install(f, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/kaks-calculator/package.py b/var/spack/repos/builtin/packages/kaks-calculator/package.py
new file mode 100644
index 0000000000..622e499e7f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kaks-calculator/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class KaksCalculator(MakefilePackage):
+ """KaKs_Calculator adopts model selection and model averaging to calculate
+ nonsynonymous (Ka) and synonymous (Ks) substitution rates, attempting to
+ include as many features as needed for accurately capturing evolutionary
+ information in protein-coding sequences."""
+
+ homepage = "https://sourceforge.net/projects/kakscalculator2"
+ url = "https://downloads.sourceforge.net/project/kakscalculator2/KaKs_Calculator2.0.tar.gz"
+
+ version('2.0', '956ec7bdb30fac7da3b5b2563151a85e')
+
+ build_directory = 'src'
+
+ def url_for_version(self, version):
+ url = 'https://downloads.sourceforge.net/project/kakscalculator2/KaKs_Calculator{0}.tar.gz'
+ return url.format(version)
+
+ # include<string.h> needs added to header file for compilation to work
+ def patch(self):
+ with working_dir(self.build_directory):
+ header = FileFilter('base.h')
+ header.filter('#include<time.h>',
+ '#include<time.h>\n#include<string.h>')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir(self.build_directory):
+ install('KaKs_Calculator', prefix.bin)
+ install('ConPairs', prefix.bin)
+ install('AXTConvertor', prefix.bin)
+ install_tree('doc', prefix.doc)
+ install_tree('examples', prefix.examples)
diff --git a/var/spack/repos/builtin/packages/kaldi/openfst-1.4.1.patch b/var/spack/repos/builtin/packages/kaldi/openfst-1.4.1.patch
new file mode 100644
index 0000000000..62e0c7544b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kaldi/openfst-1.4.1.patch
@@ -0,0 +1,45 @@
+From ef1c38844fd4c40304176f4e672189010805a3d9 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Thu, 13 Apr 2017 15:17:12 +0800
+Subject: [PATCH 1/1] Add a patched openfst@1.4.1-patch for Kaldi.
+
+---
+ src/configure | 4 ++--
+ tools/Makefile | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/configure b/src/configure
+index c90e9ba4e..ff328772c 100755
+--- a/src/configure
++++ b/src/configure
+@@ -793,9 +793,9 @@ echo "CONFIGURE_VERSION := $CONFIGURE_VERSION" >> kaldi.mk
+ echo "FSTROOT = $FSTROOT" >> kaldi.mk
+
+ # Check installed OpenFst version and add C++11 flags if OpenFst >= 1.4
+-OPENFST_VER=`grep 'PACKAGE_VERSION' $FSTROOT/Makefile | sed -e 's:.*= ::'`
++OPENFST_VER=1.4.1
+ echo "OPENFST_VER = $OPENFST_VER" >> kaldi.mk
+-OPENFST_VER_NUM=`echo $OPENFST_VER | sed 's/\./ /g' | xargs printf "%d%02d%02d"`
++OPENFST_VER_NUM=104001
+ if [ $OPENFST_VER_NUM -ge 10400 ]; then
+ echo "OPENFST_GE_10400 = 1" >> kaldi.mk
+ echo "EXTRA_CXXFLAGS += -DHAVE_OPENFST_GE_10400 -std=c++0x" >> kaldi.mk
+diff --git a/tools/Makefile b/tools/Makefile
+index cb3a35b2a..b868e600a 100644
+--- a/tools/Makefile
++++ b/tools/Makefile
+@@ -3,9 +3,9 @@
+ CXX = g++
+ # CXX = clang++ # Uncomment this line to build with Clang.
+
+-OPENFST_VERSION = 1.3.4
++# OPENFST_VERSION = 1.3.4
+ # Uncomment the next line to build with OpenFst-1.4.1.
+-# OPENFST_VERSION = 1.4.1
++OPENFST_VERSION = 1.4.1
+ # Note: OpenFst >= 1.4 requires C++11 support, hence you will need to use a
+ # relatively recent C++ compiler, e.g. gcc >= 4.6, clang >= 3.0.
+
+--
+2.11.1
+
diff --git a/var/spack/repos/builtin/packages/kaldi/package.py b/var/spack/repos/builtin/packages/kaldi/package.py
new file mode 100644
index 0000000000..bb2481d879
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kaldi/package.py
@@ -0,0 +1,112 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+from os.path import join
+from fnmatch import fnmatch
+import os
+
+
+class Kaldi(Package): # Does not use Autotools
+ """Kaldi is a toolkit for speech recognition written
+ in C++ and licensed under the Apache License v2.0.
+ Kaldi is intended for use by speech recognition researchers."""
+
+ homepage = "https://github.com/kaldi-asr/kaldi"
+ url = "https://github.com/kaldi-asr/kaldi/archive/master.zip"
+
+ version('master', git='https://github.com/kaldi-asr/kaldi.git')
+ version('c024e8', git='https://github.com/kaldi-asr/kaldi.git',
+ commit='c024e8aa0a727bf76c91a318f76a1f8b0b59249e')
+
+ variant('shared', default=True,
+ description='build shared libraries')
+ variant('double', default=False,
+ description='build with double precision floats')
+ variant('cuda', default=False,
+ description='build with CUDA')
+
+ depends_on('blas')
+ depends_on('cuda', when='+cuda')
+ depends_on('sph2pipe', type='run')
+ depends_on('sctk', type='run')
+ depends_on('speex', type='run')
+ depends_on('openfst@1.4.1-patch', when='@c024e8')
+ depends_on('openfst')
+
+ patch('openfst-1.4.1.patch', when='@c024e8')
+
+ def install(self, spec, prefix):
+ configure_args = ['--fst-root=' + spec['openfst'].prefix]
+
+ if spec.satisfies('c024e8'):
+ configure_args.append('--speex-root=' + spec['speex'].prefix)
+ configure_args.append('--fst-version=' +
+ str(spec['openfst'].version))
+
+ if '~shared' in spec:
+ configure_args.append('--static')
+ else:
+ configure_args.append('--shared')
+
+ if '^openblas' in spec:
+ configure_args.append('--mathlib=OPENBLAS')
+ configure_args.append('--openblas-root=' + spec['blas'].prefix)
+ if '+openmp' in spec['blas'].variants:
+ configure_args.append('--threaded-math=yes')
+ elif '^atlas' in spec:
+ configure_args.append('--mathlib=ATLAS')
+ configure_args.append('--atlas-root=' + spec['blas'].prefix)
+ if '+pthread' in spec['blas'].variants:
+ configure_args.append('--threaded-atlas')
+ elif '^intel-parallel-studio' in spec or '^intel-mkl' in spec:
+ configure_args.append('--mathlib=MKL')
+ configure_args.append('--mkl-root=' + spec['blas'].prefix)
+ if '+openmp' in spec['blas'].variants:
+ configure_args.append('--mkl-threading=iomp')
+
+ if '+cuda' in spec:
+ configure_args.append('--use-cuda=yes')
+ configure_args.append('--cudatk-dir=' + spec['cuda'].prefix)
+
+ with working_dir("src"):
+ configure(*configure_args)
+ make()
+
+ mkdirp(prefix.bin)
+ for root, dirs, files in os.walk('bin'):
+ for name in files:
+ if os.access(join(root, name), os.X_OK):
+ install(join(root, name), prefix.bin)
+
+ mkdir(prefix.lib)
+ copy_tree('lib', prefix.lib)
+
+ for root, dirs, files in os.walk('.'):
+ for name in files:
+ if fnmatch(name, '*.h'):
+ mkdirp(join(prefix.include, root.strip("./")))
+ install(join(root, name),
+ join(prefix.include, root.strip("./")))
diff --git a/var/spack/repos/builtin/packages/kallisto/package.py b/var/spack/repos/builtin/packages/kallisto/package.py
new file mode 100644
index 0000000000..1d0cb35a18
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kallisto/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Kallisto(CMakePackage):
+ """kallisto is a program for quantifying abundances of transcripts from
+ RNA-Seq data."""
+
+ homepage = "http://pachterlab.github.io/kallisto"
+ url = "https://github.com/pachterlab/kallisto/archive/v0.43.1.tar.gz"
+
+ version('0.43.1', '54fc9b70ca44e4633f02c962cbc59737')
+
+ depends_on('zlib')
+ depends_on('hdf5')
+ depends_on('mpich')
diff --git a/var/spack/repos/builtin/packages/kbproto/package.py b/var/spack/repos/builtin/packages/kbproto/package.py
index 356d1c6b4f..fa210e9101 100644
--- a/var/spack/repos/builtin/packages/kbproto/package.py
+++ b/var/spack/repos/builtin/packages/kbproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Kbproto(Package):
+class Kbproto(AutotoolsPackage):
"""X Keyboard Extension.
This extension defines a protcol to provide a number of new capabilities
@@ -38,8 +38,3 @@ class Kbproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/kdiff3/package.py b/var/spack/repos/builtin/packages/kdiff3/package.py
index 48f4b9c379..4d60416497 100644
--- a/var/spack/repos/builtin/packages/kdiff3/package.py
+++ b/var/spack/repos/builtin/packages/kdiff3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/kealib/package.py b/var/spack/repos/builtin/packages/kealib/package.py
index 5346fc8cb9..3b24a08393 100644
--- a/var/spack/repos/builtin/packages/kealib/package.py
+++ b/var/spack/repos/builtin/packages/kealib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Kealib(Package):
+class Kealib(CMakePackage):
"""An HDF5 Based Raster File Format
KEALib provides an implementation of the GDAL data model.
@@ -46,16 +46,13 @@ class Kealib(Package):
version('1.4.5', '112e9c42d980b2d2987a3c15d0833a5d')
- depends_on("hdf5")
+ depends_on('hdf5')
+ depends_on('cmake@2.8.10:', type='build')
- def install(self, spec, prefix):
- with working_dir('trunk', create=False):
- cmake_args = []
- cmake_args.append("-DCMAKE_INSTALL_PREFIX=%s" % prefix)
- cmake_args.append("-DHDF5_INCLUDE_DIR=%s" %
- spec['hdf5'].prefix.include)
- cmake_args.append("-DHDF5_LIB_PATH=%s" % spec['hdf5'].prefix.lib)
- cmake('.', *cmake_args)
+ root_cmakelists_dir = 'trunk'
- make()
- make("install")
+ def cmake_args(self):
+ return [
+ '-DHDF5_INCLUDE_DIR=%s' % self.spec['hdf5'].prefix.include,
+ '-DHDF5_LIB_PATH=%s' % self.spec['hdf5'].prefix.lib,
+ ]
diff --git a/var/spack/repos/builtin/packages/kentutils/package.py b/var/spack/repos/builtin/packages/kentutils/package.py
new file mode 100644
index 0000000000..3fdd495a17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kentutils/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Kentutils(MakefilePackage):
+ """Jim Kent command line bioinformatic utilities"""
+
+ homepage = "https://github.com/ENCODE-DCC/kentUtils"
+ url = "https://github.com/ENCODE-DCC/kentUtils"
+
+ version('302.1', git='https://github.com/ENCODE-DCC/kentUtils.git', commit='d8376c5d52a161f2267346ed3dc94b5dce74c2f9')
+
+ depends_on('libpng')
+ depends_on('openssl')
+
+ # Actually depends on mysql, but mariadb works for now until mysql is
+ # available
+ depends_on('mariadb')
+
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/kmergenie/package.py b/var/spack/repos/builtin/packages/kmergenie/package.py
new file mode 100644
index 0000000000..7f64892d70
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kmergenie/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Kmergenie(MakefilePackage):
+ """KmerGenie estimates the best k-mer length for genome de novo assembly.
+ """
+
+ homepage = "http://kmergenie.bx.psu.edu/"
+ url = "http://kmergenie.bx.psu.edu/kmergenie-1.7044.tar.gz"
+
+ version('1.7044', '407209c8181f1631ecb79b0ca735d18f')
+
+ depends_on('python', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('r', type=('build', 'run'))
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/kokkos/package.py b/var/spack/repos/builtin/packages/kokkos/package.py
new file mode 100644
index 0000000000..e1ebf79eca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kokkos/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Kokkos(Package):
+ """Kokkos implements a programming model in C++ for writing performance
+ portable applications targeting all major HPC platforms."""
+
+ homepage = "https://github.com/kokkos/kokkos"
+ url = "https://github.com/kokkos/kokkos/archive/2.03.00.tar.gz"
+
+ version('2.03.00', 'f205d659d4304747759fabfba32d43c3')
+
+ variant('qthreads', default=False, description="enable Qthreads backend")
+ variant('cuda', default=False, description="enable Cuda backend")
+
+ depends_on('hwloc')
+ depends_on('qthreads', when='+qthreads')
+ depends_on('cuda', when='+cuda')
+
+ def install(self, spec, prefix):
+ generate = which(join_path(self.stage.source_path,
+ 'generate_makefile.bash'))
+ with working_dir('build', create=True):
+ g_args = [
+ '--prefix=%s' % prefix,
+ '--with-hwloc=%s' % spec['hwloc'].prefix,
+ '--with-serial',
+ '--with-openmp',
+ ]
+ if 'qthreads' in spec:
+ g_args.append('--with-qthreads=%s' % spec['qthreads'].prefix)
+ if 'cuda' in spec:
+ g_args.append('--with-cuda=%s' % spec['cuda'].prefix)
+
+ generate(*g_args)
+ make()
+ make('install')
diff --git a/var/spack/repos/builtin/packages/kraken/package.py b/var/spack/repos/builtin/packages/kraken/package.py
new file mode 100644
index 0000000000..3994c8c138
--- /dev/null
+++ b/var/spack/repos/builtin/packages/kraken/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+import os
+
+
+class Kraken(Package):
+ """Kraken is a system for assigning taxonomic labels to short DNA
+ sequences, usually obtained through metagenomic studies."""
+
+ homepage = "https://ccb.jhu.edu/software/kraken/"
+ url = "https://github.com/DerrickWood/kraken/archive/v1.0.tar.gz"
+
+ version('1.0', 'e790d6b09662bbd810aa34517ef66586')
+
+ depends_on('perl', type=('build', 'run'))
+ # Does NOT support JELLYFISH 2.0. Ver 1.1.11 is the last version of
+ # JELLYFISH 1.
+ depends_on('jellyfish@1.1.11', when='@1.0')
+
+ def install(self, spec, prefix):
+ installer = Executable('./install_kraken.sh')
+ installer(self.stage.source_path)
+ mkdirp(prefix.bin)
+ files = glob.iglob('*')
+ for file in files:
+ if os.path.isfile(file):
+ install(file, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/krims/package.py b/var/spack/repos/builtin/packages/krims/package.py
new file mode 100644
index 0000000000..f64092de6c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/krims/package.py
@@ -0,0 +1,86 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Krims(CMakePackage):
+ """The bucket of Krimskrams every C or C++ project needs"""
+
+ homepage = "http://lazyten.org/krims"
+ url = "https://github.com/lazyten/krims/archive/v0.2.1.tar.gz"
+ maintainers = ['mfherbst']
+
+ #
+ # Versions
+ #
+ version("0.2.1", "bf219656fd81c342a4782bad7d7beed0")
+ version("develop", git="https://github.com/lazyten/krims.git",
+ branch="master")
+
+ #
+ # Variants
+ #
+ # Library build type
+ variant("build_type", default="DebugRelease",
+ description="The build type to build",
+ values=("Debug", "Release", "DebugRelease"))
+ variant("shared", default=True,
+ description="Build shared libraries (else the static one)")
+
+ # Components
+ variant("examples", default=False,
+ description="Compile examples")
+
+ #
+ # Conflicts
+ #
+ # Only builds on clang > 3.5 and gcc > 4.8
+ conflicts("%intel", msg="krims only builds with gcc and clang")
+ conflicts("%gcc@:4.8")
+ conflicts("%clang@:3.5")
+
+ #
+ # Dependencies
+ #
+ depends_on("cmake@3:", type="build")
+
+ #
+ # Settings and cmake cache
+ #
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ "-DAUTOCHECKOUT_MISSING_REPOS=OFF",
+ #
+ "-DBUILD_SHARED_LIBS=" + str("+shared" in spec),
+ "-DDRB_MACHINE_SPECIFIC_OPTIM_Release=ON", # Adds -march=native
+ #
+ # TODO Hard-disable tests for now, since rapidcheck not in Spack
+ "-DKRIMS_ENABLE_TESTS=OFF",
+ "-DKRIMS_ENABLE_EXAMPLES=" + str("+examples" in spec),
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/kripke/package.py b/var/spack/repos/builtin/packages/kripke/package.py
index cf8d2b7e39..d2030cbcfe 100644
--- a/var/spack/repos/builtin/packages/kripke/package.py
+++ b/var/spack/repos/builtin/packages/kripke/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,33 +25,33 @@
from spack import *
-class Kripke(Package):
+class Kripke(CMakePackage):
"""Kripke is a simple, scalable, 3D Sn deterministic particle
transport proxy/mini app.
"""
homepage = "https://codesign.llnl.gov/kripke.php"
url = "https://codesign.llnl.gov/downloads/kripke-openmp-1.1.tar.gz"
+ tags = ['proxy-app']
version('1.1', '7fe6f2b26ed983a6ce5495ab701f85bf')
variant('mpi', default=True, description='Build with MPI.')
variant('openmp', default=True, description='Build with OpenMP enabled.')
- depends_on('mpi', when="+mpi")
+ depends_on('mpi', when='+mpi')
+ depends_on('cmake@3.0:', type='build')
+
+ def cmake_args(self):
+ def enabled(variant):
+ return (1 if variant in self.spec else 0)
+
+ return [
+ '-DENABLE_OPENMP=%d' % enabled('+openmp'),
+ '-DENABLE_MPI=%d' % enabled('+mpi'),
+ ]
def install(self, spec, prefix):
- with working_dir('build', create=True):
- def enabled(variant):
- return (1 if variant in spec else 0)
-
- cmake('-DCMAKE_INSTALL_PREFIX:PATH=.',
- '-DENABLE_OPENMP=%d' % enabled('+openmp'),
- '-DENABLE_MPI=%d' % enabled('+mpi'),
- '..',
- *std_cmake_args)
- make()
-
- # Kripke does not provide install target, so we have to copy
- # things into place.
- mkdirp(prefix.bin)
- install('kripke', prefix.bin)
+ # Kripke does not provide install target, so we have to copy
+ # things into place.
+ mkdirp(prefix.bin)
+ install('spack-build/kripke', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/laghos/package.py b/var/spack/repos/builtin/packages/laghos/package.py
new file mode 100644
index 0000000000..0e889782e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/laghos/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Laghos(MakefilePackage):
+ """Laghos (LAGrangian High-Order Solver) is a CEED miniapp that solves the
+ time-dependent Euler equations of compressible gas dynamics in a moving
+ Lagrangian frame using unstructured high-order finite element spatial
+ discretization and explicit high-order time-stepping.
+ """
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "https://codesign.llnl.gov/laghos.php"
+ git = "https://github.com/CEED/Laghos"
+ url = "https://github.com/CEED/Laghos/archive/v1.0.tar.gz"
+
+ version('1.0', '107c2f693936723e764a4d404d33d44a')
+ version('develop', git=git, branch='master')
+
+ depends_on('mpi')
+ depends_on('mfem@laghos-v1.0', when='@1.0')
+
+ @property
+ def build_targets(self):
+ targets = []
+ spec = self.spec
+
+ targets.append('MFEM_DIR=%s' % spec['mfem'].prefix)
+ targets.append('CONFIG_MK=%s' % join_path(spec['mfem'].prefix,
+ 'share/mfem/config.mk'))
+ targets.append('TEST_MK=%s' % join_path(spec['mfem'].prefix,
+ 'share/mfem/test.mk'))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('laghos', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/lammps/660.patch b/var/spack/repos/builtin/packages/lammps/660.patch
new file mode 100644
index 0000000000..9d1d11aff4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lammps/660.patch
@@ -0,0 +1,24 @@
+From b46cc6a6a7410108af84a854818c154a17e0ef42 Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <junghans@lanl.gov>
+Date: Fri, 22 Sep 2017 15:17:44 -0600
+Subject: [PATCH] cmake: fix build with system cmake
+
+---
+ cmake/CMakeLists.txt | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
+index bc33da60de..666b77ae3d 100644
+--- a/cmake/CMakeLists.txt
++++ b/cmake/CMakeLists.txt
+@@ -665,7 +665,9 @@ include_directories(${LAMMPS_STYLE_HEADERS_DIR})
+ ############################################
+ add_library(lammps ${LIB_SOURCES})
+ target_link_libraries(lammps ${LAMMPS_LINK_LIBS})
+-add_dependencies(lammps ${LAMMPS_DEPS})
++if(LAMMPS_DEPS)
++ add_dependencies(lammps ${LAMMPS_DEPS})
++endif()
+ set_target_properties(lammps PROPERTIES OUTPUT_NAME lammps${LAMMPS_MACHINE})
+ if(BUILD_SHARED_LIBS)
+ set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
diff --git a/var/spack/repos/builtin/packages/lammps/Makefile.inc b/var/spack/repos/builtin/packages/lammps/Makefile.inc
new file mode 100644
index 0000000000..6986a255b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lammps/Makefile.inc
@@ -0,0 +1,49 @@
+SHELL = /bin/sh
+
+# ---------------------------------------------------------------------
+# build rules and dependencies
+# do not edit this section
+
+include Makefile.package.settings
+include Makefile.package
+
+EXTRA_INC = $(LMP_INC) $(PKG_INC) $(MPI_INC) $(FFT_INC) $(JPG_INC) $(PKG_SYSINC)
+EXTRA_PATH = $(PKG_PATH) $(MPI_PATH) $(FFT_PATH) $(JPG_PATH) $(PKG_SYSPATH)
+EXTRA_LIB = $(PKG_LIB) $(MPI_LIB) $(FFT_LIB) $(JPG_LIB) $(PKG_SYSLIB)
+EXTRA_CPP_DEPENDS = $(PKG_CPP_DEPENDS)
+EXTRA_LINK_DEPENDS = $(PKG_LINK_DEPENDS)
+
+# Path to src files
+
+vpath %.cpp ..
+vpath %.h ..
+
+# Link target
+
+$(EXE): $(OBJ) $(EXTRA_LINK_DEPENDS)
+ $(LINK) $(LINKFLAGS) $(EXTRA_PATH) $(OBJ) $(EXTRA_LIB) $(LIB) -o $(EXE)
+ $(SIZE) $(EXE)
+
+# Library targets
+
+lib: $(OBJ) $(EXTRA_LINK_DEPENDS)
+ $(ARCHIVE) $(ARFLAGS) $(EXE) $(OBJ)
+
+shlib: $(OBJ) $(EXTRA_LINK_DEPENDS)
+ $(CC) $(CCFLAGS) $(SHFLAGS) $(SHLIBFLAGS) $(EXTRA_PATH) -o $(EXE) \
+ $(OBJ) $(EXTRA_LIB) $(LIB)
+
+# Compilation rules
+
+%.o:%.cpp
+ $(CC) $(CCFLAGS) $(SHFLAGS) $(EXTRA_INC) -c $<
+
+# Individual dependencies
+
+depend : fastdep.exe $(SRC)
+ @./fastdep.exe $(EXTRA_INC) -- $^ > .depend || exit 1
+
+fastdep.exe: ../DEPEND/fastdep.c
+ cc -O -o $@ $<
+
+sinclude .depend
diff --git a/var/spack/repos/builtin/packages/lammps/lib.patch b/var/spack/repos/builtin/packages/lammps/lib.patch
new file mode 100644
index 0000000000..5a55aafaae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lammps/lib.patch
@@ -0,0 +1,13 @@
+diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
+index 6d35db75a..5987869b8 100644
+--- a/cmake/CMakeLists.txt
++++ b/cmake/CMakeLists.txt
+@@ -530,7 +530,7 @@ target_link_libraries(lammps ${LAMMPS_LINK_LIBS})
+ set_target_properties(lammps PROPERTIES SOVERSION ${SOVERSION})
+ if(INSTALL_LIB)
+ install(TARGETS lammps LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+- install(FILES ${LAMMPS_SOURCE_DIR}/lammps.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
++ install(FILES ${LAMMPS_SOURCE_DIR}/library.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/lammps)
+ elseif(BUILD_SHARED_LIBS)
+ message(FATAL_ERROR "Shared library has to be installed, use -DINSTALL_LIB=ON to install lammps with a library")
+ endif()
diff --git a/var/spack/repos/builtin/packages/lammps/package.py b/var/spack/repos/builtin/packages/lammps/package.py
new file mode 100644
index 0000000000..7eeea42773
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lammps/package.py
@@ -0,0 +1,112 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+#
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import datetime as dt
+
+
+class Lammps(CMakePackage):
+ """LAMMPS stands for Large-scale Atomic/Molecular Massively
+ Parallel Simulator. This package uses patch releases, not
+ stable release.
+ See https://github.com/spack/spack/pull/5342 for a detailed
+ discussion.
+ """
+ homepage = "http://lammps.sandia.gov/"
+ url = "https://github.com/lammps/lammps/archive/patch_1Sep2017.tar.gz"
+
+ version('20170922', '4306071f919ec7e759bda195c26cfd9a')
+ version('20170901', '767e7f07289663f033474dfe974974e7')
+ version('develop', git='https://github.com/lammps/lammps', branch='master')
+
+ def url_for_version(self, version):
+ vdate = dt.datetime.strptime(str(version), "%Y%m%d")
+ return "https://github.com/lammps/lammps/archive/patch_{0}.tar.gz".format(
+ vdate.strftime("%d%b%Y").lstrip('0'))
+
+ supported_packages = ['asphere', 'body', 'class2', 'colloid', 'compress',
+ 'coreshell', 'dipole', 'granular', 'kspace', 'latte',
+ 'manybody', 'mc', 'meam', 'misc', 'molecule',
+ 'mpiio', 'peri', 'poems', 'python', 'qeq', 'reax',
+ 'replica', 'rigid', 'shock', 'snap', 'srd',
+ 'user-atc', 'user-h5md', 'user-lb', 'user-misc',
+ 'user-netcdf', 'user-omp', 'voronoi']
+
+ for pkg in supported_packages:
+ variant(pkg, default=False,
+ description='Activate the {0} package'.format(pkg))
+ variant('lib', default=True,
+ description='Build the liblammps in addition to the executable')
+ variant('mpi', default=True,
+ description='Build with mpi')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('mpi', when='+mpiio')
+ depends_on('fftw', when='+kspace')
+ depends_on('voropp', when='+voronoi')
+ depends_on('netcdf+mpi', when='+user-netcdf')
+ depends_on('blas', when='+user-atc')
+ depends_on('lapack', when='+user-atc')
+ depends_on('latte', when='+latte')
+ depends_on('blas', when='+latte')
+ depends_on('lapack', when='+latte')
+ depends_on('python', when='+python')
+ depends_on('mpi', when='+user-lb')
+ depends_on('mpi', when='+user-h5md')
+ depends_on('hdf5', when='+user-h5md')
+
+ conflicts('+body', when='+poems')
+ conflicts('+latte', when='@:20170921')
+ conflicts('+python', when='~lib')
+ conflicts('+qeq', when='~manybody')
+ conflicts('+user-atc', when='~manybody')
+ conflicts('+user-misc', when='~manybody')
+ conflicts('+user-phonon', when='~kspace')
+ conflicts('+user-misc', when='~manybody')
+
+ patch("lib.patch", when="@20170901")
+ patch("660.patch", when="@20170922")
+
+ root_cmakelists_dir = 'cmake'
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DBUILD_SHARED_LIBS={0}'.format(
+ 'ON' if '+lib' in spec else 'OFF'),
+ '-DENABLE_MPI={0}'.format(
+ 'ON' if '+mpi' in spec else 'OFF')
+ ]
+
+ for pkg in self.supported_packages:
+ opt = '-DENABLE_{0}'.format(pkg.upper())
+ if '+{0}'.format(pkg) in spec:
+ args.append('{0}=ON'.format(opt))
+ else:
+ args.append('{0}=OFF'.format(opt))
+ if '+kspace' in spec:
+ args.append('-DFFT=FFTW3')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/last/package.py b/var/spack/repos/builtin/packages/last/package.py
new file mode 100644
index 0000000000..34054313f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/last/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Last(MakefilePackage):
+ """LAST finds similar regions between sequences, and aligns them. It is
+ designed for comparing large datasets to each other (e.g. vertebrate
+ genomes and/or large numbers of DNA reads)."""
+
+ homepage = "http://last.cbrc.jp/"
+ url = "http://last.cbrc.jp/last-869.zip"
+
+ version('869', '12dced14418fb924a1b0604593274973')
+
+ def install(self, spec, prefix):
+ make('install', 'prefix=%s' % prefix)
diff --git a/var/spack/repos/builtin/packages/latte/package.py b/var/spack/repos/builtin/packages/latte/package.py
new file mode 100644
index 0000000000..7e3c9afa61
--- /dev/null
+++ b/var/spack/repos/builtin/packages/latte/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Latte(CMakePackage):
+ """Open source density functional tight binding molecular dynamics."""
+
+ homepage = "https://github.com/lanl/latte"
+ url = "https://github.com/lanl/latte/tarball/v1.0"
+
+ version('develop', git='https://github.com/lanl/latte', branch='master')
+ version('1.0.1', 'd0b99edbcf7a19abe0a68a192d6f6234')
+
+ variant('mpi', default=True,
+ description='Build with mpi')
+ variant('progress', default=False,
+ description='Use progress for fast')
+ variant('shared', default=True, description='Build shared libs')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('mpi', when='+mpi')
+ depends_on('qmd-progress', when='+progress')
+
+ root_cmakelists_dir = 'cmake'
+
+ def cmake_args(self):
+ options = []
+ if '+shared' in self.spec:
+ options.append('-DBUILD_SHARED_LIBS=ON')
+ else:
+ options.append('-DBUILD_SHARED_LIBS=OFF')
+ if '+mpi' in self.spec:
+ options.append('-DO_MPI=yes')
+ if '+progress' in self.spec:
+ options.append('-DPROGRESS=yes')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/launchmon/package.py b/var/spack/repos/builtin/packages/launchmon/package.py
index c2b289da4f..5697a1f370 100644
--- a/var/spack/repos/builtin/packages/launchmon/package.py
+++ b/var/spack/repos/builtin/packages/launchmon/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,6 +38,9 @@ class Launchmon(Package):
depends_on('libtool', type='build')
depends_on('libgcrypt')
depends_on('libgpg-error')
+ depends_on("elf", type='link')
+ depends_on("boost")
+ depends_on("spectrum-mpi", when='arch=ppc64le')
def install(self, spec, prefix):
configure(
diff --git a/var/spack/repos/builtin/packages/lazyten/package.py b/var/spack/repos/builtin/packages/lazyten/package.py
new file mode 100644
index 0000000000..4827b9495e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lazyten/package.py
@@ -0,0 +1,118 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Lazyten(CMakePackage):
+ """Lightweight linear algebra library based on lazy matrices"""
+
+ homepage = "http://lazyten.org"
+ url = "https://github.com/lazyten/lazyten/archive/v0.4.1.tar.gz"
+ maintainers = ['mfherbst']
+
+ #
+ # Versions
+ #
+ version('0.4.1', 'd06f7996144e1bf1b0aee82c2af36e83')
+ version("develop", git="https://github.com/lazyten/lazyten.git",
+ branch="master")
+
+ #
+ # Variants
+ #
+ # Library build type
+ variant("build_type", default="DebugRelease",
+ description="The build type to build",
+ values=("Debug", "Release", "DebugRelease"))
+ variant("shared", default=True,
+ description="Build shared libraries (else the static one)")
+
+ # Features
+ variant("arpack", default=True,
+ description="Build with Arpack support")
+
+ # Components
+ variant("examples", default=False,
+ description="Compile examples")
+
+ #
+ # Conflicts
+ #
+ # Only builds on clang > 3.5 and gcc > 4.8
+ conflicts("%intel", msg="krims only builds with gcc and clang")
+ conflicts("%gcc@:4.8")
+ conflicts("%clang@:3.5")
+
+ #
+ # Dependencies
+ #
+ depends_on("cmake@3:", type="build")
+
+ depends_on("krims@develop", when="@develop")
+ depends_on("krims@0.2.1", when="@0.4.1")
+
+ depends_on("blas")
+ depends_on("lapack")
+ depends_on("armadillo@4:")
+ depends_on("arpack-ng", when="+arpack")
+
+ #
+ # Settings and cmake cache
+ #
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ "-DAUTOCHECKOUT_MISSING_REPOS=OFF",
+ #
+ "-DBUILD_SHARED_LIBS=" + str("+shared" in spec),
+ "-DDRB_MACHINE_SPECIFIC_OPTIM_Release=ON", # Adds -march=native
+ #
+ # TODO Hard-disable tests for now, since rapidcheck not in Spack
+ "-DLAZYTEN_ENABLE_TESTS=OFF",
+ "-DLAZYTEN_ENABLE_EXAMPLES=" + str("+examples" in spec),
+ ]
+
+ # Tell lazyten where to look for the krims cmake config
+ # and targets files
+ krims_modules = os.path.join(spec["krims"].prefix.share, "cmake/krims")
+ args.append("-Dkrims_DIR=" + krims_modules)
+
+ # Add linear algebra backends
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
+ args.extend([
+ "-DARMADILLO_INCLUDE_DIR=" + spec["armadillo"].prefix.include,
+ "-DARMADILLO_LIBRARY=" + ";".join(spec["armadillo"].libs),
+ #
+ "-DLAPACK_FOUND=ON",
+ "-DLAPACK_LIBRARIES=" + ";".join(lapack_blas),
+ ])
+
+ if "+arpack" in spec:
+ args.append("-DARPACK_DIR=" + spec["arpack-ng"].prefix)
+ args.append("-DARPACK_LIBRARY=" + ";".join(spec["arpack-ng"].libs))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/lbann/package.py b/var/spack/repos/builtin/packages/lbann/package.py
new file mode 100644
index 0000000000..5e65566cb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lbann/package.py
@@ -0,0 +1,96 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Lbann(CMakePackage):
+ """LBANN: Livermore Big Artificial Neural Network Toolkit. A distributed
+ memory, HPC-optimized, model and data parallel training toolkit for deep
+ neural networks."""
+
+ homepage = "http://software.llnl.gov/lbann/"
+ url = "https://github.com/LLNL/lbann/archive/v0.91.tar.gz"
+
+ version('develop', git='https://github.com/LLNL/lbann.git', branch="develop")
+ version('0.91', '83b0ec9cd0b7625d41dfb06d2abd4134')
+
+ variant('gpu', default=False, description='Builds with support for GPUs via CUDA and cuDNN')
+ variant('opencv', default=True, description='Builds with support for image processing routines with OpenCV')
+ variant('seq_init', default=False, description='Force serial initialization of weight matrices.')
+ variant('dtype', default=4, description='Size (bits) of floating point representation for weights')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
+
+ depends_on('elemental +openmp_blas +shared +int64')
+ depends_on('elemental +openmp_blas +shared +int64 build_type=Debug',
+ when=('build_type=Debug'))
+ depends_on('cuda', when='+gpu')
+ depends_on('cudnn', when='+gpu')
+ depends_on('cub', when='+gpu')
+ depends_on('mpi')
+ depends_on('hwloc')
+ depends_on('opencv@3.2.0: +openmp +core +highgui +imgproc +jpeg +png +tiff +zlib ~eigen', when='+opencv')
+ depends_on('protobuf@3.0.2:')
+ depends_on('cnpy')
+
+ def cmake_args(self):
+ spec = self.spec
+ # Environment variables
+ CPPFLAGS = []
+ CPPFLAGS.append('-DLBANN_SET_EL_RNG')
+
+ args = [
+ '-DCMAKE_INSTALL_MESSAGE=LAZY',
+ '-DCMAKE_CXX_FLAGS=%s' % ' '.join(CPPFLAGS),
+ '-DWITH_CUDA:BOOL=%s' % ('+gpu' in spec),
+ '-DWITH_CUDNN:BOOL=%s' % ('+gpu' in spec),
+ '-DELEMENTAL_USE_CUBLAS:BOOL=%s' % (
+ '+cublas' in spec['elemental']),
+ '-DWITH_TBINF=OFF',
+ '-DWITH_VTUNE=OFF',
+ '-DElemental_DIR={0}'.format(spec['elemental'].prefix),
+ '-DCNPY_DIR={0}'.format(spec['cnpy'].prefix),
+ '-DELEMENTAL_MATH_LIBS={0}'.format(
+ spec['elemental'].libs),
+ '-DSEQ_INIT:BOOL=%s' % ('+seq_init' in spec),
+ '-DDATATYPE={0}'.format(int(spec.variants['dtype'].value)),
+ '-DVERBOSE=0',
+ '-DLBANN_HOME=.',
+ '-DLBANN_VER=spack']
+
+ if '+opencv' in spec:
+ args.extend(['-DOpenCV_DIR:STRING={0}'.format(
+ spec['opencv'].prefix)])
+
+ if '+cudnn' in spec:
+ args.extend(['-DcuDNN_DIR={0}'.format(
+ spec['cudnn'].prefix)])
+
+ if '+cudnn' in spec:
+ args.extend(['-DCUB_DIR={0}'.format(
+ spec['cub'].prefix)])
+
+ return args
diff --git a/var/spack/repos/builtin/packages/lbxproxy/package.py b/var/spack/repos/builtin/packages/lbxproxy/package.py
index 3de3ade0c9..6b5c4d0bc7 100644
--- a/var/spack/repos/builtin/packages/lbxproxy/package.py
+++ b/var/spack/repos/builtin/packages/lbxproxy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Lbxproxy(Package):
+class Lbxproxy(AutotoolsPackage):
"""lbxproxy accepts client connections, multiplexes them over a single
connection to the X server, and performs various optimizations on the
X protocol to make it faster over low bandwidth and/or high latency
@@ -50,9 +50,3 @@ class Lbxproxy(Package):
depends_on('bigreqsproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/lcals/package.py b/var/spack/repos/builtin/packages/lcals/package.py
new file mode 100644
index 0000000000..bd12081130
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lcals/package.py
@@ -0,0 +1,122 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import platform
+
+
+class Lcals(MakefilePackage):
+ """LCALS ("Livermore Compiler Analysis Loop Suite") is a collection of loop
+ kernels based, in part, on historical "Livermore Loops" benchmarks
+ (See the 1986 technical report: "The Livermore Fortran Kernels:
+ A Computer Test of the Numerical Performance Range",
+ by Frank H. McMahon, UCRL-53745.). The suite contains facilities to
+ generate timing statistics and reports."""
+
+ homepage = "https://codesign.llnl.gov/LCALS-downloads/"
+ url = "https://codesign.llnl.gov/LCALS-downloads/lcals-v1.0.2.tgz"
+
+ tags = ['proxy-app']
+
+ version('1.0.2', '40c65a88f1df1436a2f72b7d3c986a21')
+
+ variant(
+ 'microarch',
+ description='Micro arch: SSE, AVX, MIC.',
+ default='sse',
+ values=('sse', 'avx', 'MIC'),
+ )
+
+ @property
+ def build_targets(self):
+
+ targets = []
+
+ cxxflags = '-std=c++0x '
+ cxx_compile = ''
+
+ microarch = self.spec.variants['microarch'].value
+
+ arch = platform.machine()
+
+ if microarch == 'MIC':
+ arch = 'MIC'
+ elif arch == 'x86_64' or arch == 'x86_32':
+ arch = 'x86'
+ elif arch != 'bgq':
+ raise InstallError('unknown architecture.')
+
+ if self.compiler.name == 'intel':
+ if arch == 'MIC':
+ cxxflags += '-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC '
+ cxx_compile += '-g -O3 -mmic -vec-report3 '
+ ' -inline-max-total-size=10000 -inline-forceinline -ansi-alias'
+ elif microarch == 'sse' and arch == 'x86':
+ cxxflags += '-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_ICC '
+ cxx_compile += '-O3 -msse4.1 -inline-max-total-size=10000'
+ ' -inline-forceinline -ansi-alias -std=c++0x '
+ elif microarch == 'avx' and arch == 'x86':
+ cxxflags += '-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_ICC '
+ cxx_compile += '-O3 -mavx -inline-max-total-size=10000'
+ ' -inline-forceinline -ansi-alias -std=c++0x'
+ cxxflags += self.compiler.openmp_flag
+ elif self.compiler.name == 'gcc':
+ if arch == 'MIC' or (microarch == 'sse' and arch == 'x86'):
+ cxxflags += '-DLCALS_PLATFORM_X86_SSE -DLCALS_COMPILER_GNU '
+ cxx_compile += '-Ofast -msse4.1 -finline-functions'
+ ' -finline-limit=10000 -std=c++11 '
+ elif microarch == 'avx' and arch == 'x86':
+ cxxflags += '-DLCALS_PLATFORM_X86_AVX -DLCALS_COMPILER_GNU '
+ cxx_compile += '-Ofast -mavx -finline-functions'
+ ' -finline-limit=10000 -std=c++11'
+ elif arch == 'bgq':
+ cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_GNU '
+ cxx_compile += '-O3 -finline-functions -finline-limit=10000'
+ ' -std=c++0x'
+ cxxflags += self.compiler.openmp_flag
+ elif self.compiler.name == 'xl' and arch == 'bgp':
+ if self.compiler.version == Version('9') and arch == 'bgp':
+ cxxflags += '-DLCALS_PLATFORM_BGP -DLCALS_COMPILER_XLC9 '
+ cxx_compile += 'O3 -qarch=450d -qtune=450 -qalias=allp -qhot'
+ ' -qsmp=omp '
+ elif self.compiler.version == Version('12') and arch == 'bgq':
+ cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_XLC12 '
+ cxx_compile += '-O3 -qarch=qp -qhot=novector -qsimd=auto'
+ ' -qlanglvl=extended0x -qnostrict -qinline=10000 -qsmp=omp '
+ elif self.compiler.name == 'clang':
+ if arch == 'bgq':
+ cxxflags += '-DLCALS_PLATFORM_BGQ -DLCALS_COMPILER_CLANG '
+ cxx_compile += '-O3 -finline-functions -ffast-math -std=c++0x'
+
+ targets.append('LCALS_ARCH=')
+ cxx_compile += ' ' + cxxflags
+ targets.append('CXX_COMPILE={0} {1}'.format(spack_cxx, cxx_compile))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('lcals.exe', prefix.bin)
+ install('lcalsversioninfo.txt', prefix)
diff --git a/var/spack/repos/builtin/packages/lcms/package.py b/var/spack/repos/builtin/packages/lcms/package.py
index 4d3fc59568..816cc3f005 100644
--- a/var/spack/repos/builtin/packages/lcms/package.py
+++ b/var/spack/repos/builtin/packages/lcms/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,16 @@
from spack import *
-class Lcms(Package):
+class Lcms(AutotoolsPackage):
"""Little cms is a color management library. Implements fast
transforms between ICC profiles. It is focused on speed, and is
portable across several platforms (MIT license)."""
homepage = "http://www.littlecms.com"
- url = "http://downloads.sourceforge.net/project/lcms/lcms/2.6/lcms2-2.6.tar.gz"
+ url = "http://downloads.sourceforge.net/project/lcms/lcms/2.8/lcms2-2.8.tar.gz"
+ version('2.8', '87a5913f1a52464190bb655ad230539c')
version('2.6', 'f4c08d38ceade4a664ebff7228910a33')
- depends_on("jpeg")
- depends_on("libtiff")
- depends_on("zlib")
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ depends_on('jpeg')
+ depends_on('libtiff')
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/ldc-bootstrap/package.py b/var/spack/repos/builtin/packages/ldc-bootstrap/package.py
new file mode 100644
index 0000000000..6e3288f085
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ldc-bootstrap/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class LdcBootstrap(CMakePackage):
+ """The LDC project aims to provide a portable D programming language
+ compiler with modern optimization and code generation capabilities.
+
+ LDC is fully Open Source; the parts of the code not taken/adapted from
+ other projects are BSD-licensed (see the LICENSE file for details).
+
+ Consult the D wiki for further information: http://wiki.dlang.org/LDC
+
+ This old version of the compiler is needed to bootstrap newer ones.
+ """
+
+ homepage = "https://dlang.org/"
+ url = "https://github.com/ldc-developers/ldc/releases/download/v0.17.4/ldc-0.17.4-src.tar.gz"
+
+ # This is the last version that does not require a D compiler to bootstrap
+ version('0.17.4', '000e006426d6094fabd2a2bdab0ff0b7')
+
+ depends_on('llvm@3.7:')
+ depends_on('zlib')
+ depends_on('libconfig')
+ depends_on('curl')
+ depends_on('libedit')
+ depends_on('binutils')
+
+ def setup_dependent_environment(self, build_env, run_env, dep_spec):
+
+ # The code below relies on this function being executed after the
+ # environment has been sanitized (because LD_LIBRARY_PATH is among
+ # the variables that get unset)
+
+ # We need libphobos in LD_LIBRARY_PATH
+ build_env.prepend_path('LD_LIBRARY_PATH', self.prefix.lib)
+
+ def cmake_args(self):
+ return [
+ '-DBUILD_SHARED_LIBS:BOOL=ON'
+ ]
diff --git a/var/spack/repos/builtin/packages/ldc/package.py b/var/spack/repos/builtin/packages/ldc/package.py
new file mode 100644
index 0000000000..8dd2052fca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ldc/package.py
@@ -0,0 +1,85 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ldc(CMakePackage):
+ """The LDC project aims to provide a portable D programming language
+ compiler with modern optimization and code generation capabilities.
+
+ LDC is fully Open Source; the parts of the code not taken/adapted from
+ other projects are BSD-licensed (see the LICENSE file for details).
+
+ Consult the D wiki for further information: http://wiki.dlang.org/LDC
+ """
+
+ homepage = "https://dlang.org/"
+ url = "https://github.com/ldc-developers/ldc/releases/download/v0.17.4/ldc-0.17.4-src.tar.gz"
+
+ version('1.3.0', '537d992a361b0fd0440b24a5145c9107')
+
+ variant(
+ 'shared',
+ default=True,
+ description='Build runtime and tooling as shared libs'
+ )
+
+ depends_on('llvm@3.9:')
+ depends_on('zlib')
+ depends_on('libconfig')
+ depends_on('curl')
+ depends_on('libedit')
+ depends_on('binutils', type=('build', 'link', 'run'))
+ depends_on('ldc-bootstrap', type=('build', 'link'))
+
+ provides('D@2')
+
+ def cmake_args(self):
+ ldmd2 = self.spec['ldc-bootstrap'].prefix.bin.ldmd2
+
+ args = [
+ '-DD_COMPILER:STRING={0}'.format(ldmd2),
+ '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
+ 'ON' if '+shared' in self.spec else 'OFF'
+ ),
+ '-DLDC_INSTALL_LTOPLUGIN:BOOL=ON',
+ '-DLDC_BUILD_WITH_LTO:BOOL=OFF'
+ ]
+
+ return args
+
+ @run_after('install')
+ def add_rpath_to_conf(self):
+
+ # Here we modify the configuration file for ldc2 to inject flags
+ # that will rpath the standard library location
+
+ config_file = join_path(self.prefix.etc, 'ldc2.conf')
+
+ search_for = 'switches = \['
+ substitute_with = 'switches = [\n' + \
+ ' "-L-rpath={0}",'.format(self.prefix.lib)
+
+ filter_file(search_for, substitute_with, config_file)
diff --git a/var/spack/repos/builtin/packages/legion/package.py b/var/spack/repos/builtin/packages/legion/package.py
new file mode 100644
index 0000000000..0ec388994f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/legion/package.py
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Legion(CMakePackage):
+ """Legion is a data-centric parallel programming system for writing
+ portable high performance programs targeted at distributed heterogeneous
+ architectures. Legion presents abstractions which allow programmers to
+ describe properties of program data (e.g. independence, locality). By
+ making the Legion programming system aware of the structure of program
+ data, it can automate many of the tedious tasks programmers currently
+ face, including correctly extracting task- and data-level parallelism
+ and moving data around complex memory hierarchies. A novel mapping
+ interface provides explicit programmer controlled placement of data in
+ the memory hierarchy and assignment of tasks to processors in a way
+ that is orthogonal to correctness, thereby enabling easy porting and
+ tuning of Legion applications to new architectures.
+ """
+ homepage = "http://legion.stanford.edu/"
+ url = "https://github.com/StanfordLegion/legion/tarball/legion-17.02.0"
+
+ version('develop', git='https://github.com/StanfordLegion/legion', branch='master')
+ version('17.10.0', 'ebfc974dc82a9d7f3ba53242ecae62e1')
+ version('17.08.0', 'acc1ea8c564c4a382a015e0c9cf94574')
+ version('17.02.0', '31ac3004e2fb0996764362d2b6f6844a')
+
+ variant('mpi', default=True,
+ description='Build on top of mpi conduit for mpi inoperability')
+ variant('shared', default=True, description='Build shared libraries')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB'", when='~mpi')
+ depends_on("gasnet~aligned-segments~pshm segment-mmap-max='16GB' +mpi", when='+mpi')
+
+ def cmake_args(self):
+ options = [
+ '-DLegion_USE_GASNet=ON',
+ '-DLegion_BUILD_EXAMPLES=ON',
+ '-DBUILD_SHARED_LIBS=%s' % ('+shared' in self.spec)]
+
+ if '+mpi' in self.spec:
+ options.append('-DGASNet_CONDUIT=mpi')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/leveldb/package.py b/var/spack/repos/builtin/packages/leveldb/package.py
index f571baa1ce..db61668021 100644
--- a/var/spack/repos/builtin/packages/leveldb/package.py
+++ b/var/spack/repos/builtin/packages/leveldb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,8 +31,9 @@ class Leveldb(Package):
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"
+ url = "https://github.com/google/leveldb/archive/v1.20.tar.gz"
+ version('1.20', '298b5bddf12c675d6345784261302252')
version('1.18', '73770de34a2a5ab34498d2e05b2b7fa0')
depends_on("snappy")
@@ -42,12 +43,28 @@ class Leveldb(Package):
mkdirp(prefix.include)
mkdirp(prefix.lib)
+ mkdirp(join_path(prefix.lib, 'pkgconfig'))
cp = which('cp')
# cp --preserve=links libleveldb.* prefix/lib
- args = glob.glob('libleveldb.*')
- args.append(prefix + '/lib')
+ args = glob.glob('out-shared/libleveldb.*') \
+ + glob.glob('out-static/libleveldb.*')
+ args.append(prefix.lib)
cp('--preserve=links', *args)
- cp('-r', 'include/leveldb', prefix + '/include')
+ cp('-r', 'include/leveldb', prefix.include)
+
+ with open(join_path(prefix.lib, 'pkgconfig', 'leveldb.pc'), 'w') as f:
+ f.write('prefix={0}\n'.format(prefix))
+ f.write('exec_prefix=${prefix}\n')
+ f.write('libdir={0}\n'.format(prefix.lib))
+ f.write('includedir={0}\n'.format(prefix.include))
+ f.write('\n')
+ f.write('Name: leveldb\n')
+ f.write('Description: LevelDB is a fast key-value storage library'
+ ' written at Google that provides an ordered mapping from'
+ ' string keys to string values.\n')
+ f.write('Version: {0}\n'.format(spec.version))
+ f.write('Cflags: -I${includedir}\n')
+ f.write('Libs: -L${libdir} -lleveldb\n')
diff --git a/var/spack/repos/builtin/packages/lftp/package.py b/var/spack/repos/builtin/packages/lftp/package.py
new file mode 100644
index 0000000000..47b4706776
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lftp/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Lftp(AutotoolsPackage):
+ """LFTP is a sophisticated file transfer program supporting a number
+ of network protocols (ftp, http, sftp, fish, torrent)."""
+
+ homepage = "http://lftp.yar.ru/"
+ url = "http://lftp.yar.ru/ftp/lftp-4.7.7.tar.gz"
+
+ version('4.8.1', '419b27c016d968a0226b2e5df1454c22')
+ version('4.7.7', 'ddc71b3b11a1af465e829075ae14b3ff')
+
+ depends_on('expat')
+ depends_on('libiconv')
+ depends_on('ncurses')
+ depends_on('openssl')
+ depends_on('readline')
+ depends_on('zlib')
+
+ def configure_args(self):
+ return [
+ '--with-expat={0}'.format(self.spec['expat'].prefix),
+ '--with-libiconv={0}'.format(self.spec['libiconv'].prefix),
+ '--with-openssl={0}'.format(self.spec['openssl'].prefix),
+ '--with-readline={0}'.format(self.spec['readline'].prefix),
+ '--with-zlib={0}'.format(self.spec['zlib'].prefix),
+ '--disable-dependency-tracking',
+ ]
diff --git a/var/spack/repos/builtin/packages/libaec/package.py b/var/spack/repos/builtin/packages/libaec/package.py
new file mode 100644
index 0000000000..814f7760c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libaec/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libaec(CMakePackage):
+ """Libaec provides fast lossless compression of 1 up to 32 bit wide signed
+ or unsigned integers (samples). It implements Golomb-Rice compression
+ method under the BSD license and includes a free drop-in replacement for
+ the SZIP library.
+ """
+
+ homepage = 'https://gitlab.dkrz.de/k202009/libaec'
+ url = 'https://gitlab.dkrz.de/k202009/libaec/repository/archive.tar.gz?ref=v1.0.2'
+ list_url = 'https://gitlab.dkrz.de/k202009/libaec/tags'
+
+ provides('szip')
+
+ version('1.0.2', '13fb9dca01f95e2794010312c8fe345a')
+ version('1.0.1', '2180d2525d679a5f7950e7867b70e06b')
+ version('1.0.0', 'ebc0b4e47fa4e1bd5783c2b1c960fe94')
diff --git a/var/spack/repos/builtin/packages/libaio/package.py b/var/spack/repos/builtin/packages/libaio/package.py
index 735ced047b..2a617c0518 100644
--- a/var/spack/repos/builtin/packages/libaio/package.py
+++ b/var/spack/repos/builtin/packages/libaio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,10 +28,10 @@ from spack import *
class Libaio(Package):
"""This is the linux native Asynchronous I/O interface library."""
- homepage = "https://git.fedorahosted.org/cgit/libaio.git"
- url = "https://git.fedorahosted.org/cgit/libaio.git/snapshot/libaio-0.3.110-1.tar.gz"
+ homepage = "http://lse.sourceforge.net/io/aio.html"
+ url = "https://ftp.de.debian.org/debian/pool/main/liba/libaio/libaio_0.3.110.orig.tar.gz"
- version('0.3.110-1', 'eb6b1b435afadb5b80c5dd80984249f6')
+ version('0.3.110', '2a35602e43778383e2f4907a4ca39ab8')
def install(self, spec, prefix):
# libaio is not supported on OS X
diff --git a/var/spack/repos/builtin/packages/libapplewm/package.py b/var/spack/repos/builtin/packages/libapplewm/package.py
index 85408053ad..146596081f 100644
--- a/var/spack/repos/builtin/packages/libapplewm/package.py
+++ b/var/spack/repos/builtin/packages/libapplewm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libapplewm(Package):
+class Libapplewm(AutotoolsPackage):
"""AppleWM is a simple library designed to interface with the Apple-WM
extension. This extension allows X window managers to better interact with
the Mac OS X Aqua user interface when running X11 in a rootless mode."""
@@ -43,12 +43,6 @@ class Libapplewm(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- # Crashes with this error message on Linux:
- # HIServices/Processes.h: No such file or directory
- # May only build properly on macOS?
-
- make()
- make('install')
+ # Crashes with this error message on Linux:
+ # HIServices/Processes.h: No such file or directory
+ # May only build properly on macOS?
diff --git a/var/spack/repos/builtin/packages/libarchive/package.py b/var/spack/repos/builtin/packages/libarchive/package.py
index e439bf894f..f06f09b391 100644
--- a/var/spack/repos/builtin/packages/libarchive/package.py
+++ b/var/spack/repos/builtin/packages/libarchive/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libarchive(Package):
+class Libarchive(AutotoolsPackage):
"""libarchive: C library and command-line tools for reading and
writing tar, cpio, zip, ISO, and other archive formats."""
@@ -48,10 +48,5 @@ class Libarchive(Package):
depends_on('libxml2')
depends_on('expat')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- if self.run_tests:
- make('check') # cannot build test suite with Intel compilers
- make('install')
+ # NOTE: `make check` is known to fail with the Intel compilers
+ # The build test suite cannot be built with Intel
diff --git a/var/spack/repos/builtin/packages/libassuan/package.py b/var/spack/repos/builtin/packages/libassuan/package.py
new file mode 100644
index 0000000000..8a56551ff5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libassuan/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libassuan(AutotoolsPackage):
+ """Libassuan is a small library implementing the so-called Assuan
+ protocol."""
+
+ homepage = "https://gnupg.org/software/libassuan/index.html"
+ url = "https://gnupg.org/ftp/gcrypt/libassuan/libassuan-2.4.3.tar.bz2"
+
+ version('2.4.3', '8e01a7c72d3e5d154481230668e6eb5a')
+
+ depends_on('libgpg-error')
+
+ def configure_args(self):
+ args = ['--with-libgpp-error=%s' % self.spec['libgpg-error'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/libatomic-ops/package.py b/var/spack/repos/builtin/packages/libatomic-ops/package.py
index 0167fbcb33..df12c000f3 100644
--- a/var/spack/repos/builtin/packages/libatomic-ops/package.py
+++ b/var/spack/repos/builtin/packages/libatomic-ops/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class LibatomicOps(Package):
+class LibatomicOps(AutotoolsPackage):
"""This package provides semi-portable access to hardware-provided
atomic memory update operations on a number architectures."""
@@ -34,9 +34,5 @@ class LibatomicOps(Package):
version('7.4.4', '426d804baae12c372967a6d183e25af2')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix),
- '--enable-shared')
-
- make()
- make('install')
+ def configure_args(self):
+ return ['--enable-shared']
diff --git a/var/spack/repos/builtin/packages/libbeagle/package.py b/var/spack/repos/builtin/packages/libbeagle/package.py
new file mode 100644
index 0000000000..4d064a063b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libbeagle/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libbeagle(AutotoolsPackage):
+ """Beagle performs genotype calling, genotype phasing, imputation of
+ ungenotyped markers, and identity-by-descent segment detection."""
+
+ homepage = "https://github.com/beagle-dev/beagle-lib"
+ url = "https://github.com/beagle-dev/beagle-lib/archive/beagle_release_2_1_2.tar.gz"
+
+ version('2.1.2', '1107614e86f652f8ee45c1c92f2af3d4')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('subversion', type='build')
+ depends_on('pkg-config', type='build')
+
+ def url_for_version(self, version):
+ url = "https://github.com/beagle-dev/beagle-lib/archive/beagle_release_{0}.tar.gz"
+ return url.format(version.underscored)
diff --git a/var/spack/repos/builtin/packages/libbsd/cdefs.h.patch b/var/spack/repos/builtin/packages/libbsd/cdefs.h.patch
new file mode 100644
index 0000000000..acd3843a06
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libbsd/cdefs.h.patch
@@ -0,0 +1,15 @@
+--- a/nclude/bsd/sys/cdefs.h.orig 2017-08-04 16:34:56.404995800 -0700
++++ b/include/bsd/sys/cdefs.h 2017-08-04 16:35:19.345043883 -0700
+@@ -25,10 +25,10 @@
+ */
+
+ #ifndef __has_include
+-#define __has_include 1
++#define __has_include(X) 1
+ #endif
+ #ifndef __has_include_next
+-#define __has_include_next 1
++#define __has_include_next(X) 1
+ #endif
+
+ #ifdef LIBBSD_OVERLAY
diff --git a/var/spack/repos/builtin/packages/libbsd/package.py b/var/spack/repos/builtin/packages/libbsd/package.py
new file mode 100644
index 0000000000..f9b8a291ca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libbsd/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libbsd(AutotoolsPackage):
+ """This library provides useful functions commonly found on BSD
+ systems, and lacking on others like GNU systems, thus making it easier
+ to port projects with strong BSD origins, without needing to embed the
+ same code over and over again on each project.
+ """
+
+ homepage = "https://libbsd.freedesktop.org/wiki/"
+ url = "https://libbsd.freedesktop.org/releases/libbsd-0.8.6.tar.xz"
+
+ version('0.8.6', '4ab7bec639af17d0aacb50222b479110')
+
+ patch('cdefs.h.patch', when='%gcc@:4')
diff --git a/var/spack/repos/builtin/packages/libbson/package.py b/var/spack/repos/builtin/packages/libbson/package.py
new file mode 100644
index 0000000000..39a606cf73
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libbson/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libbson(AutotoolsPackage):
+ """libbson is a library providing useful routines related to building,
+ parsing, and iterating BSON documents."""
+
+ homepage = "https://github.com/mongodb/libbson"
+ url = "https://github.com/mongodb/libbson/releases/download/1.7.0/libbson-1.7.0.tar.gz"
+
+ version('1.8.0', '8b3c64570eec721f951831958e707a5a')
+ version('1.7.0', 'e196ad77dd8458ebc1166e6135030b63')
+ version('1.6.3', 'b7bdb314197106fcfb4af105a582d343')
+ version('1.6.2', 'c128a2ae3e35295e1176465be60f19db')
+ version('1.6.1', '4d6779451bc5764a7d4982c01e7bd8c2')
+
+ depends_on('autoconf', type='build', when='@1.6.1')
+ depends_on('automake', type='build', when='@1.6.1')
+ depends_on('libtool', type='build', when='@1.6.1')
+ depends_on('m4', type='build', when='@1.6.1')
+
+ @property
+ def force_autoreconf(self):
+ # 1.6.1 tarball is broken
+ return self.spec.satisfies('@1.6.1')
diff --git a/var/spack/repos/builtin/packages/libcanberra/package.py b/var/spack/repos/builtin/packages/libcanberra/package.py
new file mode 100644
index 0000000000..f7b8a78659
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcanberra/package.py
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libcanberra(AutotoolsPackage):
+ """libcanberra is an implementation of the XDG Sound Theme and
+ Name Specifications, for generating event sounds on free desktops,
+ such as GNOME."""
+
+ homepage = "http://0pointer.de/lennart/projects/libcanberra/"
+ url = "http://0pointer.de/lennart/projects/libcanberra/libcanberra-0.30.tar.xz"
+
+ version('0.30', '34cb7e4430afaf6f447c4ebdb9b42072')
+
+ # TODO: Add variants and dependencies for the following audio support:
+ # ALSA, OSS, PulseAudio, udev, GStreamer, null, GTK3+ , tdb
+
+ variant('gtk', default=False, description='Enable optional GTK+ support')
+
+ depends_on('libxrender', when='+gtk')
+ depends_on('libxext', when='+gtk')
+ depends_on('libx11', when='+gtk')
+ depends_on('libxinerama', when='+gtk')
+ depends_on('libxrandr', when='+gtk')
+ depends_on('libxcursor', when='+gtk')
+ depends_on('libxcomposite', when='+gtk')
+ depends_on('libxdamage', when='+gtk')
+ depends_on('libxfixes', when='+gtk')
+ depends_on('libxcb', when='+gtk')
+ depends_on('libxau', when='+gtk')
+ depends_on('gtkplus', when='+gtk')
+
+ depends_on('libvorbis')
+
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ def configure_args(self):
+ args = ['--enable-static']
+
+ if '+gtk' in self.spec:
+ args.append('--enable-gtk')
+ else:
+ args.append('--disable-gtk')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/libcap/libcap-fix-the-libcap-native-building-failure-on-CentOS-6.7.patch b/var/spack/repos/builtin/packages/libcap/libcap-fix-the-libcap-native-building-failure-on-CentOS-6.7.patch
new file mode 100644
index 0000000000..762c69299e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcap/libcap-fix-the-libcap-native-building-failure-on-CentOS-6.7.patch
@@ -0,0 +1,31 @@
+Ensure the XATTR_NAME_CAPS is defined when it is used
+
+Upstream-Status: Pending
+
+VFS_CAP_U32 can not ensure that XATTR_NAME_CAPS is defined, and failed to build
+libcap-native in old release, like CentOS release 6.7 (Final), with the blow
+error:
+ cap_file.c: In function ‘cap_get_fd’:
+ cap_file.c:199: error: ‘XATTR_NAME_CAPS’ undeclared (first use in this function)
+ cap_file.c:199: error: (Each undeclared identifier is reported only once
+
+Signed-off-by: Roy Li <rongqing.li@windriver.com>
+---
+ libcap/cap_file.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libcap/cap_file.c b/libcap/cap_file.c
+index 40756ea..e27ca80 100644
+--- a/libcap/cap_file.c
++++ b/libcap/cap_file.c
+@@ -25,7 +25,7 @@ extern int fremovexattr(int, const char *);
+
+ #include "libcap.h"
+
+-#ifdef VFS_CAP_U32
++#if defined (VFS_CAP_U32) && defined (XATTR_NAME_CAPS)
+
+ #if VFS_CAP_U32 != __CAP_BLKS
+ # error VFS representation of capabilities is not the same size as kernel
+--
+2.8.1
diff --git a/var/spack/repos/builtin/packages/libcap/package.py b/var/spack/repos/builtin/packages/libcap/package.py
new file mode 100644
index 0000000000..af7c363bf0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libcap/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libcap(MakefilePackage):
+ """Libcap implements the user-space interfaces to the POSIX 1003.1e
+ capabilities available in Linux kernels. These capabilities are a
+ partitioning of the all powerful root privilege into a set of
+ distinct privileges."""
+
+ homepage = "https://sites.google.com/site/fullycapable/"
+ url = "https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.25.tar.gz"
+
+ version('2.25', '4b18f7166a121138cca0cdd8ab64df4c')
+
+ patch('libcap-fix-the-libcap-native-building-failure-on-CentOS-6.7.patch')
+
+ def install(self, spec, prefix):
+ make_args = [
+ 'RAISE_SETFCAP=no',
+ 'lib=lib',
+ 'prefix={0}'.format(prefix),
+ 'install'
+ ]
+ make(*make_args)
+
+ chmod = which('chmod')
+ chmod('+x', join_path(prefix.lib, 'libcap.so'))
diff --git a/var/spack/repos/builtin/packages/libcerf/package.py b/var/spack/repos/builtin/packages/libcerf/package.py
index 1964f03b95..f119f96832 100644
--- a/var/spack/repos/builtin/packages/libcerf/package.py
+++ b/var/spack/repos/builtin/packages/libcerf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Libcerf(Package):
+class Libcerf(AutotoolsPackage):
"""A self-contained C library providing complex error functions, based
on Faddeeva's plasma dispersion function w(z). Also provides Dawson's
integral and Voigt's convolution of a Gaussian and a Lorentzian
@@ -37,13 +37,12 @@ class Libcerf(Package):
version('1.3', 'b3504c467204df71e62aeccf73a25612')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
options = []
# Clang reports unused functions as errors, see
# http://clang.debian.net/status.php?version=3.8.1&key=UNUSED_FUNCTION
if spec.satisfies('%clang'):
options.append('CFLAGS=-Wno-unused-function')
- configure('--prefix=%s' % prefix, *options)
- make()
- make("install")
+ return options
diff --git a/var/spack/repos/builtin/packages/libcircle/package.py b/var/spack/repos/builtin/packages/libcircle/package.py
index 971c29f5f1..98778ea9a4 100644
--- a/var/spack/repos/builtin/packages/libcircle/package.py
+++ b/var/spack/repos/builtin/packages/libcircle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libcircle(Package):
+class Libcircle(AutotoolsPackage):
"""libcircle provides an efficient distributed queue on a cluster,
using self-stabilizing work stealing."""
@@ -35,8 +35,3 @@ class Libcircle(Package):
url='https://github.com/hpc/libcircle/releases/download/0.2.1-rc.1/libcircle-0.2.1-rc.1.tar.gz')
depends_on('mpi')
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libconfig/package.py b/var/spack/repos/builtin/packages/libconfig/package.py
new file mode 100644
index 0000000000..e62ec6bd83
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libconfig/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libconfig(AutotoolsPackage):
+ """C/C++ Configuration File Library"""
+
+ homepage = "http://www.hyperrealm.com/libconfig/"
+ url = "https://github.com/hyperrealm/libconfig/archive/v1.6.tar.gz"
+
+ force_autoreconf = True
+ # there is currently a build error with version 1.6, see:
+ # https://github.com/hyperrealm/libconfig/issues/47
+ # version('1.6', '2ccd24b6a2ee39f7ff8a3badfafb6539')
+ version('1.5', 'e92a91c2ddf3bf77bea0f5ed7f09e492', preferred=True)
+
+ depends_on('m4', type=('build'))
+ depends_on('autoconf', type=('build'))
+ depends_on('automake', type=('build'))
+ depends_on('libtool', type=('build'))
diff --git a/var/spack/repos/builtin/packages/libctl/package.py b/var/spack/repos/builtin/packages/libctl/package.py
index 53d30ce5c3..fc729d6db8 100644
--- a/var/spack/repos/builtin/packages/libctl/package.py
+++ b/var/spack/repos/builtin/packages/libctl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,24 +25,25 @@
from spack import *
-class Libctl(Package):
+class Libctl(AutotoolsPackage):
"""libctl is a free Guile-based library implementing flexible
control files for scientific simulations."""
homepage = "http://ab-initio.mit.edu/wiki/index.php/Libctl"
url = "http://ab-initio.mit.edu/libctl/libctl-3.2.2.tar.gz"
+ list_url = "http://ab-initio.mit.edu/libctl/old"
version('3.2.2', '5fd7634dc9ae8e7fa70a68473b9cbb68')
depends_on('guile')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix),
- '--enable-shared',
- 'GUILE={0}'.format(join_path(
- spec['guile'].prefix.bin, 'guile')),
- 'GUILE_CONFIG={0}'.format(join_path(
- spec['guile'].prefix.bin, 'guile-config')))
+ def configure_args(self):
+ spec = self.spec
- make()
- make('install')
+ return [
+ '--enable-shared',
+ 'GUILE={0}'.format(join_path(
+ spec['guile'].prefix.bin, 'guile')),
+ 'GUILE_CONFIG={0}'.format(join_path(
+ spec['guile'].prefix.bin, 'guile-config')),
+ ]
diff --git a/var/spack/repos/builtin/packages/libdivsufsort/package.py b/var/spack/repos/builtin/packages/libdivsufsort/package.py
new file mode 100644
index 0000000000..1e679eb2ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libdivsufsort/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libdivsufsort(CMakePackage):
+ """libdivsufsort is a software library that implements a
+ lightweight suffix array construction algorithm."""
+
+ homepage = "https://github.com/y-256/libdivsufsort"
+ url = "https://github.com/y-256/libdivsufsort/archive/2.0.1.tar.gz"
+
+ version('2.0.1', 'a75c6be4715d3d659936f3a1ab8cb5c0')
diff --git a/var/spack/repos/builtin/packages/libdmx/package.py b/var/spack/repos/builtin/packages/libdmx/package.py
index fa469fd423..c89323935f 100644
--- a/var/spack/repos/builtin/packages/libdmx/package.py
+++ b/var/spack/repos/builtin/packages/libdmx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libdmx(Package):
+class Libdmx(AutotoolsPackage):
"""libdmx - X Window System DMX (Distributed Multihead X) extension
library."""
@@ -41,9 +41,3 @@ class Libdmx(Package):
depends_on('dmxproto@2.2.99.1:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libdrm/package.py b/var/spack/repos/builtin/packages/libdrm/package.py
index ab9661269e..521e097dc8 100644
--- a/var/spack/repos/builtin/packages/libdrm/package.py
+++ b/var/spack/repos/builtin/packages/libdrm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,21 +23,24 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
class Libdrm(Package):
- """A userspace library for accessing the DRM, direct
- rendering manager, on Linux, BSD and other operating
- systems that support the ioctl interface."""
+ """A userspace library for accessing the DRM, direct rendering manager,
+ on Linux, BSD and other systems supporting the ioctl interface."""
homepage = "http://dri.freedesktop.org/libdrm/"
url = "http://dri.freedesktop.org/libdrm/libdrm-2.4.59.tar.gz"
+ version('2.4.81', 'dc575dd661a082390e9f1366ca5734b0')
+ version('2.4.75', '743c16109d91a2539dfc9cc56130d695')
version('2.4.70', 'a8c275bce5f3d71a5ca25e8fb60df084')
version('2.4.59', '105ac7af1afcd742d402ca7b4eb168b6')
version('2.4.33', '86e4e3debe7087d5404461e0032231c8')
- depends_on('libpciaccess@0.10:')
+ depends_on('pkg-config@0.9.0:', type='build')
+ depends_on('libpciaccess@0.10:', when=(sys.platform != 'darwin'))
depends_on('libpthread-stubs')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/libdwarf/package.py b/var/spack/repos/builtin/packages/libdwarf/package.py
index 594271f655..970a4502b4 100644
--- a/var/spack/repos/builtin/packages/libdwarf/package.py
+++ b/var/spack/repos/builtin/packages/libdwarf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -48,37 +48,57 @@ class Libdwarf(Package):
version('20130729', '4cc5e48693f7b93b7aa0261e63c0e21d')
version('20130207', '64b42692e947d5180e162e46c689dfbf')
version('20130126', 'ded74a5e90edb5a12aac3c29d260c5db')
- depends_on("libelf")
+ depends_on("elf", type='link')
parallel = False
+ def patch(self):
+ filter_file(r'^typedef struct Elf Elf;$', '', 'libdwarf/libdwarf.h.in')
+
def install(self, spec, prefix):
- # dwarf build does not set arguments for ar properly
- make.add_default_arg('ARFLAGS=rcs')
-
- # Dwarf doesn't provide an install, so we have to do it.
- mkdirp(prefix.bin, prefix.include, prefix.lib, prefix.man1)
-
- with working_dir('libdwarf'):
- configure("--prefix=" + prefix, "--enable-shared")
- make()
-
- install('libdwarf.a', prefix.lib)
- install('libdwarf.so', prefix.lib)
- install('libdwarf.h', prefix.include)
- install('dwarf.h', prefix.include)
-
- if spec.satisfies('@20130126:20130729'):
- dwarfdump_dir = 'dwarfdump2'
- else:
- dwarfdump_dir = 'dwarfdump'
- with working_dir(dwarfdump_dir):
- configure("--prefix=" + prefix)
-
- # This makefile has strings of copy commands that
- # cause a race in parallel
- make(parallel=False)
-
- install('dwarfdump', prefix.bin)
- install('dwarfdump.conf', prefix.lib)
- install('dwarfdump.1', prefix.man1)
+
+ # elfutils contains a dwarf.h that conflicts with libdwarf's
+ # TODO: we should remove this when we can modify the include order
+ hide_list = []
+ if spec.satisfies('^elfutils'):
+ dwarf_h = join_path(spec['elfutils'].prefix, 'include/dwarf.h')
+ hide_list.append(dwarf_h)
+ with hide_files(*hide_list):
+ # dwarf build does not set arguments for ar properly
+ make.add_default_arg('ARFLAGS=rcs')
+
+ # Dwarf doesn't provide an install, so we have to do it.
+ mkdirp(prefix.bin, prefix.include, prefix.lib, prefix.man.man1)
+
+ with working_dir('libdwarf'):
+ extra_config_args = []
+
+ # this is to prevent picking up system /usr/include/libelf.h
+ if spec.satisfies('^libelf'):
+ libelf_inc_dir = join_path(spec['libelf'].prefix,
+ 'include/libelf')
+ extra_config_args.append('CFLAGS=-I{0}'.format(
+ libelf_inc_dir))
+ configure("--prefix=" + prefix, "--enable-shared",
+ *extra_config_args)
+ make()
+
+ install('libdwarf.a', prefix.lib)
+ install('libdwarf.so', prefix.lib)
+ install('libdwarf.h', prefix.include)
+ install('dwarf.h', prefix.include)
+
+ if spec.satisfies('@20130126:20130729'):
+ dwarfdump_dir = 'dwarfdump2'
+ else:
+ dwarfdump_dir = 'dwarfdump'
+ with working_dir(dwarfdump_dir):
+ configure("--prefix=" + prefix)
+
+ # This makefile has strings of copy commands that
+ # cause a race in parallel
+ make(parallel=False)
+
+ install('dwarfdump', prefix.bin)
+ install('dwarfdump.conf', prefix.lib)
+ install('dwarfdump.1', prefix.man.man1)
diff --git a/var/spack/repos/builtin/packages/libedit/package.py b/var/spack/repos/builtin/packages/libedit/package.py
index 235e7648bc..42a09fd540 100644
--- a/var/spack/repos/builtin/packages/libedit/package.py
+++ b/var/spack/repos/builtin/packages/libedit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,17 @@
from spack import *
-class Libedit(Package):
+class Libedit(AutotoolsPackage):
"""An autotools compatible port of the NetBSD editline library"""
homepage = "http://thrysoee.dk/editline/"
- url = "http://thrysoee.dk/editline/libedit-20150325-3.1.tar.gz"
+ url = "http://thrysoee.dk/editline/libedit-20170329-3.1.tar.gz"
- version('3.1', '43cdb5df3061d78b5e9d59109871b4f6',
- url="http://thrysoee.dk/editline/libedit-20150325-3.1.tar.gz")
+ version('3.1-20170329', 'c57a0690e62ef523c083598730272cfd')
+ version('3.1-20160903', '0467d27684c453a351fbcefebbcb16a3')
+ version('3.1-20150325', '43cdb5df3061d78b5e9d59109871b4f6')
depends_on('ncurses')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
+ def url_for_version(self, version):
+ url = "http://thrysoee.dk/editline/libedit-{0}-{1}.tar.gz"
+ return url.format(version[-1], version.up_to(-1))
diff --git a/var/spack/repos/builtin/packages/libelf/package.py b/var/spack/repos/builtin/packages/libelf/package.py
index 5af4ab705d..5d433c19d5 100644
--- a/var/spack/repos/builtin/packages/libelf/package.py
+++ b/var/spack/repos/builtin/packages/libelf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,7 @@ class Libelf(AutotoolsPackage):
version('0.8.13', '4136d7b4c04df68b686570afa26988ac')
version('0.8.12', 'e21f8273d9f5f6d43a59878dc274fec7')
- provides('elf')
+ provides('elf@0')
def configure_args(self):
args = ["--enable-shared",
diff --git a/var/spack/repos/builtin/packages/libemos/package.py b/var/spack/repos/builtin/packages/libemos/package.py
index 0275c7ede9..8db882d4be 100644
--- a/var/spack/repos/builtin/packages/libemos/package.py
+++ b/var/spack/repos/builtin/packages/libemos/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,28 +25,39 @@
from spack import *
-class Libemos(Package):
+class Libemos(CMakePackage):
"""The Interpolation library (EMOSLIB) includes Interpolation software and
BUFR & CREX encoding/decoding routines."""
homepage = "https://software.ecmwf.int/wiki/display/EMOS/Emoslib"
url = "https://software.ecmwf.int/wiki/download/attachments/3473472/libemos-4.4.2-Source.tar.gz"
+ version('4.4.7', '395dcf21cf06872f772fb6b73d8e67b9')
version('4.4.2', 'f15a9aff0f40861f3f046c9088197376')
- depends_on('cmake', type='build')
- depends_on('grib-api')
+ variant('eccodes', default=False,
+ description="Use eccodes instead of grib-api for GRIB decoding")
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'Production'))
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
+ depends_on('eccodes', when='+eccodes')
+ depends_on('grib-api', when='~eccodes')
+ depends_on('fftw+float+double')
+ depends_on('cmake@2.8.11:', type='build')
- options.append('-DGRIB_API_PATH=%s' % spec['grib_api'].prefix)
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+
+ if spec.satisfies('+eccodes'):
+ args.append('-DENABLE_ECCODES=ON')
+ args.append('-DECCODES_PATH=%s' % spec['eccodes'].prefix)
+ else:
+ args.append('-DENABLE_ECCODES=OFF')
+ args.append('-DGRIB_API_PATH=%s' % spec['grib-api'].prefix)
# To support long pathnames that spack generates
- options.append('-DCMAKE_Fortran_FLAGS=-ffree-line-length-none')
+ args.append('-DCMAKE_Fortran_FLAGS=-ffree-line-length-none')
- with working_dir('spack-build', create=True):
- cmake('..', *options)
- make()
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/libepoxy/package.py b/var/spack/repos/builtin/packages/libepoxy/package.py
index 364ea1e30c..9f29a701a0 100644
--- a/var/spack/repos/builtin/packages/libepoxy/package.py
+++ b/var/spack/repos/builtin/packages/libepoxy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Libepoxy(Package):
+class Libepoxy(AutotoolsPackage):
"""Epoxy is a library for handling OpenGL function pointer management for
you."""
homepage = "https://github.com/anholt/libepoxy"
url = "https://github.com/anholt/libepoxy/releases/download/v1.3.1/libepoxy-1.3.1.tar.bz2"
version('1.3.1', '96f6620a9b005a503e7b44b0b528287d')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libevent/package.py b/var/spack/repos/builtin/packages/libevent/package.py
index 65b3a716c0..562bb212f9 100644
--- a/var/spack/repos/builtin/packages/libevent/package.py
+++ b/var/spack/repos/builtin/packages/libevent/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libevent(Package):
+class Libevent(AutotoolsPackage):
"""The libevent API provides a mechanism to execute a callback function
when a specific event occurs on a file descriptor or after a
timeout has been reached. Furthermore, libevent also support
@@ -48,17 +48,17 @@ class Libevent(Package):
version('2.0.13', 'af786b4b3f790c9d3279792edf7867fc')
version('2.0.12', '42986228baf95e325778ed328a93e070')
+ # Does not build with OpenSSL 1.1.0
variant('openssl', default=True,
description="Build with encryption enabled at the libevent level.")
- depends_on('openssl', when='+openssl')
+ depends_on('openssl @:1.0', when='+openssl')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
configure_args = []
if '+openssl' in spec:
configure_args.append('--enable-openssl')
else:
- configure_args.append('--enable-openssl')
+ configure_args.append('--disable-openssl')
- configure("--prefix=%s" % prefix, *configure_args)
- make()
- make("install")
+ return configure_args
diff --git a/var/spack/repos/builtin/packages/libevpath/package.py b/var/spack/repos/builtin/packages/libevpath/package.py
new file mode 100644
index 0000000000..64c2fb44e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libevpath/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libevpath(CMakePackage):
+ """EVpath is an event transport middleware layer designed to allow
+ for the easy implementation of overlay networks, with
+ active data processing, routing and management at all points
+ in the overlay. EVPath is designed for high performance systems.
+ """
+
+ homepage = "https://github.com/GTkorvo/evpath"
+ url = "https://github.com/GTkorvo/evpath/archive/v4.1.1.tar.gz"
+
+ version('develop', git='https://github.com/GTkorvo/evpath.git',
+ branch='master')
+ version('4.2.1', 'f928dc0dee41668afc91634c7051ce1a')
+ version('4.1.2', '1a187f55431c991ae7040e3ff041d75c')
+ version('4.1.1', '65a8db820f396ff2926e3d31908d123d')
+
+ depends_on('libffs')
+
+ def cmake_args(self):
+ args = ["-DENABLE_TESTING=0", "-DTARGET_CNL=1",
+ "-DBUILD_SHARED_STATIC=STATIC"]
+ return args
diff --git a/var/spack/repos/builtin/packages/libfabric/package.py b/var/spack/repos/builtin/packages/libfabric/package.py
new file mode 100644
index 0000000000..01e139824a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libfabric/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libfabric(AutotoolsPackage):
+ """The Open Fabrics Interfaces (OFI) is a framework focused on exporting
+ fabric communication services to applications."""
+
+ homepage = "https://libfabric.org/"
+ url = "https://github.com/ofiwg/libfabric/releases/download/v1.5.0/libfabric-1.5.0.tar.gz"
+
+ version('1.5.0', 'fda3e9b31ebe184f5157288d059672d6')
+
+ fabrics = ('psm',
+ 'psm2',
+ 'sockets',
+ 'verbs',
+ 'usnic',
+ 'mxm',
+ 'gni',
+ 'xpmem',
+ 'udp',
+ 'rxm',
+ 'rxd')
+
+ variant(
+ 'fabrics',
+ default='sockets',
+ description='A list of enabled fabrics',
+ values=fabrics,
+ multi=True
+ )
+
+ def configure_args(self):
+ args = []
+
+ args.extend(['--enable-%s=%s' %
+ (f, 'yes' if 'fabrics=%s' % f in self.spec else 'no')
+ for f in self.fabrics])
+
+ return args
diff --git a/var/spack/repos/builtin/packages/libffi/package.py b/var/spack/repos/builtin/packages/libffi/package.py
index ddb7709ddf..f87060118d 100644
--- a/var/spack/repos/builtin/packages/libffi/package.py
+++ b/var/spack/repos/builtin/packages/libffi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,7 @@ class Libffi(AutotoolsPackage):
homepage = "https://sourceware.org/libffi/"
version('3.2.1', '83b89587607e3eb65c70d361f13bab43',
- url="ftp://sourceware.org/pub/libffi/libffi-3.2.1.tar.gz")
+ url="https://www.mirrorservice.org/sites/sourceware.org/pub/libffi/libffi-3.2.1.tar.gz")
# version('3.1', 'f5898b29bbfd70502831a212d9249d10',url =
# "ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz") # Has a bug
# $(lib64) instead of ${lib64} in libffi.pc
diff --git a/var/spack/repos/builtin/packages/libffs/package.py b/var/spack/repos/builtin/packages/libffs/package.py
new file mode 100644
index 0000000000..ee7a690214
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libffs/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libffs(CMakePackage):
+ """FFS is a middleware library for data communication,
+ including representation, processing and marshaling
+ that preserves the performance of traditional approaches
+ while relaxing the requirement of a priori knowledge
+ and providing complex run-time flexibility.
+ """
+
+ homepage = "http://www.cc.gatech.edu/systems/projects/FFS"
+ url = "https://github.com/GTkorvo/ffs/archive/v1.1.tar.gz"
+
+ version('develop', git='https://github.com/GTkorvo/ffs.git',
+ branch='master')
+ version('1.1.1', 'aa1c8ad5cf35e8cf76735e3a60891509')
+ version('1.1', '561c6b3abc53e12b3c01192e8ef2ffbc')
+
+ depends_on('flex')
+ depends_on('bison')
+ depends_on('gtkorvo-atl')
+ depends_on('gtkorvo-dill')
+ depends_on('gtkorvo-cercs-env')
+
+ def cmake_args(self):
+ args = ["-DENABLE_TESTING=0", "-DTARGET_CNL=1",
+ "-DBUILD_SHARED_STATIC=STATIC"]
+ return args
diff --git a/var/spack/repos/builtin/packages/libfontenc/package.py b/var/spack/repos/builtin/packages/libfontenc/package.py
index 1c7fa196d9..c5bc0478b2 100644
--- a/var/spack/repos/builtin/packages/libfontenc/package.py
+++ b/var/spack/repos/builtin/packages/libfontenc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libfontenc(Package):
+class Libfontenc(AutotoolsPackage):
"""libfontenc - font encoding library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libfontenc"
@@ -38,9 +38,3 @@ class Libfontenc(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libfs/package.py b/var/spack/repos/builtin/packages/libfs/package.py
index 96bf62afd7..95d5708d2f 100644
--- a/var/spack/repos/builtin/packages/libfs/package.py
+++ b/var/spack/repos/builtin/packages/libfs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libfs(Package):
+class Libfs(AutotoolsPackage):
"""libFS - X Font Service client library.
This library is used by clients of X Font Servers (xfs), such as
@@ -41,9 +41,3 @@ class Libfs(Package):
depends_on('xtrans', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libgcrypt/package.py b/var/spack/repos/builtin/packages/libgcrypt/package.py
index b556def4d3..053f62f9fc 100644
--- a/var/spack/repos/builtin/packages/libgcrypt/package.py
+++ b/var/spack/repos/builtin/packages/libgcrypt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,16 @@
from spack import *
-class Libgcrypt(Package):
+class Libgcrypt(AutotoolsPackage):
"""Libgcrypt is a general purpose cryptographic library based on
the code from GnuPG. It provides functions for all cryptographic
building blocks: symmetric ciphers, hash algorithms, MACs, public
key algorithms, large integer functions, random numbers and a lot
of supporting functions. """
homepage = "http://www.gnu.org/software/libgcrypt/"
- url = "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.6.2.tar.bz2"
+ url = "https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.7.6.tar.bz2"
+ version('1.7.6', '54e180679a7ae4d090f8689ca32b654c')
version('1.6.2', 'b54395a93cb1e57619943c082da09d5f')
depends_on("libgpg-error")
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libgd/package.py b/var/spack/repos/builtin/packages/libgd/package.py
index 6329adf8f3..22eb66d1c3 100644
--- a/var/spack/repos/builtin/packages/libgd/package.py
+++ b/var/spack/repos/builtin/packages/libgd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Libgd(Package):
+class Libgd(AutotoolsPackage):
"""GD is an open source code library for the dynamic creation of images
by programmers. GD is written in C, and "wrappers" are available
for Perl, PHP and other languages. GD creates PNG, JPEG, GIF,
@@ -38,8 +38,9 @@ class Libgd(Package):
"""
homepage = "https://github.com/libgd/libgd"
- url = "https://github.com/libgd/libgd/archive/gd-2.1.1.tar.gz"
+ url = 'https://github.com/libgd/libgd/releases/download/gd-2.2.4/libgd-2.2.4.tar.gz'
+ version('2.2.4', '0a3c307b5075edbe1883543dd1153c02')
version('2.2.3', 'a67bd15fa33d4aac0a1c7904aed19f49')
version('2.1.1', 'e91a1a99903e460e7ba00a794e72cc1e')
@@ -51,22 +52,8 @@ class Libgd(Package):
depends_on('gettext', type='build')
depends_on('pkg-config', type='build')
+ depends_on('libiconv')
depends_on('libpng')
+ depends_on('jpeg')
depends_on('libtiff')
depends_on('fontconfig')
-
- def install(self, spec, prefix):
- autoreconf("--install", "--force",
- "-I", "m4",
- "-I", join_path(spec['gettext'].prefix,
- "share", "aclocal"),
- "-I", join_path(spec['pkg-config'].prefix,
- "share", "aclocal"),
- "-I", join_path(spec['automake'].prefix,
- "share", "aclocal"),
- "-I", join_path(spec['libtool'].prefix,
- "share", "aclocal")
- )
- configure('--prefix={0}'.format(prefix))
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libgit2/package.py b/var/spack/repos/builtin/packages/libgit2/package.py
new file mode 100644
index 0000000000..9ea82790ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libgit2/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libgit2(CMakePackage):
+ """libgit2 is a portable, pure C implementation of the Git core
+ methods provided as a re-entrant linkable library with a solid
+ API, allowing you to write native speed custom Git applications in
+ any language which supports C bindings.
+ """
+
+ homepage = "https://libgit2.github.com/"
+ url = "https://github.com/libgit2/libgit2/archive/v0.24.2.tar.gz"
+
+ version('0.24.2', '735661b5b73e3c120d13e2bae21e49b3')
+
+ depends_on('cmake@2.8:', type='build')
+ depends_on('libssh2')
diff --git a/var/spack/repos/builtin/packages/libgpg-error/package.py b/var/spack/repos/builtin/packages/libgpg-error/package.py
index a0e2acd516..ea97c9e13e 100644
--- a/var/spack/repos/builtin/packages/libgpg-error/package.py
+++ b/var/spack/repos/builtin/packages/libgpg-error/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,15 @@
from spack import *
-class LibgpgError(Package):
+class LibgpgError(AutotoolsPackage):
"""Libgpg-error is a small library that defines common error
values for all GnuPG components. Among these are GPG, GPGSM,
GPGME, GPG-Agent, libgcrypt, Libksba, DirMngr, Pinentry,
SmartCard Daemon and possibly more in the future. """
homepage = "https://www.gnupg.org/related_software/libgpg-error"
- url = "ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-1.18.tar.bz2"
+ url = "https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.27.tar.bz2"
+ version('1.27', '5217ef3e76a7275a2a3b569a12ddc989')
version('1.21', 'ab0b5aba6d0a185b41d07bda804fd8b2')
version('1.18', '12312802d2065774b787cbfc22cc04e9')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libgpuarray/package.py b/var/spack/repos/builtin/packages/libgpuarray/package.py
new file mode 100644
index 0000000000..3bc1100c81
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libgpuarray/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libgpuarray(CMakePackage):
+ """Make a common GPU ndarray(n dimensions array) that can be reused by all
+ projects that is as future proof as possible, while keeping it easy to use
+ for simple need/quick test."""
+
+ homepage = "http://deeplearning.net/software/libgpuarray/"
+ url = "https://github.com/Theano/libgpuarray/archive/v0.6.1.tar.gz"
+
+ version('0.6.2', '7f163bd5f48f399cd6e608ee3d528ee4')
+ version('0.6.1', 'cfcd1b54447f9d55b05514df62c70ae2')
+ version('0.6.0', '98a4ec1b4c8f225f0b89c18b899a000b')
+
+ depends_on('cuda')
+ depends_on('cmake@3:', type='build')
+
+ extends('python')
diff --git a/var/spack/repos/builtin/packages/libgtextutils/package.py b/var/spack/repos/builtin/packages/libgtextutils/package.py
index 201e031869..be6759e91e 100644
--- a/var/spack/repos/builtin/packages/libgtextutils/package.py
+++ b/var/spack/repos/builtin/packages/libgtextutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,11 @@
from spack import *
-class Libgtextutils(Package):
+class Libgtextutils(AutotoolsPackage):
"""Gordon's Text utils Library."""
homepage = "https://github.com/agordon/libgtextutils"
url = "https://github.com/agordon/libgtextutils/releases/download/0.7/libgtextutils-0.7.tar.gz"
+ patch('text_line_reader.patch')
version('0.7', '593c7c62e3c76ec49f5736eed4f96806')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libgtextutils/text_line_reader.patch b/var/spack/repos/builtin/packages/libgtextutils/text_line_reader.patch
new file mode 100644
index 0000000000..cc9c4cda08
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libgtextutils/text_line_reader.patch
@@ -0,0 +1,10 @@
+--- libgtextutils/src/gtextutils/text_line_reader.cpp.orig 2017-03-09 07:49:56.358283887 -0800
++++ libgtextutils/src/gtextutils/text_line_reader.cpp 2017-03-09 07:50:24.317503887 -0800
+@@ -44,6 +44,6 @@
+ if (input_stream.eof())
+ return false;
+
+- return input_stream ;
++ return static_cast<bool>(input_stream) ;
+ }
+
diff --git a/var/spack/repos/builtin/packages/libharu/package.py b/var/spack/repos/builtin/packages/libharu/package.py
new file mode 100644
index 0000000000..3542582df8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libharu/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Libharu(AutotoolsPackage):
+ """libharu - free PDF library.
+
+ Haru is a free, cross platform, open-sourced software library for
+ generating PDF."""
+
+ homepage = "http://libharu.org"
+ url = "https://github.com/libharu/libharu/archive/RELEASE_2_3_0.tar.gz"
+
+ version('2.3.0', '4f916aa49c3069b3a10850013c507460')
+ version('2.2.0', 'b65a6fc33a0bdad89bec6b7def101f01')
+ version('master', branch='master',
+ git='https://github.com/libharu/libharu.git')
+
+ def autoreconf(self, spec, prefix):
+ """execute their autotools wrapper script"""
+ if os.path.exists('./buildconf.sh'):
+ bash = which('bash')
+ bash('./buildconf.sh', '--force')
+
+ def url_for_version(self, version):
+ url = 'https://github.com/libharu/libharu/archive/RELEASE_{0}.tar.gz'
+ return url.format(version.underscored)
diff --git a/var/spack/repos/builtin/packages/libhio/package.py b/var/spack/repos/builtin/packages/libhio/package.py
index 17bd86d310..db74e7c546 100644
--- a/var/spack/repos/builtin/packages/libhio/package.py
+++ b/var/spack/repos/builtin/packages/libhio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libhio(Package):
+class Libhio(AutotoolsPackage):
"""
A library for writing to hierarchical data store systems.
"""
@@ -35,11 +35,6 @@ class Libhio(Package):
version('1.3.0.1', 'c073541de8dd70aeb8878bd00d6d877f')
- depends_on("libjson-c")
+ depends_on("json-c")
depends_on("bzip2")
depends_on("pkg-config", type="build")
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libice/package.py b/var/spack/repos/builtin/packages/libice/package.py
index 1f6fd2f901..4ffc67ed9c 100644
--- a/var/spack/repos/builtin/packages/libice/package.py
+++ b/var/spack/repos/builtin/packages/libice/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libice(Package):
+class Libice(AutotoolsPackage):
"""libICE - Inter-Client Exchange Library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libICE"
@@ -37,9 +37,3 @@ class Libice(Package):
depends_on('xtrans', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libiconv/package.py b/var/spack/repos/builtin/packages/libiconv/package.py
index 72f67ec80d..1e3d29a4df 100644
--- a/var/spack/repos/builtin/packages/libiconv/package.py
+++ b/var/spack/repos/builtin/packages/libiconv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,13 +31,14 @@ class Libiconv(AutotoolsPackage):
and the iconv program for character set conversion."""
homepage = "https://www.gnu.org/software/libiconv/"
- url = "http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz"
+ url = "http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz"
+ version('1.15', 'ace8b5f2db42f7b3b3057585e80d9808')
version('1.14', 'e34509b1623cec449dfeb73d7ce9c6c6')
# We cannot set up a warning for gets(), since gets() is not part
# of C11 any more and thus might not exist.
- patch("gets.patch")
+ patch('gets.patch', when='@1.14')
def configure_args(self):
args = ['--enable-extra-encodings']
diff --git a/var/spack/repos/builtin/packages/libint/package.py b/var/spack/repos/builtin/packages/libint/package.py
index 2ad5e93191..8fa0906658 100644
--- a/var/spack/repos/builtin/packages/libint/package.py
+++ b/var/spack/repos/builtin/packages/libint/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,25 +25,27 @@
from spack import *
-class Libint(Package):
+class Libint(AutotoolsPackage):
"""Libint is a high-performance library for computing
- Gaussian integrals in quantum mechanics."""
+ Gaussian integrals in quantum mechanics.
+ """
homepage = "https://github.com/evaleev/libint"
- url = "https://github.com/evaleev/libint/archive/v2.1.0.tar.gz"
+ url = "https://github.com/evaleev/libint/archive/v2.1.0.tar.gz"
+ version('2.2.0', 'da37dab862fb0b97a7ed7d007695ef47')
version('2.1.0', 'd0dcb985fe32ddebc78fe571ce37e2d6')
version('1.1.6', '990f67b55f49ecc18f32c58da9240684')
version('1.1.5', '379b7d0718ff398715d6898807adf628')
# Build dependencies
depends_on('autoconf@2.52:', type='build')
- depends_on('automake', type='build')
- depends_on('libtool', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
# Libint 2 dependencies
depends_on('boost', when='@2:')
- depends_on('gmp', when='@2:')
+ depends_on('gmp', when='@2:')
def url_for_version(self, version):
base_url = "https://github.com/evaleev/libint/archive"
@@ -54,26 +56,37 @@ class Libint(Package):
else:
return "{0}/v{1}.tar.gz".format(base_url, version)
- def install(self, spec, prefix):
- # Generate configure
+ def autoreconf(self, spec, prefix):
libtoolize()
aclocal('-I', 'lib/autoconf')
autoconf()
- config_args = [
- '--prefix={0}'.format(prefix),
- '--enable-shared'
- ]
+ @property
+ def optflags(self):
+ flags = '-O2'
# Optimizations for the Intel compiler, suggested by CP2K
- optflags = '-O2'
- if self.compiler.name == 'intel':
- optflags += ' -xAVX -axCORE-AVX2 -ipo'
- if which('xiar'):
- env['AR'] = 'xiar'
+ if '%intel' in self.spec:
+ # -xSSE2 will make it usable on old architecture
+ flags += ' -xSSE2 -xAVX -axCORE-AVX2 -ipo'
- env['CFLAGS'] = optflags
- env['CXXFLAGS'] = optflags
+ return flags
+
+ def setup_environment(self, build_env, run_env):
+ # Set optimization flags
+ build_env.set('CFLAGS', self.optflags)
+ build_env.set('CXXFLAGS', self.optflags)
+
+ # Change AR to xiar if we compile with Intel and we
+ # find the executable
+ if '%intel' in self.spec and which('xiar'):
+ build_env.set('AR', 'xiar')
+
+ def configure_args(self):
+
+ config_args = ['--enable-shared']
+
+ optflags = self.optflags
# Optimization flag names have changed in libint 2
if self.version < Version('2.0.0'):
@@ -93,12 +106,4 @@ class Libint(Package):
'--with-libint-max-am=5',
'--with-libderiv-max-am1=4'
])
-
- configure(*config_args)
- make()
-
- # Testing suite was added in libint 2
- if self.version >= Version('2.0.0'):
- make('check')
-
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/libjpeg-turbo/package.py b/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
index 3fe159d7b9..2264147362 100644
--- a/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
+++ b/var/spack/repos/builtin/packages/libjpeg-turbo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class LibjpegTurbo(Package):
+class LibjpegTurbo(AutotoolsPackage):
"""libjpeg-turbo is a fork of the original IJG libjpeg which uses SIMD to
accelerate baseline JPEG compression and decompression. libjpeg is a
library that implements JPEG image encoding, decoding and
@@ -37,14 +37,11 @@ class LibjpegTurbo(Package):
version('1.5.0', '3fc5d9b6a8bce96161659ae7a9939257')
version('1.3.1', '2c3a68129dac443a72815ff5bb374b05')
+ provides('jpeg')
+
# Can use either of these. But in the current version of the package
# only nasm is used. In order to use yasm an environmental variable
# NASM must be set.
# TODO: Implement the selection between two supported assemblers.
# depends_on("yasm", type='build')
depends_on("nasm", type='build')
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/jpeg/package.py b/var/spack/repos/builtin/packages/libjpeg/package.py
index 594240d950..bd789200cb 100644
--- a/var/spack/repos/builtin/packages/jpeg/package.py
+++ b/var/spack/repos/builtin/packages/libjpeg/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Jpeg(Package):
+class Libjpeg(AutotoolsPackage):
"""libjpeg is a widely used free library with functions for handling the
JPEG image data format. It implements a JPEG codec (encoding and decoding)
alongside various utilities for handling JPEG data."""
@@ -36,9 +36,4 @@ class Jpeg(Package):
version('9b', '6a9996ce116ec5c52b4870dbcd6d3ddb')
version('9a', '3353992aecaee1805ef4109aadd433e7')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
-
- make()
- make("test")
- make("install")
+ provides('jpeg')
diff --git a/var/spack/repos/builtin/packages/libksba/package.py b/var/spack/repos/builtin/packages/libksba/package.py
new file mode 100644
index 0000000000..a9f498e3d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libksba/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libksba(AutotoolsPackage):
+ """Libksba is a library to make the tasks of working with X.509
+ certificates, CMS data and related objects more easy. """
+
+ homepage = "https://gnupg.org/software/libksba/index.html"
+ url = "https://gnupg.org/ftp/gcrypt/libksba/libksba-1.3.5.tar.bz2"
+
+ version('1.3.5', '8302a3e263a7c630aa7dea7d341f07a2')
+
+ depends_on('libgpg-error')
+
+ def configure_args(self):
+ args = ['--with-libgpp-error=%s' % self.spec['libgpg-error'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/liblbxutil/package.py b/var/spack/repos/builtin/packages/liblbxutil/package.py
index 1de59defd6..90be9b3cdd 100644
--- a/var/spack/repos/builtin/packages/liblbxutil/package.py
+++ b/var/spack/repos/builtin/packages/liblbxutil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Liblbxutil(Package):
+class Liblbxutil(AutotoolsPackage):
"""liblbxutil - Low Bandwith X extension (LBX) utility routines."""
homepage = "http://cgit.freedesktop.org/xorg/lib/liblbxutil"
@@ -43,9 +43,3 @@ class Liblbxutil(Package):
# undefined symbol: Xalloc
# See https://bugs.freedesktop.org/show_bug.cgi?id=8421
# Adding a dependency on libxdmcp and adding LIBS=-lXdmcp did not fix it
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libmatheval/package.py b/var/spack/repos/builtin/packages/libmatheval/package.py
new file mode 100644
index 0000000000..f0992c4b42
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmatheval/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libmatheval(AutotoolsPackage):
+ """GNU libmatheval is a library (callable from C and Fortran) to parse
+ and evaluate symbolic expressions input as text. It supports expressions
+ in any number of variables of arbitrary names, decimal and symbolic
+ constants, basic unary and binary operators, and elementary mathematical
+ functions. In addition to parsing and evaluation, libmatheval can also
+ compute symbolic derivatives and output expressions to strings."""
+
+ homepage = "https://www.gnu.org/software/libmatheval/"
+ url = "https://ftp.gnu.org/gnu/libmatheval/libmatheval-1.1.11.tar.gz"
+
+ version('1.1.11', '595420ea60f6ddd75623847f46ca45c4')
+
+ # Only needed for unit tests, but configure crashes without it
+ depends_on('guile', type='build')
diff --git a/var/spack/repos/builtin/packages/libmesh/package.py b/var/spack/repos/builtin/packages/libmesh/package.py
index 6ceef8dbf6..20603a6589 100644
--- a/var/spack/repos/builtin/packages/libmesh/package.py
+++ b/var/spack/repos/builtin/packages/libmesh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/libmng/package.py b/var/spack/repos/builtin/packages/libmng/package.py
index a77aada79c..95542361ef 100644
--- a/var/spack/repos/builtin/packages/libmng/package.py
+++ b/var/spack/repos/builtin/packages/libmng/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,14 @@
from spack import *
-class Libmng(Package):
+class Libmng(AutotoolsPackage):
"""libmng -THE reference library for reading, displaying, writing
and examining Multiple-Image Network Graphics. MNG is the animation
extension to the popular PNG image-format."""
homepage = "http://sourceforge.net/projects/libmng/"
- url = "http://downloads.sourceforge.net/project/libmng/libmng-devel/2.0.2/libmng-2.0.2.tar.gz"
+ url = "http://downloads.sourceforge.net/project/libmng/libmng-devel/2.0.3/libmng-2.0.3.tar.gz"
+ version('2.0.3', '7e9a12ba2a99dff7e736902ea07383d4')
version('2.0.2', '1ffefaed4aac98475ee6267422cbca55')
depends_on("jpeg")
@@ -39,11 +40,15 @@ class Libmng(Package):
depends_on("lcms")
def patch(self):
- # jpeg requires stdio to beincluded before its headrs.
+ # jpeg requires stdio to be included before its headers.
filter_file(r'^(\#include \<jpeglib\.h\>)',
'#include<stdio.h>\n\\1', 'libmng_types.h')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ @run_before('configure')
+ def clean_configure_directory(self):
+ """Without this, configure crashes with:
+
+ configure: error: source directory already configured;
+ run "make distclean" there first
+ """
+ make('distclean')
diff --git a/var/spack/repos/builtin/packages/libmongoc/package.py b/var/spack/repos/builtin/packages/libmongoc/package.py
new file mode 100644
index 0000000000..5050dd0336
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libmongoc/package.py
@@ -0,0 +1,72 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libmongoc(AutotoolsPackage):
+ """libmongoc is a client library written in C for MongoDB."""
+
+ homepage = "https://github.com/mongodb/mongo-c-driver"
+ url = "https://github.com/mongodb/mongo-c-driver/releases/download/1.7.0/mongo-c-driver-1.7.0.tar.gz"
+
+ version('1.8.0', '8c271a16ff30f6d4f5e134f699f7360f')
+ version('1.7.0', '21acf3584e92631422bc91e9e3cf4f76')
+ version('1.6.3', '0193610cf1d98aae7008f272a1000972')
+ version('1.6.2', 'aac86df153282cda1e4905cca181631a')
+ version('1.6.1', '826946de9a15f7f453aefecdc76b1c0d')
+
+ variant('ssl', default=True, description='Enable SSL support.')
+ variant('snappy', default=True, description='Enable Snappy support.')
+ variant('zlib', default=True, description='Enable zlib support.')
+
+ depends_on('libbson')
+
+ depends_on('openssl', when='+ssl')
+ depends_on('snappy', when='+snappy')
+ depends_on('zlib', when='+zlib')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ '--disable-automatic-init-and-cleanup',
+ '--with-libbson=system'
+ ]
+
+ if '+ssl' in spec:
+ args.append('--enable-ssl=openssl')
+ else:
+ args.append('--enable-ssl=no')
+
+ if spec.satisfies('@1.7.0:'):
+ # --with-{snappy,zlib}=system are currently broken and cause
+ # configure to not find the dependencies. We still want to
+ # explicitly disable them when appropriate.
+ if '+snappy' not in spec:
+ args.append('--with-snappy=no')
+ if '+zlib' not in spec:
+ args.append('--with-zlib=no')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/libmonitor/package.py b/var/spack/repos/builtin/packages/libmonitor/package.py
index f680baa265..7ec87ca453 100644
--- a/var/spack/repos/builtin/packages/libmonitor/package.py
+++ b/var/spack/repos/builtin/packages/libmonitor/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libmonitor(Package):
+class Libmonitor(AutotoolsPackage):
"""Libmonitor is a library for process and thread control."""
homepage = "https://github.com/HPCToolkit/libmonitor"
version('20130218', git='https://github.com/HPCToolkit/libmonitor.git',
@@ -36,8 +36,3 @@ class Libmonitor(Package):
patch('libmonitorkrell-0000.patch', when='@20130218+krellpatch')
patch('libmonitorkrell-0001.patch', when='@20130218+krellpatch')
patch('libmonitorkrell-0002.patch', when='@20130218+krellpatch')
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libnbc/package.py b/var/spack/repos/builtin/packages/libnbc/package.py
index 414498a37a..67ac5da744 100644
--- a/var/spack/repos/builtin/packages/libnbc/package.py
+++ b/var/spack/repos/builtin/packages/libnbc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libnbc(Package):
+class Libnbc(AutotoolsPackage):
"""LibNBC is a prototypic implementation of a nonblocking
interface for MPI collective operations. Based on ANSI C and
MPI-1, it supports all MPI-1 collective operations in a
@@ -37,8 +37,3 @@ class Libnbc(Package):
version('1.1.1', 'ece5c94992591a9fa934a90e5dbe50ce')
depends_on("mpi")
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libogg/package.py b/var/spack/repos/builtin/packages/libogg/package.py
new file mode 100644
index 0000000000..e2c38e7759
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libogg/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libogg(AutotoolsPackage):
+ """Ogg is a multimedia container format, and the native file and stream
+ format for the Xiph.org multimedia codecs."""
+
+ homepage = "https://www.xiph.org/ogg/"
+ url = "http://downloads.xiph.org/releases/ogg/libogg-1.3.2.tar.gz"
+
+ version('1.3.2', 'b72e1a1dbadff3248e4ed62a4177e937')
diff --git a/var/spack/repos/builtin/packages/liboldx/package.py b/var/spack/repos/builtin/packages/liboldx/package.py
index 9e85f1ed65..f03e0bfe88 100644
--- a/var/spack/repos/builtin/packages/liboldx/package.py
+++ b/var/spack/repos/builtin/packages/liboldx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Liboldx(Package):
+class Liboldx(AutotoolsPackage):
"""X version 10 backwards compatibility."""
homepage = "https://cgit.freedesktop.org/xorg/lib/liboldX/"
@@ -37,9 +37,3 @@ class Liboldx(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libpcap/package.py b/var/spack/repos/builtin/packages/libpcap/package.py
new file mode 100644
index 0000000000..02221b371e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libpcap/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libpcap(AutotoolsPackage):
+ "libpcap is a portable library in C/C++ for packet capture"
+ homepage = "http://www.tcpdump.org/"
+ list_url = "http://www.tcpdump.org/release/"
+ url = "http://www.tcpdump.org/release/libpcap-1.8.1.tar.gz"
+
+ version('1.8.1', '3d48f9cd171ff12b0efd9134b52f1447')
diff --git a/var/spack/repos/builtin/packages/libpciaccess/package.py b/var/spack/repos/builtin/packages/libpciaccess/package.py
index f4a3cf7157..7c4efde8ca 100644
--- a/var/spack/repos/builtin/packages/libpciaccess/package.py
+++ b/var/spack/repos/builtin/packages/libpciaccess/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,15 @@
from spack import *
-class Libpciaccess(Package):
+class Libpciaccess(AutotoolsPackage):
"""Generic PCI access library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libpciaccess/"
- url = "http://xorg.freedesktop.org/archive/individual/lib/libpciaccess-0.13.4.tar.gz"
+ url = "http://xorg.freedesktop.org/archive/individual/lib/libpciaccess-0.13.5.tar.gz"
+ version('0.13.5', '81468664fde96d1df2c3216fdf3c4a20')
version('0.13.4', 'cc1fad87da60682af1d5fa43a5da45a4')
depends_on('libtool', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- # libpciaccess does not support OS X
- if spec.satisfies('platform=darwin'):
- # create a dummy directory
- mkdir(prefix.lib)
- return
-
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libpfm4/package.py b/var/spack/repos/builtin/packages/libpfm4/package.py
new file mode 100644
index 0000000000..3e30ead2dc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libpfm4/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libpfm4(MakefilePackage):
+ """libpfm4 is a userspace library to help
+ setup performance events for use with
+ the perf_events Linux kernel interface."""
+
+ homepage = "http://perfmon2.sourceforge.net"
+ url = "https://downloads.sourceforge.net/project/perfmon2/libpfm4/libpfm-4.8.0.tar.gz"
+
+ version('4.8.0', '730383896db92e12fb2cc10f2d41dd43')
+
+ # Fails to build libpfm4 with intel compiler version 16 and 17
+ conflicts('%intel@16:17')
+
+ @property
+ def install_targets(self):
+ return ['DESTDIR={0}'.format(self.prefix),
+ 'LIBDIR=/lib',
+ 'INCDIR=/include',
+ 'MANDIR=/man',
+ 'LDCONFIG=true',
+ 'install']
diff --git a/var/spack/repos/builtin/packages/libpipeline/package.py b/var/spack/repos/builtin/packages/libpipeline/package.py
new file mode 100644
index 0000000000..a242862b34
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libpipeline/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libpipeline(AutotoolsPackage):
+ """libpipeline is a C library for manipulating pipelines of subprocesses
+ in a flexible and convenient way."""
+
+ homepage = "http://libpipeline.nongnu.org/"
+ url = "http://git.savannah.nongnu.org/cgit/libpipeline.git/snapshot/libpipeline-1.4.2.tar.gz"
+
+ version('1.4.2', '30cec7bcd6fee723adea6a54389f3da2')
+
+ depends_on('pkg-config', type='build')
+ # TODO: Add a 'test' deptype
+ # See https://github.com/spack/spack/issues/1279
+ # depends_on('check', type='test')
diff --git a/var/spack/repos/builtin/packages/libpng/package.py b/var/spack/repos/builtin/packages/libpng/package.py
index 46bbcebb89..a328bd44f8 100644
--- a/var/spack/repos/builtin/packages/libpng/package.py
+++ b/var/spack/repos/builtin/packages/libpng/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,11 @@ class Libpng(AutotoolsPackage):
"""libpng is the official PNG reference library."""
homepage = "http://www.libpng.org/pub/png/libpng.html"
- url = "http://download.sourceforge.net/libpng/libpng-1.6.27.tar.gz"
+ url = "http://download.sourceforge.net/libpng/libpng-1.6.29.tar.gz"
+ list_url = "https://sourceforge.net/projects/libpng/files/"
+ list_depth = 2
+ version('1.6.29', '68553080685f812d1dd7a6b8215c37d8')
version('1.6.27', '58698519e9f6126c1caeefc28dbcbd5f')
# From http://www.libpng.org/pub/png/libpng.html (2017-01-04)
# Virtually all libpng versions through 1.6.26, 1.5.27,
@@ -48,3 +51,13 @@ class Libpng(AutotoolsPackage):
version('1.2.57', 'dfcda3603e29dcc11870c48f838ef75b')
depends_on('zlib@1.0.4:') # 1.2.5 or later recommended
+
+ def configure_args(self):
+ args = [
+ # not honored, see
+ # https://sourceforge.net/p/libpng/bugs/210/#33f1
+ # '--with-zlib=' + self.spec['zlib'].prefix,
+ 'CFLAGS={0}'.format(self.spec['zlib'].headers.include_flags),
+ 'LDFLAGS={0}'.format(self.spec['zlib'].libs.search_flags)
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/libpsl/package.py b/var/spack/repos/builtin/packages/libpsl/package.py
new file mode 100644
index 0000000000..75722c63fd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libpsl/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libpsl(AutotoolsPackage):
+ """libpsl - C library to handle the Public Suffix List."""
+
+ homepage = "https://github.com/rockdaboot/libpsl"
+ url = "https://github.com/rockdaboot/libpsl/releases/download/libpsl-0.17.0/libpsl-0.17.0.tar.gz"
+
+ version('0.17.0', 'fed13f33d0d6dc13ef24de255630bfcb')
+
+ depends_on('icu4c')
+
+ depends_on('gettext', type='build')
+ depends_on('pkg-config@0.9.0:', type='build')
+ depends_on('python@2.7:', type='build')
+
+ depends_on('valgrind~mpi~boost', type='test')
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ 'PYTHON={0}'.format(spec['python'].command.path),
+ ]
+
+ if self.run_tests:
+ args.append('--enable-valgrind-tests')
+ else:
+ args.append('--disable-valgrind-tests')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/libpthread-stubs/package.py b/var/spack/repos/builtin/packages/libpthread-stubs/package.py
index fdaf327c2a..286120d908 100644
--- a/var/spack/repos/builtin/packages/libpthread-stubs/package.py
+++ b/var/spack/repos/builtin/packages/libpthread-stubs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,12 @@
from spack import *
-class LibpthreadStubs(Package):
+class LibpthreadStubs(AutotoolsPackage):
"""The libpthread-stubs package provides weak aliases for pthread
functions not provided in libc or otherwise available by default."""
homepage = "https://xcb.freedesktop.org/"
- url = "https://xcb.freedesktop.org/dist/libpthread-stubs-0.3.tar.gz"
+ url = "https://xcb.freedesktop.org/dist/libpthread-stubs-0.4.tar.gz"
+ version('0.4', '7d2734e604a3e2f6f665c420b835ab62')
version('0.3', 'a09d928c4af54fe5436002345ef71138')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/libquo/package.py b/var/spack/repos/builtin/packages/libquo/package.py
index 8856913bb2..08006c4295 100644
--- a/var/spack/repos/builtin/packages/libquo/package.py
+++ b/var/spack/repos/builtin/packages/libquo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,20 +23,19 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class Libquo(Package):
- """A high-level, easy to use programming interface tailored specifically
- for MPI/MPI+X codes that may benefit from evolving process binding
- policies during their execution. QUO allows for arbitrary process binding
- policies to be enacted and reverted during the execution of an MPI/MPI+X
- application as different computational phases are entered and exited,
- respectively."""
+class Libquo(AutotoolsPackage):
- homepage = "https://github.com/losalamos/libquo"
- url = "https://github.com/losalamos/libquo/archive/v1.2.9.tar.gz"
+ """QUO (as in "status quo") is a runtime library that aids in accommodating
+ thread-level heterogeneity in dynamic, phased MPI+X applications comprising
+ single- and multi-threaded libraries."""
+ homepage = "https://github.com/lanl/libquo"
+ url = "https://github.com/lanl/libquo/archive/v1.2.9.tar.gz"
+
+ version('develop', git='https://github.com/lanl/libquo', branch='master')
+ version('1.3', '3ff74162837425a15ecf695ca0201e4a')
version('1.2.9', 'ca82ab33f13e2b89983f81e7c02e98c2')
depends_on('mpi')
@@ -44,25 +43,8 @@ class Libquo(Package):
depends_on('automake', type='build')
depends_on('libtool', type='build')
- def install(self, spec, prefix):
- autoreconf_options = [
- '--install',
- '--verbose',
- '--force',
- '-I', 'config',
- '-I', os.path.join(spec['automake'].prefix,
- 'share', 'aclocal'),
- '-I', os.path.join(spec['libtool'].prefix,
- 'share', 'aclocal')
- ]
- autoreconf(*autoreconf_options)
-
- configure_options = [
- '--prefix={0}'.format(prefix),
- 'CC=%s' % join_path(spec['mpi'].prefix.bin, "mpicc"),
- 'FC=%s' % join_path(spec['mpi'].prefix.bin, "mpif90")
+ def configure_args(self):
+ return [
+ 'CC={0}'.format(self.spec['mpi'].mpicc),
+ 'FC={0}'.format(self.spec['mpi'].mpifc)
]
- configure(*configure_options)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libsigsegv/package.py b/var/spack/repos/builtin/packages/libsigsegv/package.py
index a5a3e8eb5f..f13710bff9 100644
--- a/var/spack/repos/builtin/packages/libsigsegv/package.py
+++ b/var/spack/repos/builtin/packages/libsigsegv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,10 +29,11 @@ class Libsigsegv(AutotoolsPackage):
"""GNU libsigsegv is a library for handling page faults in user mode."""
homepage = "https://www.gnu.org/software/libsigsegv/"
- url = "ftp://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.10.tar.gz"
+ url = "https://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.11.tar.gz"
patch('patch.new_config_guess', when='@2.10')
+ version('2.11', 'a812d9481f6097f705599b218eea349f')
version('2.10', '7f96fb1f65b3b8cbc1582fb7be774f0f')
def configure_args(self):
diff --git a/var/spack/repos/builtin/packages/libsm/package.py b/var/spack/repos/builtin/packages/libsm/package.py
index 4affd50127..602f5daa56 100644
--- a/var/spack/repos/builtin/packages/libsm/package.py
+++ b/var/spack/repos/builtin/packages/libsm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libsm(Package):
+class Libsm(AutotoolsPackage):
"""libSM - X Session Management Library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libSM"
@@ -39,9 +39,3 @@ class Libsm(Package):
depends_on('xtrans', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libsodium/package.py b/var/spack/repos/builtin/packages/libsodium/package.py
index 805881ce07..e62319e439 100644
--- a/var/spack/repos/builtin/packages/libsodium/package.py
+++ b/var/spack/repos/builtin/packages/libsodium/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,12 +25,15 @@
from spack import *
-class Libsodium(Package):
+class Libsodium(AutotoolsPackage):
"""Sodium is a modern, easy-to-use software library for encryption,
decryption, signatures, password hashing and more."""
homepage = "https://download.libsodium.org/doc/"
- url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.11.tar.gz"
+ url = "https://download.libsodium.org/libsodium/releases/libsodium-1.0.13.tar.gz"
+ list_url = "https://download.libsodium.org/libsodium/releases/old"
+ version('1.0.13', 'f38aac160a4bd05f06f743863e54e499')
+ version('1.0.12', 'c308e3faa724b630b86cc0aaf887a5d4')
version('1.0.11', 'b58928d035064b2a46fb564937b83540')
version('1.0.10', 'ea89dcbbda0b2b6ff6a1c476231870dd')
version('1.0.3', 'b3bcc98e34d3250f55ae196822307fab')
@@ -42,11 +45,7 @@ class Libsodium(Package):
def url_for_version(self, version):
url = 'https://download.libsodium.org/libsodium/releases/'
if version < Version('1.0.4'):
+ url += 'old/unsupported/'
+ elif version < Version('1.0.12'):
url += 'old/'
return url + 'libsodium-{0}.tar.gz'.format(version)
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libspatialindex/package.py b/var/spack/repos/builtin/packages/libspatialindex/package.py
index 5dd839a7c3..69183c8131 100644
--- a/var/spack/repos/builtin/packages/libspatialindex/package.py
+++ b/var/spack/repos/builtin/packages/libspatialindex/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/libsplash/package.py b/var/spack/repos/builtin/packages/libsplash/package.py
index c87dae19be..b710dae58c 100644
--- a/var/spack/repos/builtin/packages/libsplash/package.py
+++ b/var/spack/repos/builtin/packages/libsplash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libsplash(Package):
+class Libsplash(CMakePackage):
"""libSplash aims at developing a HDF5-based I/O library for HPC
simulations. It is created as an easy-to-use frontend for the standard HDF5
library with support for MPI processes in a cluster environment. While the
@@ -37,7 +37,7 @@ class Libsplash(Package):
homepage = "https://github.com/ComputationalRadiationPhysics/libSplash"
url = "https://github.com/ComputationalRadiationPhysics/libSplash/archive/v1.4.0.tar.gz"
- version('dev', branch='dev',
+ version('develop', branch='dev',
git='https://github.com/ComputationalRadiationPhysics/libSplash.git')
version('master', branch='master',
git='https://github.com/ComputationalRadiationPhysics/libSplash.git')
@@ -50,15 +50,6 @@ class Libsplash(Package):
variant('mpi', default=True,
description='Enable parallel I/O (one-file aggregation) support')
- depends_on('cmake', type='build')
depends_on('hdf5@1.8.6:')
depends_on('hdf5+mpi', when='+mpi')
depends_on('mpi', when='+mpi')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '..', *std_cmake_args)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libssh2/package.py b/var/spack/repos/builtin/packages/libssh2/package.py
new file mode 100644
index 0000000000..030e7aeab5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libssh2/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libssh2(CMakePackage):
+ """libssh2 is a client-side C library implementing the SSH2 protocol"""
+
+ homepage = "https://www.libssh2.org/"
+ url = "https://www.libssh2.org/download/libssh2-1.7.0.tar.gz"
+
+ version('1.7.0', 'b01662a210e94cccf2f76094db7dac5c')
+ version('1.4.3', '071004c60c5d6f90354ad1b701013a0b') # CentOS7
+
+ variant('shared', default=True,
+ description="Build shared libraries")
+
+ depends_on('cmake@2.8.11:', type='build')
+ depends_on('openssl')
+ depends_on('zlib')
+ depends_on('xz')
+
+ def cmake_args(self):
+ spec = self.spec
+ return [
+ '-DBUILD_SHARED_LIBS=%s' % ('YES' if '+shared' in spec else 'NO')]
diff --git a/var/spack/repos/builtin/packages/libsvm/package.py b/var/spack/repos/builtin/packages/libsvm/package.py
new file mode 100644
index 0000000000..564775c91c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libsvm/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libsvm(MakefilePackage):
+ """Libsvm is a simple, easy-to-use, and efficient software for SVM
+ classification and regression."""
+
+ homepage = "https://www.csie.ntu.edu.tw/~cjlin/libsvm/"
+ url = "https://github.com/cjlin1/libsvm/archive/v322.tar.gz"
+
+ version('322', 'd9617d29efad013573f63ca9a517f490')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.lib)
+ install('svm-predict', prefix.bin)
+ install('svm-scale', prefix.bin)
+ install('svm-train', prefix.bin)
+ install('svm.o', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/szip/package.py b/var/spack/repos/builtin/packages/libszip/package.py
index 91934f7d03..2f4b570fec 100644
--- a/var/spack/repos/builtin/packages/szip/package.py
+++ b/var/spack/repos/builtin/packages/libszip/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Szip(AutotoolsPackage):
+class Libszip(AutotoolsPackage):
"""Szip is an implementation of the extended-Rice lossless
compression algorithm.
@@ -33,13 +33,20 @@ class Szip(AutotoolsPackage):
provided with HDF software products.
"""
- homepage = "https://www.hdfgroup.org/doc_resource/SZIP/"
- url = "http://www.hdfgroup.org/ftp/lib-external/szip/2.1/src/szip-2.1.tar.gz"
+ homepage = "https://support.hdfgroup.org/doc_resource/SZIP/"
+ url = "https://support.hdfgroup.org/ftp/lib-external/szip/2.1.1/src/szip-2.1.1.tar.gz"
+ list_url = "https://support.hdfgroup.org/ftp/lib-external/szip"
+ list_depth = 2
- version('2.1', '902f831bcefb69c6b635374424acbead')
+ provides('szip')
+
+ version('2.1.1', 'dd579cf0f26d44afd10a0ad7291fc282')
+ version('2.1', '902f831bcefb69c6b635374424acbead')
def configure_args(self):
- return ['--enable-production',
- '--enable-shared',
- '--enable-static',
- '--enable-encoding']
+ return [
+ '--enable-production',
+ '--enable-shared',
+ '--enable-static',
+ '--enable-encoding',
+ ]
diff --git a/var/spack/repos/builtin/packages/libtermkey/package.py b/var/spack/repos/builtin/packages/libtermkey/package.py
index 64688505c4..6b8b6b58bd 100644
--- a/var/spack/repos/builtin/packages/libtermkey/package.py
+++ b/var/spack/repos/builtin/packages/libtermkey/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,6 +36,9 @@ class Libtermkey(Package):
version('0.15b', '27689756e6c86c56ae454f2ac259bc3d')
version('0.14', 'e08ce30f440f9715c459060e0e048978')
+ depends_on('libtool', type='build')
+ depends_on('ncurses')
+
def install(self, spec, prefix):
make()
make("install", "PREFIX=" + prefix)
diff --git a/var/spack/repos/builtin/packages/libtiff/package.py b/var/spack/repos/builtin/packages/libtiff/package.py
index 70c371b3b8..a28d553429 100644
--- a/var/spack/repos/builtin/packages/libtiff/package.py
+++ b/var/spack/repos/builtin/packages/libtiff/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,8 +28,10 @@ from spack import *
class Libtiff(AutotoolsPackage):
"""libtiff graphics format library"""
homepage = "http://www.simplesystems.org/libtiff/"
- url = "ftp://download.osgeo.org/libtiff/tiff-4.0.3.tar.gz"
+ url = "http://download.osgeo.org/libtiff/tiff-4.0.8.tar.gz"
+ version('4.0.8', '2a7d1c1318416ddf36d5f6fa4600069b')
+ version('4.0.7', '77ae928d2c6b7fb46a21c3a29325157b')
version('4.0.6', 'd1d2e940dea0b5ad435f21f03d96dd72')
version('4.0.3', '051c1068e6a0627f461948c365290410')
diff --git a/var/spack/repos/builtin/packages/libtool/package.py b/var/spack/repos/builtin/packages/libtool/package.py
index cd12503681..eca530ce0c 100644
--- a/var/spack/repos/builtin/packages/libtool/package.py
+++ b/var/spack/repos/builtin/packages/libtool/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,9 +36,15 @@ class Libtool(AutotoolsPackage):
depends_on('m4@1.4.6:', type='build')
+ build_directory = 'spack-build'
+
def _make_executable(self, name):
return Executable(join_path(self.prefix.bin, name))
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.append_path('ACLOCAL_PATH',
+ join_path(self.prefix.share, 'aclocal'))
+
def setup_dependent_package(self, module, dependent_spec):
# Automake is very likely to be a build dependency,
# so we add the tools it provides to the dependent module
diff --git a/var/spack/repos/builtin/packages/libunistring/package.py b/var/spack/repos/builtin/packages/libunistring/package.py
index 5b8837e72b..a4250bc8ee 100644
--- a/var/spack/repos/builtin/packages/libunistring/package.py
+++ b/var/spack/repos/builtin/packages/libunistring/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,12 @@
from spack import *
-class Libunistring(Package):
+class Libunistring(AutotoolsPackage):
"""This library provides functions for manipulating Unicode strings
and for manipulating C strings according to the Unicode standard."""
homepage = "https://www.gnu.org/software/libunistring/"
- url = "http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.6.tar.xz"
+ url = "http://ftp.gnu.org/gnu/libunistring/libunistring-0.9.7.tar.xz"
+ version('0.9.7', '82e0545363d111bfdfec2ddbfe62ffd3')
version('0.9.6', 'cb09c398020c27edac10ca590e9e9ef3')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- # make('check') # test-verify fails for me, contacted developers
- make('install')
diff --git a/var/spack/repos/builtin/packages/libunwind/package.py b/var/spack/repos/builtin/packages/libunwind/package.py
index 63ab4aec59..9c8c0574b1 100644
--- a/var/spack/repos/builtin/packages/libunwind/package.py
+++ b/var/spack/repos/builtin/packages/libunwind/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Libunwind(Package):
+class Libunwind(AutotoolsPackage):
"""A portable and efficient C programming interface (API) to determine
the call-chain of a program."""
homepage = "http://www.nongnu.org/libunwind/"
url = "http://download.savannah.gnu.org/releases/libunwind/libunwind-1.1.tar.gz"
version('1.1', 'fb4ea2f6fbbe45bf032cd36e586883ce')
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libuuid/package.py b/var/spack/repos/builtin/packages/libuuid/package.py
index b8f6b1cc3a..750730b6ed 100644
--- a/var/spack/repos/builtin/packages/libuuid/package.py
+++ b/var/spack/repos/builtin/packages/libuuid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,10 @@
from spack import *
-class Libuuid(Package):
+class Libuuid(AutotoolsPackage):
"""Portable uuid C library"""
homepage = "http://sourceforge.net/projects/libuuid/"
url = "http://downloads.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flibuuid%2F&ts=1433881396&use_mirror=iweb"
version('1.0.3', 'd44d866d06286c08ba0846aba1086d68')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/libuv/package.py b/var/spack/repos/builtin/packages/libuv/package.py
index dae10809f2..d88b2306aa 100644
--- a/var/spack/repos/builtin/packages/libuv/package.py
+++ b/var/spack/repos/builtin/packages/libuv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libuv(Package):
+class Libuv(AutotoolsPackage):
"""Multi-platform library with a focus on asynchronous IO"""
homepage = "http://libuv.org"
url = "https://github.com/libuv/libuv/archive/v1.9.0.tar.gz"
@@ -36,11 +36,8 @@ class Libuv(Package):
depends_on('autoconf', type='build')
depends_on('libtool', type='build')
- def install(self, spec, prefix):
+ def autoreconf(self, spec, prefix):
+ # This is needed because autogen.sh generates on-the-fly
+ # an m4 macro needed during configuration
bash = which("bash")
bash('autogen.sh')
- configure('--prefix=%s' % prefix)
-
- make()
- make("check")
- make("install")
diff --git a/var/spack/repos/builtin/packages/libvorbis/package.py b/var/spack/repos/builtin/packages/libvorbis/package.py
new file mode 100644
index 0000000000..6a3561fb1a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libvorbis/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libvorbis(AutotoolsPackage):
+ """Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for mid to high quality (8kHz-
+ 48.0kHz, 16+ bit, polyphonic) audio and music at fixed and variable
+ bitrates from 16 to 128 kbps/channel."""
+
+ homepage = "https://xiph.org/vorbis/"
+ url = "http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.gz"
+
+ version('1.3.5', '7220e089f3be3412a2317d6fde9e3944')
+
+ depends_on('libogg')
+
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ # `make check` crashes when run in parallel
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/libvterm/package.py b/var/spack/repos/builtin/packages/libvterm/package.py
index 2e1ef99b98..5ed4d0b74e 100644
--- a/var/spack/repos/builtin/packages/libvterm/package.py
+++ b/var/spack/repos/builtin/packages/libvterm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/libwebsockets/package.py b/var/spack/repos/builtin/packages/libwebsockets/package.py
index 3ce58a4c36..0b02793554 100644
--- a/var/spack/repos/builtin/packages/libwebsockets/package.py
+++ b/var/spack/repos/builtin/packages/libwebsockets/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,8 @@ class Libwebsockets(CMakePackage):
homepage = "https://github.com/warmcat/libwebsockets"
url = "https://github.com/warmcat/libwebsockets/archive/v2.1.0.tar.gz"
+ version('2.2.1', '1f641cde2ab3687db3d553f68fe0f620')
+ version('2.1.1', '674684ffb90d4a0bcf7a075eb7b90192')
version('2.1.0', '4df3be57dee43aeebd54a3ed56568f50')
version('2.0.3', 'a025156d606d90579e65d53ccd062a94')
version('1.7.9', '7b3692ead5ae00fd0e1d56c080170f07')
diff --git a/var/spack/repos/builtin/packages/libwindowswm/package.py b/var/spack/repos/builtin/packages/libwindowswm/package.py
index 3836e0d419..ffbff1f652 100644
--- a/var/spack/repos/builtin/packages/libwindowswm/package.py
+++ b/var/spack/repos/builtin/packages/libwindowswm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libwindowswm(Package):
+class Libwindowswm(AutotoolsPackage):
"""WindowsWM - Cygwin/X rootless window management extension.
WindowsWM is a simple library designed to interface with the
@@ -45,9 +45,3 @@ class Libwindowswm(Package):
depends_on('windowswmproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libx11/package.py b/var/spack/repos/builtin/packages/libx11/package.py
index c5df2e0f83..9658fab352 100644
--- a/var/spack/repos/builtin/packages/libx11/package.py
+++ b/var/spack/repos/builtin/packages/libx11/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,27 +25,22 @@
from spack import *
-class Libx11(Package):
+class Libx11(AutotoolsPackage):
"""libX11 - Core X11 protocol client library."""
homepage = "https://www.x.org/"
- url = "https://www.x.org/archive/individual/lib/libX11-1.6.3.tar.gz"
+ url = "https://www.x.org/archive/individual/lib/libX11-1.6.5.tar.gz"
+ version('1.6.5', '300b5831916ffcc375468431d856917e')
version('1.6.3', '7d16653fe7c36209799175bb3dc1ae46')
depends_on('libxcb@1.1.92:')
depends_on('xproto@7.0.17:', type='build')
- depends_on('xextproto', type='build')
+ depends_on('xextproto', type=('build', 'link'))
depends_on('xtrans', type='build')
- depends_on('kbproto', type='build')
+ depends_on('kbproto', type=('build', 'link'))
depends_on('inputproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
+ depends_on('perl', type='build')
diff --git a/var/spack/repos/builtin/packages/libxau/package.py b/var/spack/repos/builtin/packages/libxau/package.py
index eb1f1326c6..64f9a3a526 100644
--- a/var/spack/repos/builtin/packages/libxau/package.py
+++ b/var/spack/repos/builtin/packages/libxau/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxau(Package):
+class Libxau(AutotoolsPackage):
"""The libXau package contains a library implementing the X11
Authorization Protocol. This is useful for restricting client
access to the display."""
@@ -35,13 +35,6 @@ class Libxau(Package):
version('1.0.8', 'a85cd601d82bc79c0daa280917572e20')
- depends_on('xproto', type='build')
+ depends_on('xproto', type=('build', 'link'))
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxaw/package.py b/var/spack/repos/builtin/packages/libxaw/package.py
index 9f92ff57d2..7470ce2f72 100644
--- a/var/spack/repos/builtin/packages/libxaw/package.py
+++ b/var/spack/repos/builtin/packages/libxaw/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxaw(Package):
+class Libxaw(AutotoolsPackage):
"""Xaw is the X Athena Widget Set.
Xaw is a widget set based on the X Toolkit Intrinsics (Xt) Library."""
@@ -44,9 +44,3 @@ class Libxaw(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxaw3d/package.py b/var/spack/repos/builtin/packages/libxaw3d/package.py
index 498f57cbca..13137d622f 100644
--- a/var/spack/repos/builtin/packages/libxaw3d/package.py
+++ b/var/spack/repos/builtin/packages/libxaw3d/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxaw3d(Package):
+class Libxaw3d(AutotoolsPackage):
"""Xaw3d is the X 3D Athena Widget Set.
Xaw3d is a widget set based on the X Toolkit Intrinsics (Xt) Library."""
@@ -42,9 +42,3 @@ class Libxaw3d(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxc/package.py b/var/spack/repos/builtin/packages/libxc/package.py
index d773395e6c..d92ba97e73 100644
--- a/var/spack/repos/builtin/packages/libxc/package.py
+++ b/var/spack/repos/builtin/packages/libxc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,6 +36,33 @@ class Libxc(Package):
version('2.2.2', 'd9f90a0d6e36df6c1312b6422280f2ec')
version('2.2.1', '38dc3a067524baf4f8521d5bb1cd0b8f')
+ @property
+ def libs(self):
+ """Libxc can be queried for the following parameters:
+
+ - "static": returns the static library version of libxc
+ (by default the shared version is returned)
+
+ :return: list of matching libraries
+ """
+ query_parameters = self.spec.last_query.extra_parameters
+
+ libraries = ['libxc']
+
+ # Libxc installs both shared and static libraries.
+ # If a client ask for static explicitly then return
+ # the static libraries
+ shared = False if 'static' in query_parameters else True
+
+ # Libxc has a fortran90 interface: give clients the
+ # possibility to query for it
+ if 'fortran' in query_parameters:
+ libraries = ['libxcf90'] + libraries
+
+ return find_libraries(
+ libraries, root=self.prefix, shared=shared, recurse=True
+ )
+
def install(self, spec, prefix):
# Optimizations for the Intel compiler, suggested by CP2K
optflags = '-O2'
@@ -44,8 +71,15 @@ class Libxc(Package):
if which('xiar'):
env['AR'] = 'xiar'
- env['CFLAGS'] = optflags
- env['FCFLAGS'] = optflags
+ if 'CFLAGS' in env and env['CFLAGS']:
+ env['CFLAGS'] += ' ' + optflags
+ else:
+ env['CFLAGS'] = optflags
+
+ if 'FCFLAGS' in env and env['FCFLAGS']:
+ env['FCFLAGS'] += ' ' + optflags
+ else:
+ env['FCFLAGS'] = optflags
configure('--prefix={0}'.format(prefix),
'--enable-shared')
diff --git a/var/spack/repos/builtin/packages/libxcb/package.py b/var/spack/repos/builtin/packages/libxcb/package.py
index 9fa1c6f97c..cbca3bfd39 100644
--- a/var/spack/repos/builtin/packages/libxcb/package.py
+++ b/var/spack/repos/builtin/packages/libxcb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxcb(Package):
+class Libxcb(AutotoolsPackage):
"""The X protocol C-language Binding (XCB) is a replacement
for Xlib featuring a small footprint, latency hiding, direct
access to the protocol, improved threading support, and
@@ -43,7 +43,8 @@ class Libxcb(Package):
depends_on('libxdmcp')
depends_on('xcb-proto', type='build')
- depends_on('python@2:2.8', type='build')
+ # TODO: uncomment once build deps can be resolved separately
+ # depends_on('python@2:2.8', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
@@ -52,10 +53,3 @@ class Libxcb(Package):
'typedef struct xcb_auth_info_t {',
'typedef struct {',
'src/xcb.h')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxcomposite/package.py b/var/spack/repos/builtin/packages/libxcomposite/package.py
index 48cba00250..b408a08394 100644
--- a/var/spack/repos/builtin/packages/libxcomposite/package.py
+++ b/var/spack/repos/builtin/packages/libxcomposite/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxcomposite(Package):
+class Libxcomposite(AutotoolsPackage):
"""libXcomposite - client library for the Composite extension to the
X11 protocol."""
@@ -40,9 +40,3 @@ class Libxcomposite(Package):
depends_on('compositeproto@0.4:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxcursor/package.py b/var/spack/repos/builtin/packages/libxcursor/package.py
index 215452ef52..ec6b4d28f1 100644
--- a/var/spack/repos/builtin/packages/libxcursor/package.py
+++ b/var/spack/repos/builtin/packages/libxcursor/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxcursor(Package):
+class Libxcursor(AutotoolsPackage):
"""libXcursor - X Window System Cursor management library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXcursor"
@@ -40,9 +40,3 @@ class Libxcursor(Package):
depends_on('fixesproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxdamage/package.py b/var/spack/repos/builtin/packages/libxdamage/package.py
index 448ac21945..948e266aba 100644
--- a/var/spack/repos/builtin/packages/libxdamage/package.py
+++ b/var/spack/repos/builtin/packages/libxdamage/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxdamage(Package):
+class Libxdamage(AutotoolsPackage):
"""This package contains the library for the X Damage extension."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXdamage"
@@ -41,9 +41,3 @@ class Libxdamage(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxdmcp/package.py b/var/spack/repos/builtin/packages/libxdmcp/package.py
index c05d4b8771..093aa90dd3 100644
--- a/var/spack/repos/builtin/packages/libxdmcp/package.py
+++ b/var/spack/repos/builtin/packages/libxdmcp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxdmcp(Package):
+class Libxdmcp(AutotoolsPackage):
"""libXdmcp - X Display Manager Control Protocol library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXdmcp"
@@ -36,10 +36,3 @@ class Libxdmcp(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxevie/package.py b/var/spack/repos/builtin/packages/libxevie/package.py
index b9f0e41631..0ad59c24ee 100644
--- a/var/spack/repos/builtin/packages/libxevie/package.py
+++ b/var/spack/repos/builtin/packages/libxevie/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxevie(Package):
+class Libxevie(AutotoolsPackage):
"""Xevie - X Event Interception Extension (XEvIE)."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXevie"
@@ -41,9 +41,3 @@ class Libxevie(Package):
depends_on('evieext', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxext/package.py b/var/spack/repos/builtin/packages/libxext/package.py
index 192ab3957a..2ecdad7be5 100644
--- a/var/spack/repos/builtin/packages/libxext/package.py
+++ b/var/spack/repos/builtin/packages/libxext/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxext(Package):
+class Libxext(AutotoolsPackage):
"""libXext - library for common extensions to the X11 protocol."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXext"
@@ -39,9 +39,3 @@ class Libxext(Package):
depends_on('xextproto@7.1.99:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxfixes/package.py b/var/spack/repos/builtin/packages/libxfixes/package.py
index 6b8b599a85..5c18e389f1 100644
--- a/var/spack/repos/builtin/packages/libxfixes/package.py
+++ b/var/spack/repos/builtin/packages/libxfixes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxfixes(Package):
+class Libxfixes(AutotoolsPackage):
"""This package contains header files and documentation for the XFIXES
extension. Library and server implementations are separate."""
@@ -41,9 +41,3 @@ class Libxfixes(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxfont/package.py b/var/spack/repos/builtin/packages/libxfont/package.py
index 1ebf321c9f..4d08c4db71 100644
--- a/var/spack/repos/builtin/packages/libxfont/package.py
+++ b/var/spack/repos/builtin/packages/libxfont/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxfont(Package):
+class Libxfont(AutotoolsPackage):
"""libXfont provides the core of the legacy X11 font system, handling the
index files (fonts.dir, fonts.alias, fonts.scale), the various font file
formats, and rasterizing them. It is used by the X servers, the
@@ -46,9 +46,3 @@ class Libxfont(Package):
depends_on('fontsproto@2.1.3:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxfont2/package.py b/var/spack/repos/builtin/packages/libxfont2/package.py
index 8611e65ebb..b2a6a793cd 100644
--- a/var/spack/repos/builtin/packages/libxfont2/package.py
+++ b/var/spack/repos/builtin/packages/libxfont2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxfont2(Package):
+class Libxfont2(AutotoolsPackage):
"""libXfont provides the core of the legacy X11 font system, handling the
index files (fonts.dir, fonts.alias, fonts.scale), the various font file
formats, and rasterizing them. It is used by the X servers, the
@@ -46,9 +46,3 @@ class Libxfont2(Package):
depends_on('fontsproto@2.1.3:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxfontcache/package.py b/var/spack/repos/builtin/packages/libxfontcache/package.py
index 5421f093ca..d113cda057 100644
--- a/var/spack/repos/builtin/packages/libxfontcache/package.py
+++ b/var/spack/repos/builtin/packages/libxfontcache/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxfontcache(Package):
+class Libxfontcache(AutotoolsPackage):
"""Xfontcache - X-TrueType font cache extension client library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXfontcache"
@@ -40,9 +40,3 @@ class Libxfontcache(Package):
depends_on('fontcacheproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxft/package.py b/var/spack/repos/builtin/packages/libxft/package.py
index b1b8f853d0..63f9236302 100644
--- a/var/spack/repos/builtin/packages/libxft/package.py
+++ b/var/spack/repos/builtin/packages/libxft/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxft(Package):
+class Libxft(AutotoolsPackage):
"""X FreeType library.
Xft version 2.1 was the first stand alone release of Xft, a library that
@@ -44,9 +44,3 @@ class Libxft(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxi/package.py b/var/spack/repos/builtin/packages/libxi/package.py
index 4e9a273579..a16be21fba 100644
--- a/var/spack/repos/builtin/packages/libxi/package.py
+++ b/var/spack/repos/builtin/packages/libxi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxi(Package):
+class Libxi(AutotoolsPackage):
"""libXi - library for the X Input Extension."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXi"
@@ -40,9 +40,3 @@ class Libxi(Package):
depends_on('xproto@7.0.13:', type='build')
depends_on('xextproto@7.0.3:', type='build')
depends_on('inputproto@2.2.99.1:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxinerama/package.py b/var/spack/repos/builtin/packages/libxinerama/package.py
index a001c41ca7..74ec63f266 100644
--- a/var/spack/repos/builtin/packages/libxinerama/package.py
+++ b/var/spack/repos/builtin/packages/libxinerama/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxinerama(Package):
+class Libxinerama(AutotoolsPackage):
"""libXinerama - API for Xinerama extension to X11 Protocol."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXinerama"
@@ -40,9 +40,3 @@ class Libxinerama(Package):
depends_on('xineramaproto@1.1.99.1:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxkbfile/package.py b/var/spack/repos/builtin/packages/libxkbfile/package.py
index af8029a024..c345a8a362 100644
--- a/var/spack/repos/builtin/packages/libxkbfile/package.py
+++ b/var/spack/repos/builtin/packages/libxkbfile/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxkbfile(Package):
+class Libxkbfile(AutotoolsPackage):
"""XKB file handling routines."""
homepage = "https://cgit.freedesktop.org/xorg/lib/libxkbfile"
@@ -38,9 +38,3 @@ class Libxkbfile(Package):
depends_on('kbproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxkbui/package.py b/var/spack/repos/builtin/packages/libxkbui/package.py
index d0c132d970..eb34053918 100644
--- a/var/spack/repos/builtin/packages/libxkbui/package.py
+++ b/var/spack/repos/builtin/packages/libxkbui/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxkbui(Package):
+class Libxkbui(AutotoolsPackage):
"""X.org libxkbui library."""
homepage = "https://cgit.freedesktop.org/xorg/lib/libxkbui/"
@@ -39,9 +39,3 @@ class Libxkbui(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxml2/package.py b/var/spack/repos/builtin/packages/libxml2/package.py
index bbb934ab9f..87bbb965b8 100644
--- a/var/spack/repos/builtin/packages/libxml2/package.py
+++ b/var/spack/repos/builtin/packages/libxml2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxml2(Package):
+class Libxml2(AutotoolsPackage):
"""Libxml2 is the XML C parser and toolkit developed for the Gnome
project (but usable outside of the Gnome platform), it is free
software available under the MIT License."""
@@ -34,6 +34,7 @@ class Libxml2(Package):
version('2.9.4', 'ae249165c173b1ff386ee8ad676815f5')
version('2.9.2', '9e6a9aca9d155737868b3dc5fd82f788')
+ version('2.7.8', '8127a65e8c3b08856093099b52599c86')
variant('python', default=False, description='Enable Python support')
@@ -45,18 +46,17 @@ class Libxml2(Package):
depends_on('pkg-config@0.9.0:', type='build')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
+
+ args = ["--with-lzma=%s" % spec['xz'].prefix]
+
if '+python' in spec:
- python_args = [
- '--with-python={0}'.format(spec['python'].prefix),
+ args.extend([
+ '--with-python={0}'.format(spec['python'].home),
'--with-python-install-dir={0}'.format(site_packages_dir)
- ]
+ ])
else:
- python_args = ['--without-python']
-
- configure('--prefix={0}'.format(prefix), *python_args)
+ args.append('--without-python')
- make()
- if self.run_tests:
- make('check')
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/libxmu/package.py b/var/spack/repos/builtin/packages/libxmu/package.py
index dbba5f168d..bb3f168d6a 100644
--- a/var/spack/repos/builtin/packages/libxmu/package.py
+++ b/var/spack/repos/builtin/packages/libxmu/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxmu(Package):
+class Libxmu(AutotoolsPackage):
"""This library contains miscellaneous utilities and is not part of the
Xlib standard. It contains routines which only use public interfaces so
that it may be layered on top of any proprietary implementation of Xlib
@@ -43,9 +43,3 @@ class Libxmu(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxp/package.py b/var/spack/repos/builtin/packages/libxp/package.py
index 10aaccc54f..f18d4b89c9 100644
--- a/var/spack/repos/builtin/packages/libxp/package.py
+++ b/var/spack/repos/builtin/packages/libxp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxp(Package):
+class Libxp(AutotoolsPackage):
"""libXp - X Print Client Library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXp"
@@ -41,9 +41,3 @@ class Libxp(Package):
depends_on('printproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxpm/package.py b/var/spack/repos/builtin/packages/libxpm/package.py
index b726e74b0b..11ede1fe88 100644
--- a/var/spack/repos/builtin/packages/libxpm/package.py
+++ b/var/spack/repos/builtin/packages/libxpm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,26 @@
from spack import *
-class Libxpm(Package):
+class Libxpm(AutotoolsPackage):
"""libXpm - X Pixmap (XPM) image file format library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXpm"
- url = "https://www.x.org/archive//individual/lib/libXpm-3.5.11.tar.gz"
+ url = "https://www.x.org/archive//individual/lib/libXpm-3.5.12.tar.gz"
+ version('3.5.12', 'b286c884b11b5a0b4371175c5327141f')
version('3.5.11', '7c67c878ee048206b070bc0b24154f04')
version('3.5.10', 'a70507638d74541bf30a771f1e5938bb')
version('3.5.9', 'd6d4b0f76248a6b346eb42dfcdaa72a6')
version('3.5.8', '2d81d6633e67ac5562e2fbee126b2897')
version('3.5.7', '7bbc8f112f7143ed6961a58ce4e14558')
+ depends_on('gettext')
depends_on('libx11')
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
+ def setup_environment(self, spack_env, run_env):
+ spack_env.append_flags('LDFLAGS', '-L{0} -lintl'.format(
+ self.spec['gettext'].prefix.lib))
diff --git a/var/spack/repos/builtin/packages/libxpresent/package.py b/var/spack/repos/builtin/packages/libxpresent/package.py
index e65d4353a0..286bf89fb8 100644
--- a/var/spack/repos/builtin/packages/libxpresent/package.py
+++ b/var/spack/repos/builtin/packages/libxpresent/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxpresent(Package):
+class Libxpresent(AutotoolsPackage):
"""This package contains header files and documentation for the Present
extension. Library and server implementations are separate."""
@@ -41,9 +41,3 @@ class Libxpresent(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxprintapputil/package.py b/var/spack/repos/builtin/packages/libxprintapputil/package.py
index fc66b76ac0..a6d2838d4d 100644
--- a/var/spack/repos/builtin/packages/libxprintapputil/package.py
+++ b/var/spack/repos/builtin/packages/libxprintapputil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxprintapputil(Package):
+class Libxprintapputil(AutotoolsPackage):
"""Xprint application utility routines."""
homepage = "https://cgit.freedesktop.org/xorg/lib/libXprintAppUtil/"
@@ -41,9 +41,3 @@ class Libxprintapputil(Package):
depends_on('printproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxprintutil/package.py b/var/spack/repos/builtin/packages/libxprintutil/package.py
index 8eb768958f..9bd765e1b6 100644
--- a/var/spack/repos/builtin/packages/libxprintutil/package.py
+++ b/var/spack/repos/builtin/packages/libxprintutil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxprintutil(Package):
+class Libxprintutil(AutotoolsPackage):
"""Xprint application utility routines."""
homepage = "https://cgit.freedesktop.org/xorg/lib/libXprintUtil/"
@@ -41,9 +41,3 @@ class Libxprintutil(Package):
depends_on('printproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxrandr/package.py b/var/spack/repos/builtin/packages/libxrandr/package.py
index 56c36c0c7b..2ee8f76acb 100644
--- a/var/spack/repos/builtin/packages/libxrandr/package.py
+++ b/var/spack/repos/builtin/packages/libxrandr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxrandr(Package):
+class Libxrandr(AutotoolsPackage):
"""libXrandr - X Resize, Rotate and Reflection extension library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXrandr"
@@ -42,9 +42,3 @@ class Libxrandr(Package):
depends_on('renderproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxrender/package.py b/var/spack/repos/builtin/packages/libxrender/package.py
index c5a6dac1be..49ed107daa 100644
--- a/var/spack/repos/builtin/packages/libxrender/package.py
+++ b/var/spack/repos/builtin/packages/libxrender/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,22 +25,17 @@
from spack import *
-class Libxrender(Package):
+class Libxrender(AutotoolsPackage):
"""libXrender - library for the Render Extension to the X11 protocol."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXrender"
- url = "https://www.x.org/archive/individual/lib/libXrender-0.9.9.tar.gz"
+ url = "https://www.x.org/archive/individual/lib/libXrender-0.9.10.tar.gz"
- version('0.9.9', '0c797c4f2a7b782896bc223e6dac4333')
+ version('0.9.10', '98a14fc11aee08b4a1769426ab4b23a3')
+ version('0.9.9', '0c797c4f2a7b782896bc223e6dac4333')
depends_on('libx11@1.6:')
- depends_on('renderproto@0.9:', type='build')
+ depends_on('renderproto@0.9:', type=('build', 'link'))
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxres/package.py b/var/spack/repos/builtin/packages/libxres/package.py
index 6d0684c4b8..eb691f8835 100644
--- a/var/spack/repos/builtin/packages/libxres/package.py
+++ b/var/spack/repos/builtin/packages/libxres/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxres(Package):
+class Libxres(AutotoolsPackage):
"""libXRes - X-Resource extension client library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXRes"
@@ -40,9 +40,3 @@ class Libxres(Package):
depends_on('resourceproto@1.0:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxscrnsaver/package.py b/var/spack/repos/builtin/packages/libxscrnsaver/package.py
index c9ca6ac1c8..ec68e8d395 100644
--- a/var/spack/repos/builtin/packages/libxscrnsaver/package.py
+++ b/var/spack/repos/builtin/packages/libxscrnsaver/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxscrnsaver(Package):
+class Libxscrnsaver(AutotoolsPackage):
"""XScreenSaver - X11 Screen Saver extension client library"""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXScrnSaver"
@@ -40,9 +40,3 @@ class Libxscrnsaver(Package):
depends_on('scrnsaverproto@1.2:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxshmfence/package.py b/var/spack/repos/builtin/packages/libxshmfence/package.py
index d4f4c85203..fea8c64fdd 100644
--- a/var/spack/repos/builtin/packages/libxshmfence/package.py
+++ b/var/spack/repos/builtin/packages/libxshmfence/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxshmfence(Package):
+class Libxshmfence(AutotoolsPackage):
"""libxshmfence - Shared memory 'SyncFence' synchronization primitive.
This library offers a CPU-based synchronization primitive compatible
@@ -40,10 +40,3 @@ class Libxshmfence(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxslt/package.py b/var/spack/repos/builtin/packages/libxslt/package.py
index 9c5a42bcfb..cbb04c0ee2 100644
--- a/var/spack/repos/builtin/packages/libxslt/package.py
+++ b/var/spack/repos/builtin/packages/libxslt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,10 +36,23 @@ class Libxslt(AutotoolsPackage):
homepage = "http://www.xmlsoft.org/XSLT/index.html"
url = "http://xmlsoft.org/sources/libxslt-1.1.28.tar.gz"
- version('1.1.28', '9667bf6f9310b957254fdcf6596600b7')
version('1.1.29', 'a129d3c44c022de3b9dcf6d6f288d72e')
+ version('1.1.28', '9667bf6f9310b957254fdcf6596600b7')
+ version('1.1.26', 'e61d0364a30146aaa3001296f853b2b9')
+ variant('crypto', default=True,
+ description='Build libexslt with crypto support')
+
+ depends_on("libiconv")
depends_on("libxml2")
depends_on("xz")
depends_on("zlib")
- depends_on("libgcrypt")
+ depends_on("libgcrypt", when="+crypto")
+
+ def configure_args(self):
+ args = []
+ if '~crypto' in self.spec:
+ args.append('--without-crypto')
+ else:
+ args.append('--with-crypto')
+ return args
diff --git a/var/spack/repos/builtin/packages/libxsmm/package.py b/var/spack/repos/builtin/packages/libxsmm/package.py
index a736490600..ec1fa2f0bc 100644
--- a/var/spack/repos/builtin/packages/libxsmm/package.py
+++ b/var/spack/repos/builtin/packages/libxsmm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,20 +23,53 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from glob import glob
class Libxsmm(Package):
- '''LIBXSMM is a library for small dense and small sparse matrix-matrix
- multiplications targeting Intel Architecture (x86).'''
+ '''Library targeting Intel Architecture
+ for small, dense or sparse matrix multiplications,
+ and small convolutions.'''
homepage = 'https://github.com/hfp/libxsmm'
- url = 'https://github.com/hfp/libxsmm/archive/1.4.3.tar.gz'
+ url = 'https://github.com/hfp/libxsmm/archive/1.8.1.tar.gz'
+ version('develop', git='https://github.com/hfp/libxsmm.git')
+
+ version('1.8.1', 'ece51ec767580f4542f509655daa5ec0')
+ version('1.8', '2d513afbdad99e5d04c6c4ab4c9bb25b')
+ version('1.7.1', 'a938335b1c2c90616dc72c2c1a5824ab')
+ version('1.7', 'cb3aff6d123ba70bd3d4daf575767d14')
+ version('1.6.6', '8b45ae022f36b8c212f579a0952b5034')
+ version('1.6.5', 'fa21fe88d092477fa796a346ac7674ff')
+ version('1.6.4', '23e484f7b9f980c2a3819db6e6c68710')
+ version('1.6.3', '7969c56e6faed66f9e07d86f063ecf0b')
+ version('1.6.2', '1920e58fdf00d2635d24cf5c07007bfc')
+ version('1.6.1', 'e3493c77c57d42cfa58e0e55a69ee22c')
+ version('1.6', '31c130aa176db23944de420b59e1c74d')
+ version('1.5.2', 'ecda62ec3e5c60897d0d7780c524bc19')
+ version('1.5.1', '612244e92024e11ec672bafb6e85c01b')
+ version('1.5', '7b550702b55dc8e73a42a2986a1e1b36')
+ version('1.4.4', '78beefa57da02126cf4556f0eef3f8f0')
version('1.4.3', '9839bf0fb8be7badf1e97ce4c817149b')
version('1.4.2', 'ea025761437f3b5c936821b9ca21ec31')
version('1.4.1', '71648500ea4510529845d329091917df')
version('1.4', 'b42f91bf5285e7ad0463446e55ebdc2b')
+ variant('debug', default=False,
+ description='Unoptimized with call-trace (LIBXSMM_TRACE).')
+ variant('header-only', default=False,
+ description='Produce header-only installation')
+
+ @property
+ def libs(self):
+ result = find_libraries(['libxsmm', 'libxsmmf'], root=self.prefix,
+ recurse=True)
+ if len(result) == 0:
+ result = find_libraries(['libxsmm', 'libxsmmf'], root=self.prefix,
+ shared=False, recurse=True)
+ return result
+
def patch(self):
kwargs = {'ignore_absent': False, 'backup': False, 'string': True}
makefile = FileFilter('Makefile.inc')
@@ -51,16 +84,38 @@ class Libxsmm(Package):
makefile.filter('FC = gfortran', 'FC ?= gfortran', **kwargs)
def manual_install(self, prefix):
+ spec = self.spec
install_tree('include', prefix.include)
- install_tree('lib', prefix.lib)
- install_tree('documentation', prefix.share + '/libxsmm/doc')
+ if '~header-only' in spec:
+ install_tree('lib', prefix.lib)
+ doc_path = prefix.share + '/libxsmm/doc'
+ mkdirp(doc_path)
+ for doc_file in glob('documentation/*.md'):
+ install(doc_file, doc_path)
+ for doc_file in glob('documentation/*.pdf'):
+ install(doc_file, doc_path)
+ install('README.md', doc_path)
+ install('LICENSE', doc_path)
def install(self, spec, prefix):
- make_args = [
- 'ROW_MAJOR=0',
- 'INDICES_M={0}'.format(' '.join(str(i) for i in range(1, 25))),
- 'INDICES_N={0}'.format(' '.join(str(i) for i in range(1, 25))),
- 'INDICES_K={0}'.format(' '.join(str(i) for i in range(1, 25)))
- ]
+ if '+header-only' in spec and '@1.6.2:' not in spec:
+ raise InstallError(
+ "The variant +header-only is only available " +
+ "for versions @1.6.2:")
+
+ # include symbols by default
+ make_args = ['SYM=1']
+
+ if '+header-only' in spec:
+ make_args += ['header-only']
+
+ # JIT (AVX and later) makes MNK, M, N, or K spec. superfluous
+# make_args += ['MNK=1 4 5 6 8 9 13 16 17 22 23 24 26 32']
+
+ # include call trace as the build is already de-optimized
+ if '+debug' in spec:
+ make_args += ['DBG=1']
+ make_args += ['TRACE=1']
+
make(*make_args)
self.manual_install(prefix)
diff --git a/var/spack/repos/builtin/packages/libxstream/package.py b/var/spack/repos/builtin/packages/libxstream/package.py
index 3201b58620..00b7c0be32 100644
--- a/var/spack/repos/builtin/packages/libxstream/package.py
+++ b/var/spack/repos/builtin/packages/libxstream/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,9 +31,9 @@ class Libxstream(Package):
conditions.'''
homepage = 'https://github.com/hfp/libxstream'
- url = 'https://github.com/hfp/libxstream.git'
+ url = 'https://github.com/hfp/libxstream/archive/0.9.0.tar.gz'
- version('0.9.0', git='https://github.com/hfp/libxstream.git')
+ version('0.9.0', 'fd74b7cf5f145ff4925d91be2809571c')
def patch(self):
kwargs = {'ignore_absent': False, 'backup': True, 'string': True}
diff --git a/var/spack/repos/builtin/packages/libxt/package.py b/var/spack/repos/builtin/packages/libxt/package.py
index c657c866b4..b3e2ac4e63 100644
--- a/var/spack/repos/builtin/packages/libxt/package.py
+++ b/var/spack/repos/builtin/packages/libxt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxt(Package):
+class Libxt(AutotoolsPackage):
"""libXt - X Toolkit Intrinsics library."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXt"
@@ -41,9 +41,3 @@ class Libxt(Package):
depends_on('kbproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxtrap/package.py b/var/spack/repos/builtin/packages/libxtrap/package.py
index 4589f98a87..83405cf48d 100644
--- a/var/spack/repos/builtin/packages/libxtrap/package.py
+++ b/var/spack/repos/builtin/packages/libxtrap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxtrap(Package):
+class Libxtrap(AutotoolsPackage):
"""libXTrap is the Xlib-based client API for the DEC-XTRAP extension.
XTrap was a proposed standard extension for X11R5 which facilitated the
@@ -50,9 +50,3 @@ class Libxtrap(Package):
depends_on('xextproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxtst/package.py b/var/spack/repos/builtin/packages/libxtst/package.py
index 0d16643f94..9b6b4093ba 100644
--- a/var/spack/repos/builtin/packages/libxtst/package.py
+++ b/var/spack/repos/builtin/packages/libxtst/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxtst(Package):
+class Libxtst(AutotoolsPackage):
"""libXtst provides the Xlib-based client API for the XTEST & RECORD
extensions.
@@ -49,11 +49,6 @@ class Libxtst(Package):
depends_on('recordproto@1.13.99.1:', type='build')
depends_on('xextproto@7.0.99.3:', type='build')
depends_on('inputproto', type='build')
+ depends_on('fixesproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxv/package.py b/var/spack/repos/builtin/packages/libxv/package.py
index 03f10a1842..e29ec91b84 100644
--- a/var/spack/repos/builtin/packages/libxv/package.py
+++ b/var/spack/repos/builtin/packages/libxv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxv(Package):
+class Libxv(AutotoolsPackage):
"""libXv - library for the X Video (Xv) extension to the
X Window System."""
@@ -41,9 +41,3 @@ class Libxv(Package):
depends_on('videoproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxvmc/package.py b/var/spack/repos/builtin/packages/libxvmc/package.py
index 9d5695c2c1..42e56618a4 100644
--- a/var/spack/repos/builtin/packages/libxvmc/package.py
+++ b/var/spack/repos/builtin/packages/libxvmc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxvmc(Package):
+class Libxvmc(AutotoolsPackage):
"""X.org libXvMC library."""
homepage = "https://cgit.freedesktop.org/xorg/lib/libXvMC"
@@ -41,9 +41,3 @@ class Libxvmc(Package):
depends_on('videoproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxxf86dga/package.py b/var/spack/repos/builtin/packages/libxxf86dga/package.py
index 292c5d213b..f92ff7fb63 100644
--- a/var/spack/repos/builtin/packages/libxxf86dga/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86dga/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxxf86dga(Package):
+class Libxxf86dga(AutotoolsPackage):
"""libXxf86dga - Client library for the XFree86-DGA extension."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXxf86dga"
@@ -41,9 +41,3 @@ class Libxxf86dga(Package):
depends_on('xf86dgaproto@2.0.99.2:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxxf86misc/package.py b/var/spack/repos/builtin/packages/libxxf86misc/package.py
index 0247f8b57c..8b161008f8 100644
--- a/var/spack/repos/builtin/packages/libxxf86misc/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86misc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxxf86misc(Package):
+class Libxxf86misc(AutotoolsPackage):
"""libXxf86misc - Extension library for the XFree86-Misc X extension."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXxf86misc"
@@ -41,9 +41,3 @@ class Libxxf86misc(Package):
depends_on('xf86miscproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libxxf86vm/package.py b/var/spack/repos/builtin/packages/libxxf86vm/package.py
index feec5ff3d2..6b2cf951ed 100644
--- a/var/spack/repos/builtin/packages/libxxf86vm/package.py
+++ b/var/spack/repos/builtin/packages/libxxf86vm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Libxxf86vm(Package):
+class Libxxf86vm(AutotoolsPackage):
"""libXxf86vm - Extension library for the XFree86-VidMode X extension."""
homepage = "http://cgit.freedesktop.org/xorg/lib/libXxf86vm"
@@ -41,9 +41,3 @@ class Libxxf86vm(Package):
depends_on('xf86vidmodeproto@2.2.99.1:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/libyogrt/package.py b/var/spack/repos/builtin/packages/libyogrt/package.py
new file mode 100644
index 0000000000..f48ce80e83
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libyogrt/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libyogrt(AutotoolsPackage):
+ """Your One Get Remaining Time Library."""
+
+ homepage = "https://github.com/LLNL/libyogrt"
+ url = "https://github.com/LLNL/libyogrt/archive/1.20-6.tar.gz"
+
+ version('1.20-6', '478f27512842cc5f2b74a0c22b851f60')
+ version('1.20-5', 'd0fa6526fcd1f56ddb3d93f602ec72f7')
+ version('1.20-4', '092bea10de22c505ce92aa07001decbb')
+ version('1.20-3', 'd0507717009a5f8e2009e3b63594738f')
+ version('1.20-2', '780bda03268324f6b5f72631fff6e6cb')
diff --git a/var/spack/repos/builtin/packages/libzip/package.py b/var/spack/repos/builtin/packages/libzip/package.py
new file mode 100644
index 0000000000..c193caae7f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/libzip/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Libzip(AutotoolsPackage):
+ """libzip is a C library for reading, creating,
+ and modifying zip archives."""
+
+ homepage = "https://nih.at/libzip/index.html"
+ url = "https://nih.at/libzip/libzip-1.2.0.tar.gz"
+
+ version('1.2.0', '5c3372ab3a7897295bfefb27f745cf69')
diff --git a/var/spack/repos/builtin/packages/likwid/package.py b/var/spack/repos/builtin/packages/likwid/package.py
index 8d1687a11a..edba82da40 100644
--- a/var/spack/repos/builtin/packages/likwid/package.py
+++ b/var/spack/repos/builtin/packages/likwid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import glob
class Likwid(Package):
@@ -33,20 +34,41 @@ class Likwid(Package):
homepage = "https://github.com/RRZE-HPC/likwid"
url = "https://github.com/RRZE-HPC/likwid/archive/4.1.2.tar.gz"
+ maintainers = ['davydden']
+
+ version('4.3.0', 'f6bdf12513af95bd6eefa9c68644e724')
+ version('4.2.1', 'c408ddcf0317cdd894af4c580cd74294')
+ version('4.2.0', 'e41ff334b8f032a323d941ce32907a75')
version('4.1.2', 'a857ce5bd23e31d96e2963fe81cb38f0')
# NOTE: There is no way to use an externally provided hwloc with Likwid.
# The reason is that the internal hwloc is patched to contain extra
# functionality and functions are prefixed with "likwid_".
- # TODO: how to specify those?
- # depends_on('lua')
+ depends_on('lua', when='@4.2.0:')
# TODO: check
# depends_on('gnuplot', type='run')
+ depends_on('perl', type=('build', 'run'))
+
supported_compilers = {'clang': 'CLANG', 'gcc': 'GCC', 'intel': 'ICC'}
+ def patch(self):
+ files = glob.glob('perl/*.*') + glob.glob('bench/perl/*.*')
+
+ # Allow the scripts to find Spack's perl
+ filter_file('^#!/usr/bin/perl -w', '#!/usr/bin/env perl', *files)
+ filter_file('^#!/usr/bin/perl', '#!/usr/bin/env perl', *files)
+
+ @run_before('install')
+ def filter_sbang(self):
+ # Filter sbang before install so Spack's sbang hook can fix it up
+ perl = join_path(self.spec['perl'].prefix.bin, 'perl')
+ files = ['perl/feedGnuplot'] + glob.glob('filters/*')
+
+ filter_file('^#!/usr/bin/perl', '#!{0}'.format(perl), *files)
+
def install(self, spec, prefix):
if self.compiler.name not in self.supported_compilers:
raise RuntimeError('{0} is not a supported compiler \
@@ -65,5 +87,22 @@ class Likwid(Package):
'INSTALL_CHOWN = -o $(USER)',
'config.mk')
+ if spec.satisfies('^lua'):
+ filter_file('^#LUA_INCLUDE_DIR.*',
+ 'LUA_INCLUDE_DIR = {0}'.format(
+ spec['lua'].prefix.include),
+ 'config.mk')
+ filter_file('^#LUA_LIB_DIR.*',
+ 'LUA_LIB_DIR = {0}'.format(
+ spec['lua'].prefix.lib),
+ 'config.mk')
+ filter_file('^#LUA_LIB_NAME.*',
+ 'LUA_LIB_NAME = lua',
+ 'config.mk')
+ filter_file('^#LUA_BIN.*',
+ 'LUA_BIN = {0}'.format(
+ spec['lua'].prefix.bin),
+ 'config.mk')
+
make()
make('install')
diff --git a/var/spack/repos/builtin/packages/linkphase3/package.py b/var/spack/repos/builtin/packages/linkphase3/package.py
new file mode 100644
index 0000000000..4cba38115a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/linkphase3/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Linkphase3(Package):
+ """Haplotype reconstruction in pedigreed populations."""
+
+ homepage = "https://github.com/tdruet/LINKPHASE3"
+ url = "https://github.com/tdruet/LINKPHASE3"
+
+ version('2017-06-14', commit='559913593fc818bb1adb29796a548cf5bf323827',
+ git='https://github.com/tdruet/LINKPHASE3.git')
+
+ def install(self, spec, prefix):
+ fortran = Executable(self.compiler.fc)
+ fortran('LINKPHASE3.f90', '-o', 'LINKPHASE3')
+ mkdirp(prefix.bin)
+ install('LINKPHASE3', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/linux-headers/package.py b/var/spack/repos/builtin/packages/linux-headers/package.py
new file mode 100644
index 0000000000..224c502121
--- /dev/null
+++ b/var/spack/repos/builtin/packages/linux-headers/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class LinuxHeaders(Package):
+ """The Linux kernel headers."""
+
+ homepage = "https://www.kernel.org/"
+ url = "https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.9.10.tar.xz"
+ list_url = "https://www.kernel.org/pub/linux/kernel"
+ list_depth = 2
+
+ version('4.9.10', 'ce5ab2a86c9b880617e36e84aa2deb6c')
+
+ def setup_environment(self, spack_env, run_env):
+ # This variable is used in the Makefile. If it is defined on the
+ # system, it can break the build if there is no build recipe for
+ # that specific ARCH
+ spack_env.unset('ARCH')
+
+ def install(self, spec, prefix):
+ make('headers_install', 'INSTALL_HDR_PATH={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/listres/package.py b/var/spack/repos/builtin/packages/listres/package.py
index c6b3d149f6..783b4f48d6 100644
--- a/var/spack/repos/builtin/packages/listres/package.py
+++ b/var/spack/repos/builtin/packages/listres/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Listres(Package):
+class Listres(AutotoolsPackage):
"""The listres program generates a list of X resources for a widget
in an X client written using a toolkit based on libXt."""
@@ -41,9 +41,3 @@ class Listres(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/llvm-lld/package.py b/var/spack/repos/builtin/packages/llvm-lld/package.py
index 6a167cca33..ff27c21f94 100644
--- a/var/spack/repos/builtin/packages/llvm-lld/package.py
+++ b/var/spack/repos/builtin/packages/llvm-lld/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,25 +25,24 @@
from spack import *
-class LlvmLld(Package):
+class LlvmLld(CMakePackage):
"""lld - The LLVM Linker
lld is a new set of modular code for creating linker tools."""
homepage = "http://lld.llvm.org"
url = "http://llvm.org/releases/3.4/lld-3.4.src.tar.gz"
- depends_on('llvm')
-
version('3.4', '3b6a17e58c8416c869c14dd37682f78e')
- depends_on('cmake', type='build')
+ depends_on('llvm')
+ depends_on('cmake@2.8:', type='build')
- def install(self, spec, prefix):
- env['CXXFLAGS'] = self.compiler.cxx11_flag
+ def cmake_args(self):
+ if 'CXXFLAGS' in env and env['CXXFLAGS']:
+ env['CXXFLAGS'] += ' ' + self.compiler.cxx11_flag
+ else:
+ env['CXXFLAGS'] = self.compiler.cxx11_flag
- with working_dir('spack-build', create=True):
- cmake('..',
- '-DLLD_PATH_TO_LLVM_BUILD=%s' % spec['llvm'].prefix,
- '-DLLVM_MAIN_SRC_DIR=%s' % spec['llvm'].prefix,
- *std_cmake_args)
- make()
- make("install")
+ return [
+ '-DLLD_PATH_TO_LLVM_BUILD=%s' % self.spec['llvm'].prefix,
+ '-DLLVM_MAIN_SRC_DIR=%s' % self.spec['llvm'].prefix,
+ ]
diff --git a/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py b/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py
new file mode 100644
index 0000000000..2526cd4d03
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm-openmp-ompt/package.py
@@ -0,0 +1,88 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class LlvmOpenmpOmpt(CMakePackage):
+ """The OpenMP subproject provides an OpenMP runtime for use with the
+ OpenMP implementation in Clang. This branch includes experimental
+ changes for OMPT, the OpenMP Tools interface"""
+
+ homepage = "https://github.com/OpenMPToolsInterface/LLVM-openmp"
+
+ # towards_tr4 branch
+ version('towards_tr4', branch='towards_tr4',
+ git='https://github.com/OpenMPToolsInterface/LLVM-openmp.git')
+
+ version('3.9.2b2',
+ git='https://github.com/OpenMPToolsInterface/LLVM-openmp.git',
+ commit='5cdca5dd3c0c336d42a335ca7cff622e270c9d47')
+
+ # align-to-tr-rebased branch
+ version('3.9.2b',
+ git='https://github.com/OpenMPToolsInterface/LLVM-openmp.git',
+ commit='982a08bcf3df9fb5afc04ac3bada47f19cc4e3d3')
+
+ # variant for building llvm-openmp-ompt as a stand alone library
+ variant('standalone', default=False,
+ description="Build llvm openmpi ompt library as a \
+ stand alone entity.")
+
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+
+ depends_on('cmake@2.8:', type='build')
+ depends_on('llvm', when='~standalone')
+ depends_on('ninja@1.5:', type='build')
+
+ generator = 'Ninja'
+
+ def cmake_args(self):
+ cmake_args = [
+ '-DLIBOMP_OMPT_SUPPORT=on',
+ '-DLIBOMP_OMPT_BLAME=on',
+ '-DLIBOMP_OMPT_TRACE=on',
+ '-DCMAKE_C_COMPILER=%s' % spack_cc,
+ '-DCMAKE_CXX_COMPILER=%s' % spack_cxx
+ ]
+
+ # Build llvm-openmp-ompt as a stand alone library
+ # CMAKE rpath variable prevents standalone error
+ # where this package wants the llvm tools path
+ if '+standalone' in self.spec:
+ cmake_args.extend(
+ ['-DLIBOMP_STANDALONE_BUILD=true',
+ '-DCMAKE_BUILD_WITH_INSTALL_RPATH=true',
+ '-DLIBOMP_USE_DEBUGGER=false'])
+
+ # Build llvm-openmp-ompt using the toward_tr4 branch
+ # This requires the version to be 5.0 (50)
+ if '@towards_tr4' in self.spec:
+ cmake_args.extend(
+ ['-DLIBOMP_OMP_VERSION=50'])
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/llvm/llvm_gcc7.patch b/var/spack/repos/builtin/packages/llvm/llvm_gcc7.patch
new file mode 100644
index 0000000000..e3bb8a14ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/llvm/llvm_gcc7.patch
@@ -0,0 +1,10 @@
+--- a/tools/lldb/include/lldb/Utility/TaskPool.h 2016-09-06 16:57:50.000000000 -0400
++++ b/tools/lldb/include/lldb/Utility/TaskPool.h 2017-08-29 16:29:41.448584015 -0400
+@@ -28,6 +28,7 @@
+
+ #include <cassert>
+ #include <cstdint>
++#include <functional>
+ #include <future>
+ #include <list>
+ #include <queue>
diff --git a/var/spack/repos/builtin/packages/llvm/package.py b/var/spack/repos/builtin/packages/llvm/package.py
index 06572ea312..48f767aa17 100644
--- a/var/spack/repos/builtin/packages/llvm/package.py
+++ b/var/spack/repos/builtin/packages/llvm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,12 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import os
-
from spack import *
-class Llvm(Package):
+class Llvm(CMakePackage):
"""The LLVM Project is a collection of modular and reusable compiler and
toolchain technologies. Despite its name, LLVM has little to do
with traditional virtual machines, though it does provide helpful
@@ -37,6 +35,7 @@ class Llvm(Package):
homepage = 'http://llvm.org/'
url = 'http://llvm.org/releases/3.7.1/llvm-3.7.1.src.tar.xz'
+ list_url = 'http://releases.llvm.org/download.html'
family = 'compiler' # Used by lmod
@@ -44,10 +43,10 @@ class Llvm(Package):
version('3.0', 'a8e5f5f1c1adebae7b4a654c376a6005',
url='http://llvm.org/releases/3.0/llvm-3.0.tar.gz')
- variant('debug', default=False,
- description="Build a debug version of LLVM, this increases "
- "binary size by an order of magnitude, make sure you have "
- "20-30gb of space available to build this")
+ # NOTE: The debug version of LLVM is an order of magnitude larger than
+ # the release version, and may take up 20-30 GB of space. If you want
+ # to save space, build with `build_type=Release`.
+
variant('clang', default=True,
description="Build the LLVM C/C++/Objective-C compiler frontend")
variant('lldb', default=True, description="Build the LLVM debugger")
@@ -71,12 +70,18 @@ class Llvm(Package):
variant('all_targets', default=True,
description="Build all supported targets, default targets "
"<current arch>,NVPTX,AMDGPU,CppBackend")
+ variant('build_type', default='Release',
+ description='CMake build type',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel'))
+ variant('python', default=False, description="Install python bindings")
+ extends('python', when='+python')
# Build dependency
- depends_on('cmake@2.8.12.2:', type='build')
+ depends_on('cmake@3.4.3:', type='build')
# Universal dependency
depends_on('python@2.7:2.8') # Seems not to support python 3.X.Y
+ depends_on('py-lit', type=('build', 'run'))
# lldb dependencies
depends_on('ncurses', when='+lldb')
@@ -98,46 +103,55 @@ class Llvm(Package):
'url': base_url % {'pkg': 'compiler-rt'},
'destination': 'projects',
'placement': 'compiler-rt',
+ 'variant': '+compiler-rt',
},
'openmp': {
'url': base_url % {'pkg': 'openmp'},
'destination': 'projects',
'placement': 'openmp',
+ 'variant': '+clang',
},
'libcxx': {
'url': base_url % {'pkg': 'libcxx'},
'destination': 'projects',
'placement': 'libcxx',
+ 'variant': '+libcxx',
},
'libcxxabi': {
'url': base_url % {'pkg': 'libcxxabi'},
'destination': 'projects',
'placement': 'libcxxabi',
+ 'variant': '+libcxx',
},
'cfe': {
'url': base_url % {'pkg': 'cfe'},
'destination': 'tools',
'placement': 'clang',
+ 'variant': '+clang',
},
'clang-tools-extra': {
'url': base_url % {'pkg': 'clang-tools-extra'},
'destination': 'tools/clang/tools',
'placement': 'extra',
+ 'variant': '+clang',
},
'lldb': {
'url': base_url % {'pkg': 'lldb'},
'destination': 'tools',
'placement': 'lldb',
+ 'variant': '+lldb',
},
'polly': {
'url': base_url % {'pkg': 'polly'},
'destination': 'tools',
'placement': 'polly',
+ 'variant': '+polly',
},
- 'llvm-libunwind': {
+ 'libunwind': {
'url': base_url % {'pkg': 'libunwind'},
'destination': 'projects',
'placement': 'libunwind',
+ 'variant': '+internal_unwind',
},
}
releases = [
@@ -153,84 +167,144 @@ class Llvm(Package):
'cfe': 'http://llvm.org/svn/llvm-project/cfe/trunk',
'clang-tools-extra': 'http://llvm.org/svn/llvm-project/clang-tools-extra/trunk',
'lldb': 'http://llvm.org/svn/llvm-project/lldb/trunk',
- 'llvm-libunwind': 'http://llvm.org/svn/llvm-project/libunwind/trunk',
- }
- },
- {
- 'version': '3.9.0',
- 'md5': 'f2093e98060532449eb7d2fcfd0bc6c6',
- 'resources': {
- 'compiler-rt': 'b7ea34c9d744da16ffc0217b6990d095',
- 'openmp': '5390164f2374e1444e82393541ecf6c7',
- 'polly': '1cf328cbae25267749b68cfa6f113674',
- 'libcxx': '0a11efefd864ce6f321194e441f7e569',
- 'libcxxabi': 'd02642308e22e614af6b061b9b4fedfa',
- 'cfe': '29e1d86bee422ab5345f5e9fb808d2dc',
- 'clang-tools-extra': 'f4f663068c77fc742113211841e94d5e',
- 'lldb': '968d053c3c3d7297983589164c6999e9',
- 'llvm-libunwind': '3e5c87c723a456be599727a444b1c166',
- }
- },
- {
- 'version': '3.8.1',
- 'md5': '538467e6028bbc9259b1e6e015d25845',
- 'resources': {
- 'compiler-rt': 'f140db073d2453f854fbe01cc46f3110',
- 'openmp': '078b8d4c51ad437a4f8b5989f5ec4156',
- 'polly': '8a40e697a4ba1c8b640b85d074bd6e25',
- 'libcxx': '1bc60150302ff76a0d79d6f9db22332e',
- 'libcxxabi': '3c63b03ba2f30a01279ca63384a67773',
- 'cfe': '4ff2f8844a786edb0220f490f7896080',
- 'clang-tools-extra': '6e49f285d0b366cc3cab782d8c92d382',
- 'lldb': '9e4787b71be8e432fffd31e13ac87623',
- 'llvm-libunwind': 'd66e2387e1d37a8a0c8fe6a0063a3bab',
- }
- },
- {
- 'version': '3.8.0',
- 'md5': '07a7a74f3c6bd65de4702bf941b511a0',
- 'resources': {
- 'compiler-rt': 'd6fcbe14352ffb708e4d1ac2e48bb025',
- 'openmp': '8fd7cc35d48051613cf1e750e9f22e40',
- 'polly': '1b3b20f52d34a4024e21a4ea7112caa7',
- 'libcxx': 'd6e0bdbbee39f7907ad74fd56d03b88a',
- 'libcxxabi': 'bbe6b4d72c7c5978550d370af529bcf7',
- 'cfe': 'cc99e7019bb74e6459e80863606250c5',
- 'clang-tools-extra': 'c2344f50e0eea0b402f0092a80ddc036',
- 'lldb': 'a5da35ed9cc8c8817ee854e3dbfba00e',
- 'llvm-libunwind': '162ade468607f153cca12be90b5194fa',
- }
- },
- {
- 'version': '3.7.1',
- 'md5': 'bf8b3a2c79e61212c5409041dfdbd319',
- 'resources': {
- 'compiler-rt': '1c6975daf30bb3b0473b53c3a1a6ff01',
- 'openmp': 'b4ad08cda4e5c22e42b66062b140438e',
- 'polly': '3a2a7367002740881637f4d47bca4dc3',
- 'libcxx': 'f9c43fa552a10e14ff53b94d04bea140',
- 'libcxxabi': '52d925afac9f97e9dcac90745255c169',
- 'cfe': '0acd026b5529164197563d135a8fd83e',
- 'clang-tools-extra': '5d49ff745037f061a7c86aeb6a24c3d2',
- 'lldb': 'a106d8a0d21fc84d76953822fbaf3398',
- 'llvm-libunwind': '814bd52c9247c5d04629658fbcb3ab8c',
- }
- },
- {
- 'version': '3.7.0',
- 'md5': 'b98b9495e5655a672d6cb83e1a180f8e',
- 'resources': {
- 'compiler-rt': '383c10affd513026f08936b5525523f5',
- 'openmp': 'f482c86fdead50ba246a1a2b0bbf206f',
- 'polly': '32f93ffc9cc7e042df22089761558f8b',
- 'libcxx': '46aa5175cbe1ad42d6e9c995968e56dd',
- 'libcxxabi': '5aa769e2fca79fa5335cfae8f6258772',
- 'cfe': '8f9d27335e7331cf0a4711e952f21f01',
- 'clang-tools-extra': 'd5a87dacb65d981a427a536f6964642e',
- 'lldb': 'e5931740400d1dc3e7db4c7ba2ceff68',
- 'llvm-libunwind': '9a75392eb7eb8ed5c0840007e212baf5',
- }
- },
+ 'libunwind': 'http://llvm.org/svn/llvm-project/libunwind/trunk',
+ }
+ },
+ {
+ 'version': '5.0.0',
+ 'md5': '5ce9c5ad55243347ea0fdb4c16754be0',
+ 'resources': {
+ 'compiler-rt': 'da735894133589cbc6052c8ef06b1230',
+ 'openmp': '8be33c0f0a7ed3aab42be2f63988913d',
+ 'polly': 'dcbd08450e895a42f3986e2fe6524c92',
+ 'libcxx': 'a39241a3c9b4d2b7ce1246b9f527b400',
+ 'libcxxabi': '0158528a5a0ae1c74821bae2195ea782',
+ 'cfe': '699c448c6d6d0edb693c87beb1cc8c6e',
+ 'clang-tools-extra': '0cda05d1a61becb393eb63746963d7f5',
+ 'lldb': '8de19973d044ca2cfe325d4625a5cfef',
+ 'libunwind': '98fb2c677068c6f36727fb1d5397bca3',
+ }
+ },
+ {
+ 'version': '4.0.1',
+ 'md5': 'a818e70321b91e2bb2d47e60edd5408f',
+ 'resources': {
+ 'compiler-rt': '0227ac853ce422125f8bb08f6ad5c995',
+ 'openmp': '23e5f720ae119165ba32627467fdc885',
+ 'polly': '0d4a3fa2eb446a378bbf01b220851b1f',
+ 'libcxx': 'c54f7938e2f393a2cead0af37ed99dfb',
+ 'libcxxabi': '55ba0be7daf8bf25ab629a9cfd3022a4',
+ 'cfe': 'a6c7b3e953f8b93e252af5917df7db97',
+ 'clang-tools-extra': 'cfd46027a0ab7eed483dfcc803e86bd9',
+ 'lldb': '908bdd777d3b527a914ba360477b8ab3',
+ 'libunwind': 'b72ec95fb784e61f15d6196414b92f5e',
+ }
+ },
+ {
+ 'version': '4.0.0',
+ 'md5': 'ea9139a604be702454f6acf160b4f3a2',
+ 'resources': {
+ 'compiler-rt': '2ec11fb7df827b086341131c5d7f1814',
+ 'openmp': '3d06d2801dd4808f551a1a70068e01f5',
+ 'polly': 'f36e4e7cf872f8b3bbb9cdcddc5fd964',
+ 'libcxx': '4cf7df466e6f803ec4611ee410ff6781',
+ 'libcxxabi': '8b5d7b9bfcf7dec2dc901c8a6746f97c',
+ 'cfe': '756e17349fdc708c62974b883bf72d37',
+ 'clang-tools-extra': '99e711337ec3e9a8bb36e8dd62b2cd6e',
+ 'lldb': 'bd41ba7fcca55d2a554409bbccd34d2d',
+ 'libunwind': '0c3534eaa11c0cae33a1dcf5f36ce287',
+ }
+ },
+ {
+ 'version': '3.9.1',
+ 'md5': '3259018a7437e157f3642df80f1983ea',
+ 'resources': {
+ 'compiler-rt': 'aadc76e7e180fafb10fb729444e287a3',
+ 'openmp': 'f076916bf2f49229b4df9fa0bb002599',
+ 'polly': '2cc7fe2bd9539775ba140abfd375bec6',
+ 'libcxx': '75a3214224301fc543fa6a38bdf7efe0',
+ 'libcxxabi': '62fd584b38cc502172c2ffab041b5fcc',
+ 'cfe': '45713ec5c417ed9cad614cd283d786a1',
+ 'clang-tools-extra': '1a01d545a064fcbc46a2f05f6880d3d7',
+ 'lldb': '91399402f287d3f637db1207113deecb',
+ 'libunwind': 'f273dd0ed638ad0601b23176a36f187b',
+ }
+ },
+ {
+ 'version': '3.9.0',
+ 'md5': 'f2093e98060532449eb7d2fcfd0bc6c6',
+ 'resources': {
+ 'compiler-rt': 'b7ea34c9d744da16ffc0217b6990d095',
+ 'openmp': '5390164f2374e1444e82393541ecf6c7',
+ 'polly': '1cf328cbae25267749b68cfa6f113674',
+ 'libcxx': '0a11efefd864ce6f321194e441f7e569',
+ 'libcxxabi': 'd02642308e22e614af6b061b9b4fedfa',
+ 'cfe': '29e1d86bee422ab5345f5e9fb808d2dc',
+ 'clang-tools-extra': 'f4f663068c77fc742113211841e94d5e',
+ 'lldb': '968d053c3c3d7297983589164c6999e9',
+ 'libunwind': '3e5c87c723a456be599727a444b1c166',
+ }
+ },
+ {
+ 'version': '3.8.1',
+ 'md5': '538467e6028bbc9259b1e6e015d25845',
+ 'resources': {
+ 'compiler-rt': 'f140db073d2453f854fbe01cc46f3110',
+ 'openmp': '078b8d4c51ad437a4f8b5989f5ec4156',
+ 'polly': '8a40e697a4ba1c8b640b85d074bd6e25',
+ 'libcxx': '1bc60150302ff76a0d79d6f9db22332e',
+ 'libcxxabi': '3c63b03ba2f30a01279ca63384a67773',
+ 'cfe': '4ff2f8844a786edb0220f490f7896080',
+ 'clang-tools-extra': '6e49f285d0b366cc3cab782d8c92d382',
+ 'lldb': '9e4787b71be8e432fffd31e13ac87623',
+ 'libunwind': 'd66e2387e1d37a8a0c8fe6a0063a3bab',
+ }
+ },
+ {
+ 'version': '3.8.0',
+ 'md5': '07a7a74f3c6bd65de4702bf941b511a0',
+ 'resources': {
+ 'compiler-rt': 'd6fcbe14352ffb708e4d1ac2e48bb025',
+ 'openmp': '8fd7cc35d48051613cf1e750e9f22e40',
+ 'polly': '1b3b20f52d34a4024e21a4ea7112caa7',
+ 'libcxx': 'd6e0bdbbee39f7907ad74fd56d03b88a',
+ 'libcxxabi': 'bbe6b4d72c7c5978550d370af529bcf7',
+ 'cfe': 'cc99e7019bb74e6459e80863606250c5',
+ 'clang-tools-extra': 'c2344f50e0eea0b402f0092a80ddc036',
+ 'lldb': 'a5da35ed9cc8c8817ee854e3dbfba00e',
+ 'libunwind': '162ade468607f153cca12be90b5194fa',
+ }
+ },
+ {
+ 'version': '3.7.1',
+ 'md5': 'bf8b3a2c79e61212c5409041dfdbd319',
+ 'resources': {
+ 'compiler-rt': '1c6975daf30bb3b0473b53c3a1a6ff01',
+ 'openmp': 'b4ad08cda4e5c22e42b66062b140438e',
+ 'polly': '3a2a7367002740881637f4d47bca4dc3',
+ 'libcxx': 'f9c43fa552a10e14ff53b94d04bea140',
+ 'libcxxabi': '52d925afac9f97e9dcac90745255c169',
+ 'cfe': '0acd026b5529164197563d135a8fd83e',
+ 'clang-tools-extra': '5d49ff745037f061a7c86aeb6a24c3d2',
+ 'lldb': 'a106d8a0d21fc84d76953822fbaf3398',
+ 'libunwind': '814bd52c9247c5d04629658fbcb3ab8c',
+ }
+ },
+ {
+ 'version': '3.7.0',
+ 'md5': 'b98b9495e5655a672d6cb83e1a180f8e',
+ 'resources': {
+ 'compiler-rt': '383c10affd513026f08936b5525523f5',
+ 'openmp': 'f482c86fdead50ba246a1a2b0bbf206f',
+ 'polly': '32f93ffc9cc7e042df22089761558f8b',
+ 'libcxx': '46aa5175cbe1ad42d6e9c995968e56dd',
+ 'libcxxabi': '5aa769e2fca79fa5335cfae8f6258772',
+ 'cfe': '8f9d27335e7331cf0a4711e952f21f01',
+ 'clang-tools-extra': 'd5a87dacb65d981a427a536f6964642e',
+ 'lldb': 'e5931740400d1dc3e7db4c7ba2ceff68',
+ 'libunwind': '9a75392eb7eb8ed5c0840007e212baf5',
+ }
+ },
{
'version': '3.6.2',
'md5': '0c1ee3597d75280dee603bae9cbf5cc2',
@@ -267,7 +341,8 @@ class Llvm(Package):
resource(name=name,
svn=repo,
destination=resources[name]['destination'],
- when='@%(version)s' % release,
+ when='@%s%s' % (release['version'],
+ resources[name].get('variant', "")),
placement=resources[name].get('placement', None))
else:
version(release['version'], release['md5'], url=llvm_url % release)
@@ -277,36 +352,50 @@ class Llvm(Package):
url=resources[name]['url'] % release,
md5=md5,
destination=resources[name]['destination'],
- when='@%(version)s' % release,
+ when='@%s%s' % (release['version'],
+ resources[name].get('variant', "")),
placement=resources[name].get('placement', None))
- def install(self, spec, prefix):
- env['CXXFLAGS'] = self.compiler.cxx11_flag
- cmake_args = [arg for arg in std_cmake_args if 'BUILD_TYPE' not in arg]
+ conflicts('+clang_extra', when='~clang')
+ conflicts('+lldb', when='~clang')
+
+ # Github issue #4986
+ patch('llvm_gcc7.patch', when='@4.0.0:4.0.1+lldb %gcc@7.0:')
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.append_flags('CXXFLAGS', self.compiler.cxx11_flag)
- build_type = 'RelWithDebInfo' if '+debug' in spec else 'Release'
- cmake_args.extend([
- '..',
- '-DCMAKE_BUILD_TYPE=' + build_type,
+ def cmake_args(self):
+ spec = self.spec
+
+ cmake_args = [
'-DLLVM_REQUIRES_RTTI:BOOL=ON',
'-DCLANG_DEFAULT_OPENMP_RUNTIME:STRING=libomp',
- '-DPYTHON_EXECUTABLE:PATH=%s/bin/python' % spec['python'].prefix])
+ '-DPYTHON_EXECUTABLE:PATH={0}'.format(spec['python'].command.path),
+ ]
if '+gold' in spec:
cmake_args.append('-DLLVM_BINUTILS_INCDIR=' +
- os.path.join(spec['binutils'].prefix, 'include'))
+ spec['binutils'].prefix.include)
if '+polly' in spec:
cmake_args.append('-DLINK_POLLY_INTO_TOOLS:Bool=ON')
else:
- cmake_args.append('-DLLVM_EXTERNAL_POLLY_BUILD:Bool=OFF')
+ cmake_args.extend(['-DLLVM_EXTERNAL_POLLY_BUILD:Bool=OFF',
+ '-DLLVM_TOOL_POLLY_BUILD:Bool=OFF',
+ '-DLLVM_POLLY_BUILD:Bool=OFF',
+ '-DLLVM_POLLY_LINK_INTO_TOOLS:Bool=OFF'])
if '+clang' not in spec:
cmake_args.append('-DLLVM_EXTERNAL_CLANG_BUILD:Bool=OFF')
if '+lldb' not in spec:
- cmake_args.append('-DLLVM_EXTERNAL_LLDB_BUILD:Bool=OFF')
+ cmake_args.extend(['-DLLVM_EXTERNAL_LLDB_BUILD:Bool=OFF',
+ '-DLLVM_TOOL_LLDB_BUILD:Bool=OFF'])
if '+internal_unwind' not in spec:
cmake_args.append('-DLLVM_EXTERNAL_LIBUNWIND_BUILD:Bool=OFF')
- if '+libcxx' not in spec:
+ if '+libcxx' in spec:
+ if spec.satisfies('@3.9.0:'):
+ cmake_args.append('-DCLANG_DEFAULT_CXX_STDLIB=libc++')
+ else:
cmake_args.append('-DLLVM_EXTERNAL_LIBCXX_BUILD:Bool=OFF')
cmake_args.append('-DLLVM_EXTERNAL_LIBCXXABI_BUILD:Bool=OFF')
if '+compiler-rt' not in spec:
@@ -335,17 +424,24 @@ class Llvm(Package):
cmake_args.append(
'-DLLVM_TARGETS_TO_BUILD:Bool=' + ';'.join(targets))
- if '+clang' not in spec:
- if '+clang_extra' in spec:
- raise SpackException(
- 'The clang_extra variant requires the `+clang` variant.')
- if '+lldb' in spec:
- raise SpackException(
- 'The lldb variant requires the `+clang` variant')
-
- with working_dir('spack-build', create=True):
- cmake(*cmake_args)
- make()
- make("install")
- cp = which('cp')
- cp('-a', 'bin/', prefix)
+ if spec.satisfies('@4.0.0:') and spec.satisfies('platform=linux'):
+ cmake_args.append('-DCMAKE_BUILD_WITH_INSTALL_RPATH=1')
+ return cmake_args
+
+ @run_before('build')
+ def pre_install(self):
+ with working_dir(self.build_directory):
+ # When building shared libraries these need to be installed first
+ make('install-LLVMTableGen')
+ make('install-LLVMDemangle')
+ make('install-LLVMSupport')
+
+ @run_after('install')
+ def post_install(self):
+ if '+clang' in self.spec and '+python' in self.spec:
+ install_tree(
+ 'tools/clang/bindings/python/clang',
+ join_path(site_packages_dir, 'clang'))
+
+ with working_dir(self.build_directory):
+ install_tree('bin', join_path(self.prefix, 'libexec', 'llvm'))
diff --git a/var/spack/repos/builtin/packages/lmdb/package.py b/var/spack/repos/builtin/packages/lmdb/package.py
index 8c6c23d8dc..fb147403d9 100644
--- a/var/spack/repos/builtin/packages/lmdb/package.py
+++ b/var/spack/repos/builtin/packages/lmdb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,42 +22,40 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-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"""
+class Lmdb(MakefilePackage):
+ """Symas LMDB is an extraordinarily fast, memory-efficient database we
+ developed for the Symas OpenLDAP Project. With memory-mapped files, it
+ has the read performance of a pure in-memory database while retaining
+ the persistence of standard disk-based databases."""
- homepage = "http://www.openldap.org/software/repo.html"
- url = "https://github.com/LMDB/lmdb/archive/LMDB_0.9.16.tar.gz"
+ homepage = "https://lmdb.tech/"
+ url = "https://github.com/LMDB/lmdb/archive/LMDB_0.9.21.tar.gz"
+ version('0.9.21', '41a4f7b63212a00e53fabd8159008201')
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)
+ build_directory = 'libraries/liblmdb'
+
+ @property
+ def install_targets(self):
+ return ['prefix={0}'.format(self.prefix), 'install']
+
+ @run_after('install')
+ def install_pkgconfig(self):
+ mkdirp(self.prefix.lib.pkgconfig)
+
+ with open(join_path(self.prefix.lib.pkgconfig, 'lmdb.pc'), 'w') as f:
+ f.write('prefix={0}\n'.format(self.prefix))
+ f.write('exec_prefix=${prefix}\n')
+ f.write('libdir={0}\n'.format(self.prefix.lib))
+ f.write('includedir={0}\n'.format(self.prefix.include))
+ f.write('\n')
+ f.write('Name: LMDB\n')
+ f.write('Description: Symas LMDB is an extraordinarily fast, '
+ 'memory-efficient database.\n')
+ f.write('Version: {0}\n'.format(self.spec.version))
+ f.write('Cflags: -I${includedir}\n')
+ f.write('Libs: -L${libdir} -llmdb\n')
diff --git a/var/spack/repos/builtin/packages/lmod/0001-fix-problem-with-MODULESHOME-and-issue-271.patch b/var/spack/repos/builtin/packages/lmod/0001-fix-problem-with-MODULESHOME-and-issue-271.patch
new file mode 100644
index 0000000000..ea2f191d1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lmod/0001-fix-problem-with-MODULESHOME-and-issue-271.patch
@@ -0,0 +1,25 @@
+From 6dea3d8c6d1ec9dc279e0f1fbd9965e7cc774678 Mon Sep 17 00:00:00 2001
+From: Robert McLay <mclay@zaniahgroup.com>
+Date: Thu, 11 May 2017 12:42:08 -0500
+Subject: [PATCH] fix problem with MODULESHOME and issue #271
+
+---
+ init/profile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/init/profile.in b/init/profile.in
+index 0a7f7be..fdcbfcc 100644
+--- a/init/profile.in
++++ b/init/profile.in
+@@ -15,7 +15,7 @@ if [ -z "${USER_IS_ROOT:-}" ]; then
+ export MODULEPATH_ROOT="@modulepath_root@"
+ export MODULEPATH=$(@PKG@/libexec/addto --append MODULEPATH $MODULEPATH_ROOT/$LMOD_sys $MODULEPATH_ROOT/Core)
+ export MODULEPATH=$(@PKG@/libexec/addto --append MODULEPATH @PKG@/modulefiles/Core)
+- export BASH_ENV=$MODULESHOME/init/bash
++ export BASH_ENV=@PKG@/init/bash
+
+ #
+ # If MANPATH is empty, Lmod is adding a trailing ":" so that
+--
+2.9.3
+
diff --git a/var/spack/repos/builtin/packages/lmod/package.py b/var/spack/repos/builtin/packages/lmod/package.py
index 9ac270bab5..73cfcd2b88 100644
--- a/var/spack/repos/builtin/packages/lmod/package.py
+++ b/var/spack/repos/builtin/packages/lmod/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
from glob import glob
-class Lmod(Package):
+class Lmod(AutotoolsPackage):
"""Lmod is a Lua based module system that easily handles the MODULEPATH
Hierarchical problem. Environment Modules provide a convenient way to
dynamically change the users' environment through modulefiles. This
@@ -36,18 +36,30 @@ class Lmod(Package):
"""
homepage = 'https://www.tacc.utexas.edu/research-development/tacc-projects/lmod'
- url = 'https://github.com/TACC/Lmod/archive/6.4.1.tar.gz'
+ url = 'https://github.com/TACC/Lmod/archive/7.4.11.tar.gz'
- version('6.4.5', '14f6c58dbc0a5a75574d795eac2c1e3c')
- version('6.4.1', '7978ba777c8aa41a4d8c05fec5f780f4')
- version('6.3.7', '0fa4d5a24c41cae03776f781aa2dedc1')
- version('6.0.1', '91abf52fe5033bd419ffe2842ebe7af9')
+ version('7.7', '8ac594401716c6d1b40cac22bc1030ca')
+ version('7.6.14', '60726c991038b6337fbb27b6a333a2d4')
+ version('7.4.11', '70c55ba0ba3877b6d8df536ee7ea6d49')
+ version('7.4.10', 'a13e36d6196747fded7987ef3dcfb605')
+ version('7.4.9', 'd8ffab81ddca2491fe13e2ac0a4fd320')
+ version('7.4.8', '3b22932437cc29ce546ec887885355e7')
+ version('7.4.5', 'fc34029c60dd9782c3d011c2b93fd266')
+ version('7.4.1', '59b2558ee50877f2cf49ed37d7b09fea')
+ version('7.3', '70180ec2ea1fae53aa83350523f6b2b3')
+ version('6.4.5', '14f6c58dbc0a5a75574d795eac2c1e3c')
+ version('6.4.1', '7978ba777c8aa41a4d8c05fec5f780f4')
+ version('6.3.7', '0fa4d5a24c41cae03776f781aa2dedc1')
+ version('6.0.1', '91abf52fe5033bd419ffe2842ebe7af9')
depends_on('lua@5.2:')
depends_on('lua-luaposix', type=('build', 'run'))
depends_on('lua-luafilesystem', type=('build', 'run'))
depends_on('tcl', type=('build', 'run'))
+ patch('fix_tclsh_paths.patch', when='@:6.4.3')
+ patch('0001-fix-problem-with-MODULESHOME-and-issue-271.patch', when='@7.3.28:7.4.10')
+
parallel = False
def setup_environment(self, spack_env, run_env):
@@ -56,8 +68,6 @@ class Lmod(Package):
spack_env.append_path('LUA_PATH', stage_lua_path.format(
version=self.version), separator=';')
- patch('fix_tclsh_paths.patch', when='@:6.4.3')
-
def patch(self):
"""The tcl scripts should use the tclsh that was discovered
by the configure script. Touch up their #! lines so that the
@@ -66,7 +76,3 @@ class Lmod(Package):
if self.spec.version <= Version('6.4.3'):
for tclscript in glob('src/*.tcl'):
filter_file(r'^#!.*tclsh', '#!@path_to_tclsh@', tclscript)
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make('install')
diff --git a/var/spack/repos/builtin/packages/lndir/package.py b/var/spack/repos/builtin/packages/lndir/package.py
index a7ce892502..071ce420d8 100644
--- a/var/spack/repos/builtin/packages/lndir/package.py
+++ b/var/spack/repos/builtin/packages/lndir/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Lndir(Package):
+class Lndir(AutotoolsPackage):
"""lndir - create a shadow directory of symbolic links to another
directory tree."""
@@ -36,9 +36,3 @@ class Lndir(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-missing_includes.patch b/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-missing_includes.patch
new file mode 100644
index 0000000000..6834648d09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-missing_includes.patch
@@ -0,0 +1,38 @@
+diff -Naur apache-log4cxx-0.10.0.orig/src/examples/cpp/console.cpp apache-log4cxx-0.10.0/src/examples/cpp/console.cpp
+--- apache-log4cxx-0.10.0.orig/src/examples/cpp/console.cpp 2008-04-01 00:34:52.000000000 +0200
++++ apache-log4cxx-0.10.0/src/examples/cpp/console.cpp 2008-05-06 05:40:52.000000000 +0200
+@@ -15,7 +15,10 @@
+ * limitations under the License.
+ */
+
+-#include <stdlib.h>
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
++#include <stdint.h>
+ #include <log4cxx/logger.h>
+ #include <log4cxx/consoleappender.h>
+ #include <log4cxx/simplelayout.h>
+diff -Naur apache-log4cxx-0.10.0.orig/src/main/cpp/inputstreamreader.cpp apache-log4cxx-0.10.0/src/main/cpp/inputstreamreader.cpp
+--- apache-log4cxx-0.10.0.orig/src/main/cpp/inputstreamreader.cpp 2008-04-01 00:34:09.000000000 +0200
++++ apache-log4cxx-0.10.0/src/main/cpp/inputstreamreader.cpp 2008-05-06 05:32:31.000000000 +0200
+@@ -21,6 +21,8 @@
+ #include <log4cxx/helpers/pool.h>
+ #include <log4cxx/helpers/bytebuffer.h>
+
++#include <cstring>
++
+ using namespace log4cxx;
+ using namespace log4cxx::helpers;
+
+diff -Naur apache-log4cxx-0.10.0.orig/src/main/cpp/socketoutputstream.cpp apache-log4cxx-0.10.0/src/main/cpp/socketoutputstream.cpp
+--- apache-log4cxx-0.10.0.orig/src/main/cpp/socketoutputstream.cpp 2008-04-01 00:34:09.000000000 +0200
++++ apache-log4cxx-0.10.0/src/main/cpp/socketoutputstream.cpp 2008-05-06 05:35:55.000000000 +0200
+@@ -20,6 +20,8 @@
+ #include <log4cxx/helpers/socket.h>
+ #include <log4cxx/helpers/bytebuffer.h>
+
++#include <cstring>
++
+ using namespace log4cxx;
+ using namespace log4cxx::helpers; \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-narrowing-fixes-from-upstream.patch b/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-narrowing-fixes-from-upstream.patch
new file mode 100644
index 0000000000..e583e7661d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/log4cxx/log4cxx-0.10.0-narrowing-fixes-from-upstream.patch
@@ -0,0 +1,117 @@
+diff --git a/src/main/cpp/locationinfo.cpp b/src/main/cpp/locationinfo.cpp
+index e76ea29..bd22a1d 100644
+--- a/src/main/cpp/locationinfo.cpp
++++ b/src/main/cpp/locationinfo.cpp
+@@ -149,18 +149,21 @@ void LocationInfo::write(ObjectOutputStream& os, Pool& p) const {
+ os.writeNull(p);
+ } else {
+ char prolog[] = {
+- 0x72, 0x00, 0x21, 0x6F, 0x72, 0x67, 0x2E,
+- 0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2E, 0x6C,
+- 0x6F, 0x67, 0x34, 0x6A, 0x2E, 0x73, 0x70, 0x69,
+- 0x2E, 0x4C, 0x6F, 0x63, 0x61, 0x74, 0x69, 0x6F,
+- 0x6E, 0x49, 0x6E, 0x66, 0x6F, 0xED, 0x99, 0xBB,
+- 0xE1, 0x4A, 0x91, 0xA5, 0x7C, 0x02, 0x00, 0x01,
+- 0x4C, 0x00, 0x08, 0x66, 0x75, 0x6C, 0x6C, 0x49,
+- 0x6E, 0x66, 0x6F,
+- 0x74, 0x00, 0x12, 0x4C, 0x6A,
+- 0x61, 0x76, 0x61, 0x2F, 0x6C, 0x61, 0x6E, 0x67,
+- 0x2F, 0x53, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x3B,
+- 0x78, 0x70 };
++ 0x72,
++ 0x00,
++ 0x21, 0x6F, 0x72, 0x67, 0x2E, 0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2E,
++ 0x6C, 0x6F, 0x67, 0x34, 0x6A, 0x2E, 0x73, 0x70, 0x69, 0x2E, 0x4C, 0x6F,
++ 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x49, 0x6E, 0x66, 0x6F, static_cast<char>(0xED),
++ static_cast<char>(0x99), static_cast<char>(0xBB), static_cast<char>(0xE1),
++ 0x4A, static_cast<char>(0x91), static_cast<char>(0xA5), 0x7C, 0x02,
++ 0x00,
++ 0x01, 0x4C,
++ 0x00,
++ 0x08, 0x66, 0x75, 0x6C, 0x6C, 0x49, 0x6E, 0x66, 0x6F, 0x74,
++ 0x00,
++ 0x12, 0x4C, 0x6A, 0x61, 0x76, 0x61, 0x2F, 0x6C, 0x61, 0x6E, 0x67, 0x2F,
++ 0x53, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x3B, 0x78, 0x70
++ };
+ os.writeProlog("org.apache.log4j.spi.LocationInfo", 2, prolog, sizeof(prolog), p);
+ char* line = p.itoa(lineNumber);
+ //
+diff --git a/src/main/cpp/loggingevent.cpp b/src/main/cpp/loggingevent.cpp
+index 1c0d4be..edbf40b 100644
+--- a/src/main/cpp/loggingevent.cpp
++++ b/src/main/cpp/loggingevent.cpp
+@@ -242,7 +242,7 @@ void LoggingEvent::writeProlog(ObjectOutputStream& os, Pool& p) {
+ 0x68, 0x65, 0x2E, 0x6C, 0x6F, 0x67, 0x34, 0x6A,
+ 0x2E, 0x73, 0x70, 0x69, 0x2E, 0x4C, 0x6F, 0x67,
+ 0x67, 0x69, 0x6E, 0x67, 0x45, 0x76, 0x65, 0x6E,
+- 0x74, 0xF3, 0xF2, 0xB9, 0x23, 0x74, 0x0B, 0xB5,
++ 0x74, static_cast<char>(0xF3), static_cast<char>(0xF2), static_cast<char>(0xB9), 0x23, 0x74, 0x0B, static_cast<char>(0xB5),
+ 0x3F, 0x03, 0x00, 0x0A, 0x5A, 0x00, 0x15, 0x6D,
+ 0x64, 0x63, 0x43, 0x6F, 0x70, 0x79, 0x4C, 0x6F,
+ 0x6F, 0x6B, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75,
+diff --git a/src/main/cpp/objectoutputstream.cpp b/src/main/cpp/objectoutputstream.cpp
+index 7cd696b..5442420 100644
+--- a/src/main/cpp/objectoutputstream.cpp
++++ b/src/main/cpp/objectoutputstream.cpp
+@@ -36,7 +36,7 @@ ObjectOutputStream::ObjectOutputStream(OutputStreamPtr outputStream, Pool& p)
+ objectHandle(0x7E0000),
+ classDescriptions(new ClassDescriptionMap())
+ {
+- char start[] = { 0xAC, 0xED, 0x00, 0x05 };
++ char start[] = { static_cast<char>(0xAC), static_cast<char>(0xED), 0x00, 0x05 };
+ ByteBuffer buf(start, sizeof(start));
+ os->write(buf, p);
+ }
+@@ -81,15 +81,15 @@ void ObjectOutputStream::writeObject(const MDC::Map& val, Pool& p) {
+ //
+ // TC_OBJECT and the classDesc for java.util.Hashtable
+ //
+- char prolog[] = {
+- 0x72, 0x00, 0x13, 0x6A, 0x61, 0x76, 0x61,
+- 0x2E, 0x75, 0x74, 0x69, 0x6C, 0x2E, 0x48, 0x61,
+- 0x73, 0x68, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x13,
+- 0xBB, 0x0F, 0x25, 0x21, 0x4A, 0xE4, 0xB8, 0x03,
+- 0x00, 0x02, 0x46, 0x00, 0x0A, 0x6C, 0x6F, 0x61,
+- 0x64, 0x46, 0x61, 0x63, 0x74, 0x6F, 0x72, 0x49,
+- 0x00, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
+- 0x6F, 0x6C, 0x64, 0x78, 0x70 };
++ char prolog[] = {
++ 0x72, 0x00, 0x13, 0x6A, 0x61, 0x76, 0x61,
++ 0x2E, 0x75, 0x74, 0x69, 0x6C, 0x2E, 0x48, 0x61,
++ 0x73, 0x68, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x13,
++ static_cast<char>(0xBB), 0x0F, 0x25, 0x21, 0x4A, static_cast<char>(0xE4), static_cast<char>(0xB8), 0x03,
++ 0x00, 0x02, 0x46, 0x00, 0x0A, 0x6C, 0x6F, 0x61,
++ 0x64, 0x46, 0x61, 0x63, 0x74, 0x6F, 0x72, 0x49,
++ 0x00, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
++ 0x6F, 0x6C, 0x64, 0x78, 0x70 };
+ writeProlog("java.util.Hashtable", 1, prolog, sizeof(prolog), p);
+ //
+ // loadFactor = 0.75, threshold = 5, blockdata start, buckets.size = 7
+diff --git a/src/test/cpp/xml/domtestcase.cpp b/src/test/cpp/xml/domtestcase.cpp
+index a500628..29d67dd 100644
+--- a/src/test/cpp/xml/domtestcase.cpp
++++ b/src/test/cpp/xml/domtestcase.cpp
+@@ -190,9 +190,9 @@ public:
+ DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase3.xml"));
+ LOG4CXX_INFO(logger, "File name is expected to end with a superscript 3");
+ #if LOG4CXX_LOGCHAR_IS_UTF8
+- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xC2, 0xB3, 0 };
++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xC2), static_cast<logchar>(0xB3), 0 };
+ #else
+- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xB3, 0 };
++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xB3), 0 };
+ #endif
+ File file;
+ file.setPath(fname);
+@@ -209,9 +209,9 @@ public:
+ DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase4.xml"));
+ LOG4CXX_INFO(logger, "File name is expected to end with an ideographic 4");
+ #if LOG4CXX_LOGCHAR_IS_UTF8
+- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xE3, 0x86, 0x95, 0 };
++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xE3), static_cast<logchar>(0x86), static_cast<logchar>(0x95), 0 };
+ #else
+- const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0x3195, 0 };
++ const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0x3195), 0 };
+ #endif
+ File file;
+ file.setPath(fname); \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/log4cxx/package.py b/var/spack/repos/builtin/packages/log4cxx/package.py
new file mode 100644
index 0000000000..b2bf7a4e35
--- /dev/null
+++ b/var/spack/repos/builtin/packages/log4cxx/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Log4cxx(AutotoolsPackage):
+ """A C++ port of Log4j"""
+
+ homepage = "https://logging.apache.org/log4cxx/latest_stable/"
+ url = "http://mirror.netcologne.de/apache.org/logging/log4cxx/0.10.0/apache-log4cxx-0.10.0.tar.gz"
+
+ version('0.10.0', 'b30ffb8da3665178e68940ff7a61084c')
+
+ depends_on('libxml2')
+ depends_on('apr-util')
+
+ build_directory = 'spack-build'
+
+ # patches from https://aur.archlinux.org/packages/log4cxx/
+ patch('log4cxx-0.10.0-missing_includes.patch')
+ patch('log4cxx-0.10.0-narrowing-fixes-from-upstream.patch')
+
+ def configure_args(self):
+ args = ['--disable-static']
+ return args
diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py
index 3825867bb6..586750b9bf 100644
--- a/var/spack/repos/builtin/packages/lrslib/package.py
+++ b/var/spack/repos/builtin/packages/lrslib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lrzip/package.py b/var/spack/repos/builtin/packages/lrzip/package.py
index 42542acfdb..531cba2b87 100644
--- a/var/spack/repos/builtin/packages/lrzip/package.py
+++ b/var/spack/repos/builtin/packages/lrzip/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lua-bitlib/package.py b/var/spack/repos/builtin/packages/lua-bitlib/package.py
new file mode 100644
index 0000000000..014eb77e43
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lua-bitlib/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import os
+
+
+class LuaBitlib(Package):
+ """Lua-jit-like bitwise operations for lua"""
+
+ homepage = "http://luaforge.net/projects/bitlib"
+ url = "https://luarocks.org/bitlib-23-2.src.rock"
+
+ version('23', '9fee36a6e512c54bf6364dfe97d1d871',
+ url="https://luarocks.org/bitlib-23-2.src.rock",
+ expand=False)
+
+ extends('lua')
+
+ def install(self, spec, prefix):
+ luarocks('unpack', "bitlib-23-2.src.rock")
+ os.chdir(os.path.join('bitlib-23-2', 'bitlib-23'))
+ sed = which('sed')
+ sed('-ie', 's/luaL_reg/luaL_Reg/', 'lbitlib.c')
+ luarocks('--tree=' + prefix, 'make')
diff --git a/var/spack/repos/builtin/packages/lua-jit/package.py b/var/spack/repos/builtin/packages/lua-jit/package.py
index 5f7de8ff06..2005936110 100644
--- a/var/spack/repos/builtin/packages/lua-jit/package.py
+++ b/var/spack/repos/builtin/packages/lua-jit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lua-lpeg/package.py b/var/spack/repos/builtin/packages/lua-lpeg/package.py
new file mode 100644
index 0000000000..aa9a491e4b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lua-lpeg/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class LuaLpeg(Package):
+ """pattern-matching for lua"""
+
+ homepage = "http://www.inf.puc-rio.br/~roberto/lpeg/"
+ url = "https://luarocks.org/manifests/luarocks/lpeg-0.12-1.src.rock"
+
+ version('0.12.1', 'b5778bfee67761fcbe7a2d23cb889ea8',
+ url='https://luarocks.org/manifests/luarocks/lpeg-0.12-1.src.rock',
+ expand=False)
+
+ extends("lua")
+
+ def install(self, spec, prefix):
+ luarocks('--tree=' + prefix, 'install', 'lpeg-0.12-1.src.rock')
diff --git a/var/spack/repos/builtin/packages/lua-luafilesystem/package.py b/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
index 7a5c90f36f..7194654838 100644
--- a/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
+++ b/var/spack/repos/builtin/packages/lua-luafilesystem/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -40,7 +40,12 @@ class LuaLuafilesystem(Package):
version('1_6_3', 'bed11874cfded8b4beed7dd054127b24')
- depends_on('git@2.9.3:', type='build')
+ # The version constraint here comes from this post:
+ #
+ # https://www.perforce.com/blog/git-beyond-basics-using-shallow-clones
+ #
+ # where it is claimed that full shallow clone support was added @1.9
+ depends_on('git@1.9.0:', type='build')
extends('lua')
def install(self, spec, prefix):
diff --git a/var/spack/repos/builtin/packages/lua-luaposix/package.py b/var/spack/repos/builtin/packages/lua-luaposix/package.py
index 3803a938c8..5cc81d6e65 100644
--- a/var/spack/repos/builtin/packages/lua-luaposix/package.py
+++ b/var/spack/repos/builtin/packages/lua-luaposix/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lua-mpack/package.py b/var/spack/repos/builtin/packages/lua-mpack/package.py
new file mode 100644
index 0000000000..ffdb953428
--- /dev/null
+++ b/var/spack/repos/builtin/packages/lua-mpack/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class LuaMpack(Package):
+ """lua bindings to libmpack"""
+
+ homepage = "https://luarocks.org/modules/tarruda/mpack"
+ url = "https://luarocks.org/manifests/tarruda/mpack-1.0.6-0.src.rock"
+
+ depends_on('msgpack-c')
+
+ version('1.0.0-0', '9a7bd842753194124830bc7426e78c1b',
+ url='https://luarocks.org/manifests/tarruda/mpack-1.0.6-0.src.rock',
+ expand=False)
+
+ extends('lua')
+
+ def install(self, spec, prefix):
+ luarocks('--tree=' + prefix, 'install', 'mpack-1.0.6-0.src.rock')
diff --git a/var/spack/repos/builtin/packages/lua/package.py b/var/spack/repos/builtin/packages/lua/package.py
index 357e2cc03a..46d1e5c094 100644
--- a/var/spack/repos/builtin/packages/lua/package.py
+++ b/var/spack/repos/builtin/packages/lua/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,10 +27,12 @@ import os
class Lua(Package):
- """ The Lua programming language interpreter and library """
+ """The Lua programming language interpreter and library."""
+
homepage = "http://www.lua.org"
- url = "http://www.lua.org/ftp/lua-5.1.5.tar.gz"
+ url = "http://www.lua.org/ftp/lua-5.3.4.tar.gz"
+ version('5.3.4', '53a9c68bcc0eda58bdc2095ad5cdfc63')
version('5.3.2', '33278c2ab5ee3c1a875be8d55c1ca2a1')
version('5.3.1', '797adacada8d85761c079390ff1d9961')
version('5.3.0', 'a1b0a7e92d0c85bbff7a8d27bf29f8af')
@@ -62,20 +64,28 @@ class Lua(Package):
else:
target = 'linux'
make('INSTALL_TOP=%s' % prefix,
+ 'MYCFLAGS=%s' % (
+ self.compiler.pic_flag),
'MYLDFLAGS=-L%s -L%s' % (
spec['readline'].prefix.lib,
spec['ncurses'].prefix.lib),
- 'MYLIBS=-lncurses',
+ 'MYLIBS=-lncursesw',
'CC=%s -std=gnu99' % spack_cc,
target)
make('INSTALL_TOP=%s' % prefix,
+ 'MYCFLAGS=%s' % (
+ self.compiler.pic_flag),
'MYLDFLAGS=-L%s -L%s' % (
spec['readline'].prefix.lib,
spec['ncurses'].prefix.lib),
- 'MYLIBS=-lncurses',
+ 'MYLIBS=-lncursesw',
'CC=%s -std=gnu99' % spack_cc,
'install')
+ static_to_shared_library(join_path(prefix.lib, 'liblua.a'),
+ arguments=['-lm'], version=self.version,
+ compat_version=self.version.up_to(2))
+
with working_dir(os.path.join('luarocks', 'luarocks')):
configure('--prefix=' + prefix, '--with-lua=' + prefix)
make('build')
@@ -86,9 +96,9 @@ class Lua(Package):
paths.append(os.path.join(path, '?', 'init.lua'))
cpaths.append(os.path.join(path, '?.so'))
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
lua_paths = []
- for d in extension_spec.traverse(
+ for d in dependent_spec.traverse(
deptypes=('build', 'run'), deptype_query='run'):
if d.package.extends(self.spec):
lua_paths.append(os.path.join(d.prefix, self.lua_lib_dir))
@@ -111,9 +121,9 @@ class Lua(Package):
# Add LUA to PATH for dependent packages
spack_env.prepend_path('PATH', self.prefix.bin)
- # For run time environment set only the path for extension_spec and
+ # For run time environment set only the path for dependent_spec and
# prepend it to LUAPATH
- if extension_spec.package.extends(self.spec):
+ if dependent_spec.package.extends(self.spec):
run_env.prepend_path('LUA_PATH', ';'.join(lua_patterns),
separator=';')
run_env.prepend_path('LUA_CPATH', ';'.join(lua_cpatterns),
@@ -143,13 +153,13 @@ class Lua(Package):
@property
def lua_lib_dir(self):
- return os.path.join('lib', 'lua', self.version.up_to(2))
+ return os.path.join('lib', 'lua', str(self.version.up_to(2)))
@property
def lua_share_dir(self):
- return os.path.join('share', 'lua', self.version.up_to(2))
+ return os.path.join('share', 'lua', str(self.version.up_to(2)))
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""
Called before lua modules's install() methods.
diff --git a/var/spack/repos/builtin/packages/luit/package.py b/var/spack/repos/builtin/packages/luit/package.py
index 54fd740bdc..47eb6be44c 100644
--- a/var/spack/repos/builtin/packages/luit/package.py
+++ b/var/spack/repos/builtin/packages/luit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lulesh/package.py b/var/spack/repos/builtin/packages/lulesh/package.py
index e880d4fa14..489a175108 100644
--- a/var/spack/repos/builtin/packages/lulesh/package.py
+++ b/var/spack/repos/builtin/packages/lulesh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,33 +23,62 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class Lulesh(Package):
- """Livermore Unstructured Lagrangian Explicit Shock Hydrodynamics (LULESH)
+class Lulesh(MakefilePackage):
+ """LULESH is a highly simplified application, hard-coded to only
+ style typical in scientific C or C++ based applications. Hard
+ code to only solve a Sedov blast problem with analytic answer
"""
-
+ tags = ['proxy-app']
homepage = "https://codesign.llnl.gov/lulesh.php"
url = "https://codesign.llnl.gov/lulesh/lulesh2.0.3.tgz"
- version("2.0.3", "336644a8750f71c7c6b9d2960976e7aa")
+ version('2.0.3', '336644a8750f71c7c6b9d2960976e7aa')
- patch("remove_defaults.patch")
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('openmp', default=True, description='Build with OpenMP support')
+ variant('visual', default=False,
+ description='Build with Visualization support (Silo, hdf5)')
- variant('mpip', default=False)
+ depends_on('mpi', when='+mpi')
+ depends_on('silo', when='+visual')
+ depends_on('hdf5', when='+visual')
- depends_on("mpi", type="build")
- depends_on("mpip", when="+mpip")
+ @property
+ def build_targets(self):
+ targets = []
+ cxxflag = ' -g -O3 -I. '
+ ldflags = ' -g -O3 '
+ if '~mpi' in self.spec:
+ targets.append('CXX = {0} {1}'.format(spack_cxx, ' -DUSE_MPI=0 '))
+ else:
+ targets.append(
+ 'CXX = {0} {1}'.format(self.spec['mpi'].mpicxx,
+ ' -DUSE_MPI=1'))
+ targets.append(
+ 'MPI_INC = {0}'.format(self.spec['mpi'].prefix.include))
+ targets.append('MPI_LIB = {0}'.format(self.spec['mpi'].prefix.lib))
+ if '+visual' in self.spec:
+ targets.append(
+ 'SILO_INCDIR = {0}'.format(self.spec['silo'].prefix.include))
+ targets.append(
+ 'SILO_LIBDIR = {0}'.format(self.spec['silo'].prefix.lib))
+ cxxflag = ' -g -DVIZ_MESH -I${SILO_INCDIR} '
+ ldflags = ' -g -L${SILO_LIBDIR} -Wl,-rpath -Wl, '
+ ldflags += '${SILO_LIBDIR} -lsiloh5 -lhdf5 '
- def install(self, spec, prefix):
- if '+mpip' in spec:
- os.environ["LDFLAGS"] = " -lmpiP -ldwarf -lelf"
+ if '+openmp' in self.spec:
+ cxxflag += self.compiler.openmp_flag
+ ldflags += self.compiler.openmp_flag
- if os.uname()[4] == "x86_64":
- os.environ["LDFLAGS"] += " -lunwind"
+ targets.append('CXXFLAGS = {0}'.format(cxxflag))
+ targets.append('LDFLAGS = {0}'.format(ldflags))
+ return targets
- os.environ["CXX"] = spec['mpi'].mpicxx + " -DUSE_MPI=1"
- os.environ["PREFIX"] = prefix
- make()
- make("install")
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('lulesh{0}'.format(self.version.up_to(2)), prefix.bin)
+ mkdirp(prefix.doc)
+ install('README', prefix.doc)
+ install('TODO', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/lulesh/remove_defaults.patch b/var/spack/repos/builtin/packages/lulesh/remove_defaults.patch
deleted file mode 100644
index 36cce25ba1..0000000000
--- a/var/spack/repos/builtin/packages/lulesh/remove_defaults.patch
+++ /dev/null
@@ -1,60 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -1,17 +1,9 @@
- #default build suggestion of MPI + OPENMP with gcc on Livermore machines you might have to change the compiler name
-
--SHELL = /bin/sh
- .SUFFIXES: .cc .o
-
- LULESH_EXEC = lulesh2.0
-
--MPI_INC = /opt/local/include/openmpi
--MPI_LIB = /opt/local/lib
--
--SERCXX = g++ -DUSE_MPI=0
--MPICXX = mpig++ -DUSE_MPI=1
--CXX = $(MPICXX)
--
- SOURCES2.0 = \
- lulesh.cc \
- lulesh-comm.cc \
-@@ -20,28 +12,6 @@
- lulesh-init.cc
- OBJECTS2.0 = $(SOURCES2.0:.cc=.o)
-
--#Default build suggestions with OpenMP for g++
--CXXFLAGS = -g -O3 -fopenmp -I. -Wall
--LDFLAGS = -g -O3 -fopenmp
--
--#Below are reasonable default flags for a serial build
--#CXXFLAGS = -g -O3 -I. -Wall
--#LDFLAGS = -g -O3
--
--#common places you might find silo on the Livermore machines.
--#SILO_INCDIR = /opt/local/include
--#SILO_LIBDIR = /opt/local/lib
--#SILO_INCDIR = ./silo/4.9/1.8.10.1/include
--#SILO_LIBDIR = ./silo/4.9/1.8.10.1/lib
--
--#If you do not have silo and visit you can get them at:
--#silo: https://wci.llnl.gov/codes/silo/downloads.html
--#visit: https://wci.llnl.gov/codes/visit/download.html
--
--#below is and example of how to make with silo, hdf5 to get vizulization by default all this is turned off. All paths are Livermore specific.
--#CXXFLAGS = -g -DVIZ_MESH -I${SILO_INCDIR} -Wall -Wno-pragmas
--#LDFLAGS = -g -L${SILO_LIBDIR} -Wl,-rpath -Wl,${SILO_LIBDIR} -lsiloh5 -lhdf5
--
- .cc.o: lulesh.h
- @echo "Building $<"
- $(CXX) -c $(CXXFLAGS) -o $@ $<
-@@ -56,6 +26,7 @@
- /bin/rm -f *.o *~ $(OBJECTS) $(LULESH_EXEC)
- /bin/rm -rf *.dSYM
-
--tar: clean
-- cd .. ; tar cvf lulesh-2.0.tar LULESH-2.0 ; mv lulesh-2.0.tar LULESH-2.0
--
-+install: lulesh2.0
-+ @echo "Installing"
-+ mkdir -p $(PREFIX)/bin
-+ install --mode=755 lulesh2.0 $(PREFIX)/bin/
diff --git a/var/spack/repos/builtin/packages/lwgrp/package.py b/var/spack/repos/builtin/packages/lwgrp/package.py
index 9322d69b9b..aa742230ac 100644
--- a/var/spack/repos/builtin/packages/lwgrp/package.py
+++ b/var/spack/repos/builtin/packages/lwgrp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Lwgrp(Package):
+class Lwgrp(AutotoolsPackage):
"""Thie light-weight group library provides process group
representations using O(log N) space and time."""
@@ -35,8 +35,3 @@ class Lwgrp(Package):
version('1.0.2', 'ab7ba3bdd8534a651da5076f47f27d8a')
depends_on('mpi')
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/lwm2/package.py b/var/spack/repos/builtin/packages/lwm2/package.py
index 063204b84a..4858391f2a 100644
--- a/var/spack/repos/builtin/packages/lwm2/package.py
+++ b/var/spack/repos/builtin/packages/lwm2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Lwm2(Package):
+class Lwm2(AutotoolsPackage):
"""LWM2: Light Weight Measurement Module. This is a PMPI module
that can collect a number of time-sliced MPI and POSIX I/O
measurements from a program.
@@ -36,8 +36,3 @@ class Lwm2(Package):
depends_on("papi")
depends_on("mpi")
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/lz4/package.py b/var/spack/repos/builtin/packages/lz4/package.py
index de7e566e70..2c8d0977ae 100644
--- a/var/spack/repos/builtin/packages/lz4/package.py
+++ b/var/spack/repos/builtin/packages/lz4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,13 +31,22 @@ class Lz4(Package):
an extremely fast decoder, with speed in multiple GB/s per core,
typically reaching RAM speed limits on multi-core systems."""
- homepage = "http://cyan4973.github.io/lz4/"
- url = "https://github.com/Cyan4973/lz4/archive/r131.tar.gz"
+ homepage = "http://lz4.github.io/lz4/"
+ url = "https://github.com/lz4/lz4/archive/v1.7.5.tar.gz"
- version('131', '42b09fab42331da9d3fb33bd5c560de9')
+ version('1.7.5', 'c9610c5ce97eb431dddddf0073d919b9')
+ version('1.3.1', '42b09fab42331da9d3fb33bd5c560de9')
# depends_on('valgrind', type='test')
+ def url_for_version(self, version):
+ url = "https://github.com/lz4/lz4/archive"
+
+ if version > Version('1.3.1'):
+ return "{0}/v{1}.tar.gz".format(url, version)
+ else:
+ return "{0}/r{1}.tar.gz".format(url, version.joined)
+
def install(self, spec, prefix):
make()
if self.run_tests:
diff --git a/var/spack/repos/builtin/packages/lzma/package.py b/var/spack/repos/builtin/packages/lzma/package.py
index 3eb97a2d9f..3e256d54b0 100644
--- a/var/spack/repos/builtin/packages/lzma/package.py
+++ b/var/spack/repos/builtin/packages/lzma/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/lzo/package.py b/var/spack/repos/builtin/packages/lzo/package.py
index e9c98842f4..ded3a32375 100644
--- a/var/spack/repos/builtin/packages/lzo/package.py
+++ b/var/spack/repos/builtin/packages/lzo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/m4/gnulib-pgi.patch b/var/spack/repos/builtin/packages/m4/gnulib-pgi.patch
new file mode 100644
index 0000000000..059d897de3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/m4/gnulib-pgi.patch
@@ -0,0 +1,195 @@
+Port to PGI 16.10 x86-64
+
+This patch fixes one real bug in gl_anylinked_list2.h, along with some minor
+glitches that are not bugs. It does not silence PGI's thousands of bogus
+warnings when compiling test-intprops.c. Fortunately, the warnings do not
+cause a failure.
+
+* lib/c-ctype.h (_C_CTYPE_LOWER_A_THRU_F_N, _C_CTYPE_LOWER_N): Rename parameter
+ to avoid PGI warning about '#define f(n) 'n''. My goodness, PGI goes back a
+ long ways - this predates C89!
+* lib/gl_anylinked_list2.h (ASYNCSAFE): Fix bug caught by PGI. For example,
+ ASYNCSAFE (const void *) should expand to 'const void *volatile', not to
+ 'volatile const void *'.
+* lib/spawn.in.h (POSIX_SPAWN_USEVFORK): Don't define if already defined.
+* lib/verify.h (verify) [!__GNUC__]: Use shorter albeit meaningless string to
+ bypass silly compiler limits.
+* tests/infinity.h (Infinityf, Infinityd, Infinityl) [__PGI]:
+* tests/nan.h (NaNf, NaNd, NaNl): Use static functions to avoid misguided
+ compiler diagnostics. Is there some reason we don’t use static functions
+ on all platforms?
+
+diff --git a/lib/c-ctype.h b/lib/c-ctype.h
+index bdca1f1..ec6a3a0 100644
+--- a/lib/c-ctype.h
++++ b/lib/c-ctype.h
+@@ -115,16 +115,16 @@ extern "C" {
+
+ /* Cases for lowercase hex letters, and lowercase letters, all offset by N. */
+
+-#define _C_CTYPE_LOWER_A_THRU_F_N(n) \
+- case 'a' + (n): case 'b' + (n): case 'c' + (n): case 'd' + (n): \
+- case 'e' + (n): case 'f' + (n)
+-#define _C_CTYPE_LOWER_N(n) \
+- _C_CTYPE_LOWER_A_THRU_F_N(n): \
+- case 'g' + (n): case 'h' + (n): case 'i' + (n): case 'j' + (n): \
+- case 'k' + (n): case 'l' + (n): case 'm' + (n): case 'n' + (n): \
+- case 'o' + (n): case 'p' + (n): case 'q' + (n): case 'r' + (n): \
+- case 's' + (n): case 't' + (n): case 'u' + (n): case 'v' + (n): \
+- case 'w' + (n): case 'x' + (n): case 'y' + (n): case 'z' + (n)
++#define _C_CTYPE_LOWER_A_THRU_F_N(N) \
++ case 'a' + (N): case 'b' + (N): case 'c' + (N): case 'd' + (N): \
++ case 'e' + (N): case 'f' + (N)
++#define _C_CTYPE_LOWER_N(N) \
++ _C_CTYPE_LOWER_A_THRU_F_N(N): \
++ case 'g' + (N): case 'h' + (N): case 'i' + (N): case 'j' + (N): \
++ case 'k' + (N): case 'l' + (N): case 'm' + (N): case 'n' + (N): \
++ case 'o' + (N): case 'p' + (N): case 'q' + (N): case 'r' + (N): \
++ case 's' + (N): case 't' + (N): case 'u' + (N): case 'v' + (N): \
++ case 'w' + (N): case 'x' + (N): case 'y' + (N): case 'z' + (N)
+
+ /* Cases for hex letters, digits, lower, punct, and upper. */
+
+diff --git a/lib/gl_anylinked_list2.h b/lib/gl_anylinked_list2.h
+index c249f31..4545da9 100644
+--- a/lib/gl_anylinked_list2.h
++++ b/lib/gl_anylinked_list2.h
+@@ -29,7 +29,7 @@
+ and we use 'volatile' assignments to prevent the compiler from reordering
+ such assignments. */
+ #ifdef SIGNAL_SAFE_LIST
+-# define ASYNCSAFE(type) *(volatile type *)&
++# define ASYNCSAFE(type) *(type volatile *)&
+ #else
+ # define ASYNCSAFE(type)
+ #endif
+diff --git a/lib/spawn.in.h b/lib/spawn.in.h
+index e8116f9..b4b9197 100644
+--- a/lib/spawn.in.h
++++ b/lib/spawn.in.h
+@@ -142,7 +142,8 @@ typedef struct
+ # endif
+ #endif
+ /* A GNU extension. Use the next free bit position. */
+-#define POSIX_SPAWN_USEVFORK \
++#ifndef POSIX_SPAWN_USEVFORK
++# define POSIX_SPAWN_USEVFORK \
+ ((POSIX_SPAWN_RESETIDS | (POSIX_SPAWN_RESETIDS - 1) \
+ | POSIX_SPAWN_SETPGROUP | (POSIX_SPAWN_SETPGROUP - 1) \
+ | POSIX_SPAWN_SETSIGDEF | (POSIX_SPAWN_SETSIGDEF - 1) \
+@@ -152,6 +153,7 @@ typedef struct
+ | POSIX_SPAWN_SETSCHEDULER \
+ | (POSIX_SPAWN_SETSCHEDULER > 0 ? POSIX_SPAWN_SETSCHEDULER - 1 : 0)) \
+ + 1)
++#endif
+ #if !GNULIB_defined_verify_POSIX_SPAWN_USEVFORK_no_overlap
+ typedef int verify_POSIX_SPAWN_USEVFORK_no_overlap
+ [(((POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP
+diff --git a/lib/verify.h b/lib/verify.h
+index dcaf7ca..dcba9c8 100644
+--- a/lib/verify.h
++++ b/lib/verify.h
+@@ -248,7 +248,12 @@ template <int w>
+ /* Verify requirement R at compile-time, as a declaration without a
+ trailing ';'. */
+
+-#define verify(R) _GL_VERIFY (R, "verify (" #R ")")
++#ifdef __GNUC__
++# define verify(R) _GL_VERIFY (R, "verify (" #R ")")
++#else
++/* PGI barfs if R is long. Play it safe. */
++# define verify(R) _GL_VERIFY (R, "verify (...)")
++#endif
+
+ #ifndef __has_builtin
+ # define __has_builtin(x) 0
+diff --git a/tests/infinity.h b/tests/infinity.h
+index 431f700..ef5d3bd 100644
+--- a/tests/infinity.h
++++ b/tests/infinity.h
+@@ -18,8 +18,9 @@
+ /* Infinityf () returns a 'float' +Infinity. */
+
+ /* The Microsoft MSVC 9 compiler chokes on the expression 1.0f / 0.0f.
+- The IBM XL C compiler on z/OS complains. */
+-#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++ The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
++#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__) || defined __PGI
+ static float
+ Infinityf ()
+ {
+@@ -34,8 +35,9 @@ Infinityf ()
+ /* Infinityd () returns a 'double' +Infinity. */
+
+ /* The Microsoft MSVC 9 compiler chokes on the expression 1.0 / 0.0.
+- The IBM XL C compiler on z/OS complains. */
+-#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++ The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
++#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__) || defined __PGI
+ static double
+ Infinityd ()
+ {
+@@ -50,8 +52,9 @@ Infinityd ()
+ /* Infinityl () returns a 'long double' +Infinity. */
+
+ /* The Microsoft MSVC 9 compiler chokes on the expression 1.0L / 0.0L.
+- The IBM XL C compiler on z/OS complains. */
+-#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++ The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
++#if defined _MSC_VER || (defined __MVS__ && defined __IBMC__) || defined __PGI
+ static long double
+ Infinityl ()
+ {
+diff --git a/tests/nan.h b/tests/nan.h
+index 48236b5..b5a0f29 100644
+--- a/tests/nan.h
++++ b/tests/nan.h
+@@ -25,8 +25,11 @@
+ /* NaNf () returns a 'float' not-a-number. */
+
+ /* The Compaq (ex-DEC) C 6.4 compiler and the Microsoft MSVC 9 compiler choke
+- on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains. */
+-#if defined __DECC || defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++ on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
++#if (defined __DECC || defined _MSC_VER \
++ || (defined __MVS__ && defined __IBMC__) \
++ || defined __PGI)
+ static float
+ NaNf ()
+ {
+@@ -41,8 +44,11 @@ NaNf ()
+ /* NaNd () returns a 'double' not-a-number. */
+
+ /* The Compaq (ex-DEC) C 6.4 compiler and the Microsoft MSVC 9 compiler choke
+- on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains. */
+-#if defined __DECC || defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++ on the expression 0.0 / 0.0. The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
++#if (defined __DECC || defined _MSC_VER \
++ || (defined __MVS__ && defined __IBMC__) \
++ || defined __PGI)
+ static double
+ NaNd ()
+ {
+@@ -59,14 +65,15 @@ NaNd ()
+ /* On Irix 6.5, gcc 3.4.3 can't compute compile-time NaN, and needs the
+ runtime type conversion.
+ The Microsoft MSVC 9 compiler chokes on the expression 0.0L / 0.0L.
+- The IBM XL C compiler on z/OS complains. */
++ The IBM XL C compiler on z/OS complains.
++ PGI 16.10 complains. */
+ #ifdef __sgi
+ static long double NaNl ()
+ {
+ double zero = 0.0;
+ return zero / zero;
+ }
+-#elif defined _MSC_VER || (defined __MVS__ && defined __IBMC__)
++#elif defined _MSC_VER || (defined __MVS__ && defined __IBMC__) || defined __PGI
+ static long double
+ NaNl ()
+ {
diff --git a/var/spack/repos/builtin/packages/m4/package.py b/var/spack/repos/builtin/packages/m4/package.py
index ebfbc28612..f3cb8122f5 100644
--- a/var/spack/repos/builtin/packages/m4/package.py
+++ b/var/spack/repos/builtin/packages/m4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,10 +29,12 @@ class M4(AutotoolsPackage):
"""GNU M4 is an implementation of the traditional Unix macro processor."""
homepage = "https://www.gnu.org/software/m4/m4.html"
- url = "ftp://ftp.gnu.org/gnu/m4/m4-1.4.17.tar.gz"
+ url = "https://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.gz"
+ version('1.4.18', 'a077779db287adf4e12a035029002d28')
version('1.4.17', 'a5e9954b1dae036762f7b13673a2cf76')
+ patch('gnulib-pgi.patch', when='@1.4.18')
patch('pgi.patch', when='@1.4.17')
variant('sigsegv', default=True,
@@ -40,10 +42,18 @@ class M4(AutotoolsPackage):
depends_on('libsigsegv', when='+sigsegv')
+ build_directory = 'spack-build'
+
def configure_args(self):
spec = self.spec
args = ['--enable-c++']
+ if spec.satisfies('%clang') and not spec.satisfies('platform=darwin'):
+ args.append('CFLAGS=-rtlib=compiler-rt')
+
+ if spec.satisfies('%intel'):
+ args.append('CFLAGS=-no-gcc')
+
if '+sigsegv' in spec:
args.append('--with-libsigsegv-prefix={0}'.format(
spec['libsigsegv'].prefix))
diff --git a/var/spack/repos/builtin/packages/macsio/package.py b/var/spack/repos/builtin/packages/macsio/package.py
new file mode 100644
index 0000000000..f17cec4350
--- /dev/null
+++ b/var/spack/repos/builtin/packages/macsio/package.py
@@ -0,0 +1,116 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Macsio(CMakePackage):
+ """A Multi-purpose, Application-Centric, Scalable I/O Proxy Application
+ """
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "http://llnl.github.io/MACSio"
+ url = "https://github.com/LLNL/MACSio/archive/1.0.tar.gz"
+
+ version('1.0', '90e8e00ea84af2a47bee387ad331dbde')
+ version('develop', git='https://github.com/LLNL/MACSio.git',
+ branch='master')
+
+ variant('mpi', default=True, description="Build MPI plugin")
+ variant('silo', default=True, description="Build with SILO plugin")
+ # TODO: multi-level variants for hdf5
+ variant('hdf5', default=False, description="Build HDF5 plugin")
+ variant('zfp', default=False, description="Build HDF5 with ZFP compression")
+ variant('szip', default=False, description="Build HDF5 with SZIP compression")
+ variant('zlib', default=False, description="Build HDF5 with ZLIB compression")
+ variant('pdb', default=False, description="Build PDB plugin")
+ variant('exodus', default=False, description="Build EXODUS plugin")
+ variant('scr', default=False, description="Build with SCR support")
+ variant('typhonio', default=False, description="Build TYPHONIO plugin")
+
+ depends_on('json-cwx')
+ depends_on('mpi', when="+mpi")
+ depends_on('silo', when="+silo")
+ depends_on('hdf5', when="+hdf5")
+ # depends_on('hdf5+szip', when="+szip")
+ depends_on('exodusii', when="+exodus")
+ # pdb is packaged with silo
+ depends_on('silo', when="+pdb")
+ depends_on('typhonio', when="+typhonio")
+ depends_on('scr', when="+scr")
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
+
+ if "~mpi" in spec:
+ cmake_args.append("-DENABLE_MPI=OFF")
+
+ if "~silo" in spec:
+ cmake_args.append("-DENABLE_SILO_PLUGIN=OFF")
+
+ if "+silo" in spec:
+ cmake_args.append("-DWITH_SILO_PREFIX={0}"
+ .format(spec['silo'].prefix))
+
+ if "+pdb" in spec:
+ # pdb is a part of silo
+ cmake_args.append("-DENABLE_PDB_PLUGIN=ON")
+ cmake_args.append("-DWITH_SILO_PREFIX={0}"
+ .format(spec['silo'].prefix))
+ if "+hdf5" in spec:
+ cmake_args.append("-DENABLE_HDF5_PLUGIN=ON")
+ cmake_args.append("-DWITH_HDF5_PREFIX={0}"
+ .format(spec['hdf5'].prefix))
+ # TODO: Multi-level variants
+ # ZFP not in hdf5 spack package??
+ # if "+zfp" in spec:
+ # cmake_args.append("-DENABLE_HDF5_ZFP")
+ # cmake_args.append("-DWITH_ZFP_PREFIX={0}"
+ # .format(spec['silo'].prefix))
+ # SZIP is an hdf5 spack variant
+ # if "+szip" in spec:
+ # cmake_args.append("-DENABLE_HDF5_SZIP")
+ # cmake_args.append("-DWITH_SZIP_PREFIX={0}"
+ # .format(spec['SZIP'].prefix))
+ # ZLIB is on by default, @1.1.2
+ # if "+zlib" in spec:
+ # cmake_args.append("-DENABLE_HDF5_ZLIB")
+ # cmake_args.append("-DWITH_ZLIB_PREFIX={0}"
+ # .format(spec['silo'].prefix))
+
+ if "+typhonio" in spec:
+ cmake_args.append("-DENABLE_TYPHONIO_PLUGIN=ON")
+ cmake_args.append("-DWITH_TYPHONIO_PREFIX={0}"
+ .format(spec['typhonio'].prefix))
+
+ if "+exodus" in spec:
+ cmake_args.append("-DENABLE_EXODUS_PLUGIN=ON")
+ cmake_args.append("-DWITH_EXODUS_PREFIX={0}"
+ .format(spec['exodusii'].prefix))
+ # exodus requires netcdf
+ cmake_args.append("-DWITH_NETCDF_PREFIX={0}"
+ .format(spec['netcdf'].prefix))
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/mad-numdiff/package.py b/var/spack/repos/builtin/packages/mad-numdiff/package.py
new file mode 100644
index 0000000000..8d687e2258
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mad-numdiff/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class MadNumdiff(CMakePackage):
+ """compare unformatted text files with numerical content"""
+
+ homepage = "https://github.com/quinoacomputing/ndiff"
+ url = "https://github.com/quinoacomputing/ndiff/tarball/20150724"
+
+ version('develop', git='https://github.com/quinoacomputing/ndiff', branch='master')
+ version('20150724', '7723c0f2499aea8fd960377c5bed28d8')
diff --git a/var/spack/repos/builtin/packages/mafft/package.py b/var/spack/repos/builtin/packages/mafft/package.py
index 131b8c58f9..2b46cf9332 100644
--- a/var/spack/repos/builtin/packages/mafft/package.py
+++ b/var/spack/repos/builtin/packages/mafft/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/magics/no_hardcoded_python.patch b/var/spack/repos/builtin/packages/magics/no_hardcoded_python.patch
deleted file mode 100644
index e2e2a5d1ba..0000000000
--- a/var/spack/repos/builtin/packages/magics/no_hardcoded_python.patch
+++ /dev/null
@@ -1,5 +0,0 @@
---- a/tools/xml2mv.py 2016-06-27 17:49:27.000000000 +0200
-+++ a/tools/xml2mv.py 2016-09-13 16:25:17.246960456 +0200
-@@ -1 +1 @@
--#!/usr/bin/python
-+#!/usr/bin/env python
diff --git a/var/spack/repos/builtin/packages/magics/package.py b/var/spack/repos/builtin/packages/magics/package.py
index cd793ae051..540abd6c1d 100644
--- a/var/spack/repos/builtin/packages/magics/package.py
+++ b/var/spack/repos/builtin/packages/magics/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,9 +23,10 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import glob
-class Magics(Package):
+class Magics(CMakePackage):
"""Magics is the latest generation of the ECMWF's Meteorological plotting
software MAGICS. Although completely redesigned in C++, it is intended
to be as backwards-compatible as possible with the Fortran interface."""
@@ -36,13 +37,10 @@ class Magics(Package):
# Maintainers of Magics do not keep tarballs of minor releases. Once the
# next minor released is published the previous one becomes unavailable.
# That is why the preferred version is the latest stable one.
+ version('2.32.0', 'e17956fffce9ea826cf994f8d275e0f5')
version('2.29.4', '91c561f413316fb665b3bb563f3878d1')
version('2.29.0', 'db20a4d3c51a2da5657c31ae3de59709', preferred=True)
- # The patch changes the hardcoded path to python in shebang to enable the
- # usage of the first python installation that appears in $PATH
- patch('no_hardcoded_python.patch')
-
# The patch reorders includes and adds namespaces where necessary to
# resolve ambiguity of invocations of isnan and isinf functions. The
# patch is not needed since the version 2.29.1
@@ -53,14 +51,21 @@ class Magics(Package):
variant('cairo', default=True, description='Enable cairo support[png/jpeg]')
variant('metview', default=False, description='Enable metview support')
variant('qt', default=False, description='Enable metview support with qt')
+ variant('eccodes', default=False, description='Use eccodes instead of grib-api')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo', 'Production'))
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8.11:', type='build')
depends_on('pkg-config', type='build')
# Currently python is only necessary to run
# building preprocessing scripts.
depends_on('python', type='build')
- depends_on('grib-api')
+ depends_on('perl', type='build')
+ depends_on('perl-xml-parser', type='build')
+ depends_on('eccodes', when='+eccodes')
+ depends_on('grib-api', when='~eccodes')
depends_on('proj')
depends_on('boost')
depends_on('expat')
@@ -69,47 +74,60 @@ class Magics(Package):
depends_on('libemos', when='+bufr')
depends_on('qt', when='+metview+qt')
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
- options.append('-DENABLE_ODB=OFF')
- options.append('-DENABLE_PYTHON=OFF')
- options.append('-DBOOST_ROOT=%s' % spec['boost'].prefix)
- options.append('-DPROJ4_PATH=%s' % spec['proj'].prefix)
- options.append('-DGRIB_API_PATH=%s' % spec['grib-api'].prefix)
- options.append('-DENABLE_TESTS=OFF')
+ conflicts('+eccodes', when='@:2.29.0')
+
+ # Replace system python and perl by spack versions:
+ def patch(self):
+ for plfile in glob.glob('*/*.pl'):
+ filter_file('#!/usr/bin/perl', '#!/usr/bin/env perl', plfile)
+ for pyfile in glob.glob('*/*.py'):
+ filter_file('#!/usr/bin/python', '#!/usr/bin/env python', pyfile)
+
+ def cmake_args(self):
+ spec = self.spec
+ args = [
+ '-DENABLE_ODB=OFF',
+ '-DENABLE_PYTHON=OFF',
+ '-DBOOST_ROOT=%s' % spec['boost'].prefix,
+ '-DPROJ4_PATH=%s' % spec['proj'].prefix,
+ '-DENABLE_TESTS=OFF',
+ ]
if '+bufr' in spec:
- options.append('-DENABLE_BUFR=ON')
- options.append('-DLIBEMOS_PATH=%s' % spec['libemos'].prefix)
+ args.append('-DENABLE_BUFR=ON')
+ args.append('-DLIBEMOS_PATH=%s' % spec['libemos'].prefix)
else:
- options.append('-DENABLE_BUFR=OFF')
+ args.append('-DENABLE_BUFR=OFF')
if '+netcdf' in spec:
- options.append('-DENABLE_NETCDF=ON')
- options.append('-DNETCDF_PATH=%s' % spec['netcdf-cxx'].prefix)
+ args.append('-DENABLE_NETCDF=ON')
+ args.append('-DNETCDF_PATH=%s' % spec['netcdf-cxx'].prefix)
else:
- options.append('-DENABLE_NETCDF=OFF')
+ args.append('-DENABLE_NETCDF=OFF')
if '+cairo' in spec:
- options.append('-DENABLE_CAIRO=ON')
+ args.append('-DENABLE_CAIRO=ON')
else:
- options.append('-DENABLE_CAIRO=OFF')
+ args.append('-DENABLE_CAIRO=OFF')
if '+metview' in spec:
if '+qt' in spec:
- options.append('-DENABLE_METVIEW=ON')
- if spec['qt'].version.up_to(1) == '5':
- options.append('-DENABLE_QT5=ON')
+ args.append('-DENABLE_METVIEW=ON')
+ if spec['qt'].version[0] == 5:
+ args.append('-DENABLE_QT5=ON')
else:
- options.append('-DENABLE_METVIEW_NO_QT=ON')
+ args.append('-DENABLE_METVIEW_NO_QT=ON')
+ else:
+ args.append('-DENABLE_METVIEW=OFF')
+
+ if '+eccodes' in spec:
+ args.append('-DENABLE_ECCODES=ON')
+ args.append('-DECCODES_PATH=%s' % spec['eccodes'].prefix)
else:
- options.append('-DENABLE_METVIEW=OFF')
+ args.append('-DENABLE_ECCODES=OFF')
+ args.append('-DGRIB_API_PATH=%s' % spec['grib-api'].prefix)
if (self.compiler.f77 is None) or (self.compiler.fc is None):
- options.append('-DENABLE_FORTRAN=OFF')
+ args.append('-DENABLE_FORTRAN=OFF')
- with working_dir('spack-build', create=True):
- cmake('..', *options)
- make()
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/magma/ibm-xl.patch b/var/spack/repos/builtin/packages/magma/ibm-xl.patch
new file mode 100644
index 0000000000..0deab65646
--- /dev/null
+++ b/var/spack/repos/builtin/packages/magma/ibm-xl.patch
@@ -0,0 +1,248 @@
+diff -Naur magma-2.2.0/src/dlaex3_m.cpp magma-2.2.0-patched/src/dlaex3_m.cpp
+--- magma-2.2.0/src/dlaex3_m.cpp 2016-11-20 20:20:06.000000000 -0500
++++ magma-2.2.0/src/dlaex3_m.cpp 2017-01-06 15:54:29.423668874 -0500
+@@ -197,7 +197,7 @@
+ magmaDouble_ptr dwork[],
+ magma_queue_t queues[MagmaMaxGPUs][2],
+ magma_range_t range, double vl, double vu, magma_int_t il, magma_int_t iu,
+- magma_int_t *info )
++ magma_int_t *infom )
+ {
+ #define Q(i_,j_) (Q + (i_) + (j_)*ldq)
+
+@@ -209,8 +209,8 @@
+ magma_setdevice(0);
+ magma_dlaex3( k, n, n1, d, Q, ldq, rho,
+ dlamda, Q2, indx, ctot, w, s, indxq,
+- *dwork, range, vl, vu, il, iu, info );
+- return *info;
++ *dwork, range, vl, vu, il, iu, infom );
++ return *infom;
+ }
+ double d_one = 1.;
+ double d_zero = 0.;
+@@ -229,37 +229,37 @@
+ valeig = (range == MagmaRangeV);
+ indeig = (range == MagmaRangeI);
+
+- *info = 0;
++ *infom = 0;
+
+ if (k < 0)
+- *info=-1;
++ *infom=-1;
+ else if (n < k)
+- *info=-2;
++ *infom=-2;
+ else if (ldq < max(1,n))
+- *info=-6;
++ *infom=-6;
+ else if (! (alleig || valeig || indeig))
+- *info = -15;
++ *infom = -15;
+ else {
+ if (valeig) {
+ if (n > 0 && vu <= vl)
+- *info = -17;
++ *infom = -17;
+ }
+ else if (indeig) {
+ if (il < 1 || il > max(1,n))
+- *info = -18;
++ *infom = -18;
+ else if (iu < min(n,il) || iu > n)
+- *info = -19;
++ *infom = -19;
+ }
+ }
+
+- if (*info != 0) {
+- magma_xerbla( __func__, -(*info) );
+- return *info;
++ if (*infom != 0) {
++ magma_xerbla( __func__, -(*infom) );
++ return *infom;
+ }
+
+ // Quick return if possible
+ if (k == 0)
+- return *info;
++ return *infom;
+
+ magma_device_t orig_dev;
+ magma_getdevice( &orig_dev );
+@@ -360,15 +360,15 @@
+ lapackf77_dlaed4( &k, &tmpp, dlamda, w, Q(0,j), &rho, &d[j], &iinfo );
+ // If the zero finder fails, the computation is terminated.
+ if (iinfo != 0) {
+- #pragma omp critical (info)
+- *info = iinfo;
++ #pragma omp critical (infom)
++ *infom = iinfo;
+ break;
+ }
+ }
+
+ #pragma omp barrier
+
+- if (*info == 0) {
++ if (*infom == 0) {
+ #pragma omp single
+ {
+ // Prepare the INDXQ sorting permutation.
+@@ -452,8 +452,8 @@
+ }
+ }
+ } // end omp parallel
+- if (*info != 0)
+- return *info;
++ if (*infom != 0)
++ return *infom;
+
+ timer_stop( time );
+ timer_printf( "eigenvalues/vector D+zzT = %6.2f\n", time );
+@@ -474,10 +474,10 @@
+ lapackf77_dlaed4( &k, &tmpp, dlamda, w, Q(0,j), &rho, &d[j], &iinfo );
+ // If the zero finder fails, the computation is terminated.
+ if (iinfo != 0)
+- *info=iinfo;
++ *infom=iinfo;
+ }
+- if (*info != 0)
+- return *info;
++ if (*infom != 0)
++ return *infom;
+
+ // Prepare the INDXQ sorting permutation.
+ magma_int_t nk = n - k;
+@@ -688,5 +688,5 @@
+
+ magma_setdevice( orig_dev );
+
+- return *info;
++ return *infom;
+ } /* magma_dlaed3_m */
+diff -Naur magma-2.2.0/src/slaex3_m.cpp magma-2.2.0-patched/src/slaex3_m.cpp
+--- magma-2.2.0/src/slaex3_m.cpp 2016-11-20 20:20:24.000000000 -0500
++++ magma-2.2.0/src/slaex3_m.cpp 2017-01-06 10:20:13.200783151 -0500
+@@ -197,7 +197,7 @@
+ magmaFloat_ptr dwork[],
+ magma_queue_t queues[MagmaMaxGPUs][2],
+ magma_range_t range, float vl, float vu, magma_int_t il, magma_int_t iu,
+- magma_int_t *info )
++ magma_int_t *infom )
+ {
+ #define Q(i_,j_) (Q + (i_) + (j_)*ldq)
+
+@@ -209,8 +209,8 @@
+ magma_setdevice(0);
+ magma_slaex3( k, n, n1, d, Q, ldq, rho,
+ dlamda, Q2, indx, ctot, w, s, indxq,
+- *dwork, range, vl, vu, il, iu, info );
+- return *info;
++ *dwork, range, vl, vu, il, iu, infom );
++ return *infom;
+ }
+ float d_one = 1.;
+ float d_zero = 0.;
+@@ -229,37 +229,37 @@
+ valeig = (range == MagmaRangeV);
+ indeig = (range == MagmaRangeI);
+
+- *info = 0;
++ *infom = 0;
+
+ if (k < 0)
+- *info=-1;
++ *infom=-1;
+ else if (n < k)
+- *info=-2;
++ *infom=-2;
+ else if (ldq < max(1,n))
+- *info=-6;
++ *infom=-6;
+ else if (! (alleig || valeig || indeig))
+- *info = -15;
++ *infom = -15;
+ else {
+ if (valeig) {
+ if (n > 0 && vu <= vl)
+- *info = -17;
++ *infom = -17;
+ }
+ else if (indeig) {
+ if (il < 1 || il > max(1,n))
+- *info = -18;
++ *infom = -18;
+ else if (iu < min(n,il) || iu > n)
+- *info = -19;
++ *infom = -19;
+ }
+ }
+
+- if (*info != 0) {
+- magma_xerbla( __func__, -(*info) );
+- return *info;
++ if (*infom != 0) {
++ magma_xerbla( __func__, -(*infom) );
++ return *infom;
+ }
+
+ // Quick return if possible
+ if (k == 0)
+- return *info;
++ return *infom;
+
+ magma_device_t orig_dev;
+ magma_getdevice( &orig_dev );
+@@ -360,15 +360,15 @@
+ lapackf77_slaed4( &k, &tmpp, dlamda, w, Q(0,j), &rho, &d[j], &iinfo );
+ // If the zero finder fails, the computation is terminated.
+ if (iinfo != 0) {
+- #pragma omp critical (info)
+- *info = iinfo;
++ #pragma omp critical (infom)
++ *infom = iinfo;
+ break;
+ }
+ }
+
+ #pragma omp barrier
+
+- if (*info == 0) {
++ if (*infom == 0) {
+ #pragma omp single
+ {
+ // Prepare the INDXQ sorting permutation.
+@@ -452,8 +452,8 @@
+ }
+ }
+ } // end omp parallel
+- if (*info != 0)
+- return *info;
++ if (*infom != 0)
++ return *infom;
+
+ timer_stop( time );
+ timer_printf( "eigenvalues/vector D+zzT = %6.2f\n", time );
+@@ -474,10 +474,10 @@
+ lapackf77_slaed4( &k, &tmpp, dlamda, w, Q(0,j), &rho, &d[j], &iinfo );
+ // If the zero finder fails, the computation is terminated.
+ if (iinfo != 0)
+- *info=iinfo;
++ *infom=iinfo;
+ }
+- if (*info != 0)
+- return *info;
++ if (*infom != 0)
++ return *infom;
+
+ // Prepare the INDXQ sorting permutation.
+ magma_int_t nk = n - k;
+@@ -688,5 +688,5 @@
+
+ magma_setdevice( orig_dev );
+
+- return *info;
++ return *infom;
+ } /* magma_slaed3_m */
diff --git a/var/spack/repos/builtin/packages/magma/package.py b/var/spack/repos/builtin/packages/magma/package.py
new file mode 100644
index 0000000000..bccac28497
--- /dev/null
+++ b/var/spack/repos/builtin/packages/magma/package.py
@@ -0,0 +1,73 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Serban Maerean, serban@us.ibm.com, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Magma(CMakePackage):
+ """The MAGMA project aims to develop a dense linear algebra library
+ similar to LAPACK but for heterogeneous/hybrid architectures,
+ starting with current "Multicore+GPU" systems.
+ """
+
+ homepage = "http://icl.cs.utk.edu/magma/"
+ url = "http://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-2.2.0.tar.gz"
+
+ version('2.2.0', '6c1ebf4cdf63eb302ff6258ff8c49217')
+
+ variant('fortran', default=True,
+ description='Enable Fortran bindings support')
+
+ depends_on('lapack')
+ depends_on('cuda@9.0:', when='%gcc@6.0:6.9.9')
+ depends_on('cuda@8.0:', when='%gcc@5.0:')
+ patch('ibm-xl.patch', when='@2.2:%xl')
+ patch('ibm-xl.patch', when='@2.2:%xl_r')
+
+ def cmake_args(self):
+ spec = self.spec
+ options = []
+
+ options.extend([
+ '-DCMAKE_INSTALL_PREFIX=%s' % prefix,
+ '-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % prefix,
+ '-DLAPACK_LIBRARIES=%s;%s' % (spec['blas'].libs,
+ spec['lapack'].libs)
+ ])
+
+ if '+fortran' in spec:
+ options.extend([
+ '-DUSE_FORTRAN=yes'
+ ])
+ if spec.satisfies('%xl') or spec.satisfies('%xl_r'):
+ options.extend([
+ '-DCMAKE_Fortran_COMPILER=%s' % self.compiler.f77
+ ])
+
+ if spec.satisfies('^cuda@9.0:'):
+ options.extend([
+ '-DGPU_TARGET=sm30'
+ ])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/makedepend/package.py b/var/spack/repos/builtin/packages/makedepend/package.py
index 5675793abc..41edb6ed69 100644
--- a/var/spack/repos/builtin/packages/makedepend/package.py
+++ b/var/spack/repos/builtin/packages/makedepend/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Makedepend(Package):
+class Makedepend(AutotoolsPackage):
"""makedepend - create dependencies in makefiles."""
homepage = "http://cgit.freedesktop.org/xorg/util/makedepend"
@@ -35,10 +35,3 @@ class Makedepend(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/mallocmc/package.py b/var/spack/repos/builtin/packages/mallocmc/package.py
new file mode 100644
index 0000000000..ed8ba9bdeb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mallocmc/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mallocmc(CMakePackage):
+ """mallocMC: Memory Allocator for Many Core Architectures.
+
+ This project provides a framework for fast memory managers on
+ many core accelerators. Currently, it supports NVIDIA GPUs of
+ compute capability sm_20 or higher through the ScatterAlloc
+ algorithm.
+
+ mallocMC is header-only, but requires a few other C++ libraries
+ to be available.
+ """
+
+ homepage = "https://github.com/ComputationalRadiationPhysics/mallocMC"
+ url = "https://github.com/ComputationalRadiationPhysics/mallocMC/archive/2.2.0crp.tar.gz"
+
+ version('develop', branch='dev',
+ git='https://github.com/ComputationalRadiationPhysics/mallocMC.git')
+ version('master', branch='master',
+ git='https://github.com/ComputationalRadiationPhysics/mallocMC.git')
+ version('2.2.0crp', '3e5c5fc963d1a9abc829ff701504e54c')
+ version('2.1.0crp', 'd2bd2644012b64a246048575e9a9051c')
+ version('2.0.1crp', '1f674d5d1ae05446d9a4e4b65465dca0')
+ version('2.0.0crp', '2c63c3ea2a882f29962c67b095d8f7a8')
+ version('1.0.2crp', '8f5edf07daa527261e52bc61be340ae6')
+
+ depends_on('cmake@2.8.12.2:', type='build')
+ depends_on('boost@1.48.0:', type='link')
+ depends_on('cuda@5.0:', type='link')
diff --git a/var/spack/repos/builtin/packages/man-db/package.py b/var/spack/repos/builtin/packages/man-db/package.py
new file mode 100644
index 0000000000..7a6a03731e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/man-db/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ManDb(AutotoolsPackage):
+ """man-db is an implementation of the standard Unix
+ documentation system accessed using the man command. It uses
+ a Berkeley DB database in place of the traditional
+ flat-text whatis databases."""
+
+ homepage = "http://www.nongnu.org/man-db/"
+ url = "http://git.savannah.nongnu.org/cgit/man-db.git/snapshot/man-db-2.7.6.1.tar.gz"
+
+ version('2.7.6.1', '312761baade811db2b956af3432c285e')
+
+ depends_on('autoconf')
+ depends_on('automake')
+ depends_on('gettext')
+ depends_on('libpipeline')
+ depends_on('flex')
+ depends_on('groff', type=('build', 'link', 'run'))
+
+ # TODO: add gzip support via a new package.
+ # man pages are typically compressed, include all available
+ # compression libraries
+ depends_on('bzip2', type=('build', 'link', 'run'))
+ depends_on('lzma', type=('build', 'link', 'run'))
+ depends_on('xz', type=('build', 'link', 'run'))
+
+ def configure_args(self):
+ args = [
+ '--disable-setuid',
+ # defaults to a location that needs root privs to write in
+ '--with-systemdtmpfilesdir={0}/tmp'.format(self.prefix)
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/mariadb/package.py b/var/spack/repos/builtin/packages/mariadb/package.py
index d9df200d02..53203f585a 100644
--- a/var/spack/repos/builtin/packages/mariadb/package.py
+++ b/var/spack/repos/builtin/packages/mariadb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Mariadb(Package):
+class Mariadb(CMakePackage):
"""MariaDB turns data into structured information in a wide array of
applications, ranging from banking to websites. It is an enhanced, drop-in
replacement for MySQL. MariaDB is used because it is fast, scalable and
@@ -33,8 +33,11 @@ class Mariadb(Package):
tools make it very versatile for a wide variety of use cases."""
homepage = "https://mariadb.org/about/"
- url = "https://downloads.mariadb.org/f/mariadb-10.1.14/source/mariadb-10.1.14.tar.gz"
+ url = "http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-10.2.8/source/mariadb-10.2.8.tar.gz"
+ version('10.2.8', 'f93cbd5bfde3c0d082994764ff7db580')
+ version('10.1.23', '1a7392cc05c7c249acd4495022719ca8')
+ version('5.5.56', '8bc7772fea3e11b0bc1a09d2278e2e32')
version('10.1.14', '294925531e0fd2f0461e3894496a5adc')
version('5.5.49', '67b5a499a5f158b2a586e6e3bfb4f304')
@@ -42,18 +45,10 @@ class Mariadb(Package):
'operations in the mariadb client library.')
depends_on('boost')
- depends_on('cmake')
+ depends_on('cmake@2.6:', type='build')
depends_on('jemalloc')
depends_on('libaio')
depends_on('libedit')
depends_on('libevent', when='+nonblocking')
depends_on('ncurses')
depends_on('zlib')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
-
- cmake('..', *std_cmake_args)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/masa/package.py b/var/spack/repos/builtin/packages/masa/package.py
new file mode 100644
index 0000000000..e0e7c00cde
--- /dev/null
+++ b/var/spack/repos/builtin/packages/masa/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Masa(AutotoolsPackage):
+ """MASA (Manufactured Analytical Solution Abstraction) is a library
+ written in C++ (with C, python and Fortran90 interfaces) which
+ provides a suite of manufactured solutions for the software
+ verification of partial differential equation solvers in multiple
+ dimensions."""
+ homepage = "https://github.com/manufactured-solutions/MASA"
+ url = "https://github.com/manufactured-solutions/MASA.git"
+
+ version('master',
+ git='https://github.com/manufactured-solutions/MASA.git',
+ tag='master')
+
+ variant('fortran', default=True,
+ description='Compile with Fortran interfaces')
+ variant('python', default=True,
+ description='Compile with Python interfaces')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('swig', type='build')
+ depends_on('python', when='+python')
+ depends_on('metaphysicl')
+
+ def configure_args(self):
+ options = []
+
+ options.extend([
+ '--with-metaphysicl=%s' % self.spec['metaphysicl'].prefix
+ ])
+
+ if '+fortran' in self.spec:
+ options.extend(['--enable-fortran-interfaces'])
+
+ if '+python' in self.spec:
+ options.extend(['--enable-python-interfaces'])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/matio/package.py b/var/spack/repos/builtin/packages/matio/package.py
index a33b23a4e9..8569893375 100644
--- a/var/spack/repos/builtin/packages/matio/package.py
+++ b/var/spack/repos/builtin/packages/matio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,6 +37,7 @@ class Matio(AutotoolsPackage):
description='support for compressed mat files')
variant("hdf5", default=True,
description='support for version 7.3 mat files via hdf5')
+ variant("shared", default=True, description='Enables the build of shared libraries.')
depends_on("zlib", when="+zlib")
depends_on("hdf5", when="+hdf5")
@@ -47,4 +48,6 @@ class Matio(AutotoolsPackage):
args.append("--with-zlib=%s" % self.spec['zlib'].prefix)
if '+hdf5' in self.spec:
args.append("--with-hdf5=%s" % self.spec['hdf5'].prefix)
+ if '+shared' not in self.spec:
+ args.append("--disable-shared")
return args
diff --git a/var/spack/repos/builtin/packages/matlab/package.py b/var/spack/repos/builtin/packages/matlab/package.py
new file mode 100644
index 0000000000..c61bbe05d6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/matlab/package.py
@@ -0,0 +1,94 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+import subprocess
+
+
+class Matlab(Package):
+ """MATLAB (MATrix LABoratory) is a multi-paradigm numerical computing
+ environment and fourth-generation programming language. A proprietary
+ programming language developed by MathWorks, MATLAB allows matrix
+ manipulations, plotting of functions and data, implementation of
+ algorithms, creation of user interfaces, and interfacing with programs
+ written in other languages, including C, C++, C#, Java, Fortran and Python.
+
+ Note: MATLAB is licensed software. You will need to create an account on
+ the MathWorks homepage and download MATLAB yourself. Spack will search your
+ current directory for the download file. Alternatively, add this file to a
+ mirror so that Spack can find it. For instructions on how to set up a
+ mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://www.mathworks.com/products/matlab.html"
+
+ version('R2016b', 'b0e0b688894282139fa787b5a86a5cf7')
+
+ variant(
+ 'mode',
+ default='interactive',
+ values=('interactive', 'silent', 'automated'),
+ description='Installation mode (interactive, silent, or automated)'
+ )
+
+ variant(
+ 'key',
+ default='',
+ values=lambda x: True, # Anything goes as a key
+ description='The file installation key to use'
+ )
+
+ # Licensing
+ license_required = True
+ license_comment = '#'
+ license_files = ['licenses/license.dat']
+ license_vars = ['LM_LICENSE_FILE']
+ license_url = 'https://www.mathworks.com/help/install/index.html'
+
+ extendable = True
+
+ def url_for_version(self, version):
+ return "file://{0}/matlab_{1}_glnxa64.zip".format(os.getcwd(), version)
+
+ def configure(self, spec, prefix):
+ config = {
+ 'destinationFolder': prefix,
+ 'mode': spec.variants['mode'].value,
+ 'fileInstallationKey': spec.variants['key'].value,
+ 'licensePath': self.global_license_file
+ }
+
+ # Store values requested by the installer in a file
+ with open('spack_installer_input.txt', 'w') as inputFile:
+ for key in config:
+ inputFile.write('{0}={1}\n'.format(key, config[key]))
+
+ def install(self, spec, prefix):
+ self.configure(spec, prefix)
+
+ # Run silent installation script
+ # Full path required
+ inputFile = join_path(self.stage.source_path,
+ 'spack_installer_input.txt')
+ subprocess.call(['./install', '-inputFile', inputFile])
diff --git a/var/spack/repos/builtin/packages/maven/package.py b/var/spack/repos/builtin/packages/maven/package.py
index c4e0a1d0a4..425e5abaab 100644
--- a/var/spack/repos/builtin/packages/maven/package.py
+++ b/var/spack/repos/builtin/packages/maven/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,11 +30,12 @@ class Maven(Package):
"""Apache Maven is a software project management and comprehension tool."""
homepage = "https://maven.apache.org/index.html"
- url = "http://www.gtlib.gatech.edu/pub/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz"
+ url = "https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.tar.gz"
+ version('3.5.0', '35c39251d2af99b6624d40d801f6ff02')
version('3.3.9', '516923b3955b6035ba6b0a5b031fbd8b')
- depends_on('jdk')
+ depends_on('java')
def install(self, spec, prefix):
# install pre-built distribution
diff --git a/var/spack/repos/builtin/packages/maverick/package.py b/var/spack/repos/builtin/packages/maverick/package.py
new file mode 100644
index 0000000000..b898beafb7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/maverick/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Maverick(MakefilePackage):
+ """MavericK is a program for inferring population structure on the basis
+ of genetic information."""
+
+ homepage = "https://github.com/bobverity/MavericK"
+ url = "https://github.com/bobverity/MavericK/archive/v1.0.4.tar.gz"
+
+ version('1.0.4', '0c17c9a73fd0ac0aef17339173ddedc2')
+
+ conflicts('%gcc@:6.0')
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('MavericK', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/mawk/package.py b/var/spack/repos/builtin/packages/mawk/package.py
new file mode 100644
index 0000000000..2749736796
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mawk/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mawk(AutotoolsPackage):
+ """mawk is an interpreter for the AWK Programming Language."""
+
+ homepage = "http://invisible-island.net/mawk/mawk.html"
+ url = "http://invisible-mirror.net/archives/mawk/mawk-1.3.4.tgz"
+
+ version('1.3.4', 'b1d27324ae80302452d0fa0c98447b65')
+
+ provides('awk')
diff --git a/var/spack/repos/builtin/packages/mbedtls/package.py b/var/spack/repos/builtin/packages/mbedtls/package.py
index 493ea59f0b..12687ea5a8 100644
--- a/var/spack/repos/builtin/packages/mbedtls/package.py
+++ b/var/spack/repos/builtin/packages/mbedtls/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Mbedtls(Package):
+class Mbedtls(CMakePackage):
"""mbed TLS (formerly known as PolarSSL) makes it trivially easy for
developers to include cryptographic and SSL/TLS capabilities in
their (embedded) products, facilitating this functionality with a
@@ -42,10 +42,9 @@ class Mbedtls(Package):
version('2.1.3', '7eb4cf1dfa68578a2c8dbd0b6fa752dd')
version('1.3.16', '4144d7320c691f721aeb9e67a1bc38e0')
- depends_on('cmake', type='build')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release', 'Coverage', 'ASan', 'ASanDbg',
+ 'MemSan', 'MemSanDbg', 'Check', 'CheckFull'))
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
-
- make()
- make("install")
+ depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/mcl/package.py b/var/spack/repos/builtin/packages/mcl/package.py
new file mode 100644
index 0000000000..4644cc39ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mcl/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mcl(AutotoolsPackage):
+ """The MCL algorithm is short for the Markov Cluster Algorithm, a fast
+ and scalable unsupervised cluster algorithm for graphs (also known
+ as networks) based on simulation of (stochastic) flow in graphs."""
+
+ homepage = "https://www.micans.org/mcl/index.html"
+ url = "https://www.micans.org/mcl/src/mcl-14-137.tar.gz"
+
+ version('14-137', 'bc8740456cf51019d0a9ac5eba665bb5')
diff --git a/var/spack/repos/builtin/packages/mdtest/package.py b/var/spack/repos/builtin/packages/mdtest/package.py
new file mode 100644
index 0000000000..519aed704c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mdtest/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mdtest(Package):
+ """mdtest is an MPI-coordinated metadata benchmark test
+ that performs open/stat/close operations on files
+ and directories and then reports the performance."""
+
+ homepage = "https://github.com/LLNL/mdtest"
+
+ version('1.9.3', git='https://github.com/LLNL/mdtest.git', commit='49f3f0')
+
+ depends_on('mpi')
+
+ def install(self, spec, prefix):
+ filter_file('$(CC.$(OS))', spec['mpi'].mpicc, 'Makefile', string=True)
+ make('mdtest')
+ mkdirp(prefix.bin)
+ install('mdtest', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/meep/package.py b/var/spack/repos/builtin/packages/meep/package.py
index 2c1018e711..79c50a8123 100644
--- a/var/spack/repos/builtin/packages/meep/package.py
+++ b/var/spack/repos/builtin/packages/meep/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,13 @@
from spack import *
-class Meep(Package):
+class Meep(AutotoolsPackage):
"""Meep (or MEEP) is a free finite-difference time-domain (FDTD) simulation
software package developed at MIT to model electromagnetic systems."""
homepage = "http://ab-initio.mit.edu/wiki/index.php/Meep"
+ url = "http://ab-initio.mit.edu/meep/meep-1.3.tar.gz"
+ list_url = "http://ab-initio.mit.edu/meep/old"
version('1.3', '18a5b9e18008627a0411087e0bb60db5')
version('1.2.1', '9be2e743c3a832ae922de9d955d016c5')
@@ -54,16 +56,10 @@ class Meep(Package):
depends_on('hdf5+mpi', when='+hdf5+mpi')
depends_on('gsl', when='+gsl')
- def url_for_version(self, version):
- base_url = "http://ab-initio.mit.edu/meep"
- if version > Version('1.1.1'):
- return "{0}/meep-{1}.tar.gz".format(base_url, version)
- else:
- return "{0}/old/meep-{1}.tar.gz".format(base_url, version)
+ def configure_args(self):
+ spec = self.spec
- def install(self, spec, prefix):
config_args = [
- '--prefix={0}'.format(prefix),
'--enable-shared'
]
@@ -95,15 +91,14 @@ class Meep(Package):
else:
config_args.append('--without-hdf5')
- configure(*config_args)
+ return config_args
- make()
+ def check(self):
+ spec = self.spec
# aniso_disp test fails unless installed with harminv
# near2far test fails unless installed with gsl
- if self.run_tests and '+harminv' in spec and '+gsl' in spec:
+ if '+harminv' in spec and '+gsl' in spec:
# Most tests fail when run in parallel
# 2D_convergence tests still fails to converge for unknown reasons
make('check', parallel=False)
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/memaxes/package.py b/var/spack/repos/builtin/packages/memaxes/package.py
index ffad167788..581454ef06 100644
--- a/var/spack/repos/builtin/packages/memaxes/package.py
+++ b/var/spack/repos/builtin/packages/memaxes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/meme/package.py b/var/spack/repos/builtin/packages/meme/package.py
new file mode 100644
index 0000000000..224410e85e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/meme/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Meme(AutotoolsPackage):
+ """The MEME Suite allows the biologist to discover novel motifs in
+ collections of unaligned nucleotide or protein sequences, and to perform a
+ wide variety of other motif-based analyses."""
+
+ homepage = "http://meme-suite.org"
+ url = "http://meme-suite.org/meme-software/4.11.4/meme_4.11.4.tar.gz"
+
+ version('4.11.4', '371f513f82fa0888205748e333003897')
+
+ variant('mpi', default=True, description='Enable MPI support')
+
+ depends_on('zlib', type=('link'))
+ depends_on('libxml2', type=('link'))
+ depends_on('libxslt', type=('link'))
+ depends_on('libgcrypt', type=('link'))
+ depends_on('perl', type=('build', 'run'))
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('mpi', when='+mpi')
+
+ # disable mpi support
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if '~mpi' in spec:
+ args += ['--enable-serial']
+ return args
diff --git a/var/spack/repos/builtin/packages/mercurial/package.py b/var/spack/repos/builtin/packages/mercurial/package.py
index ea77953f15..4ecd3332a9 100644
--- a/var/spack/repos/builtin/packages/mercurial/package.py
+++ b/var/spack/repos/builtin/packages/mercurial/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,16 +23,23 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import llnl.util.tty as tty
-import os
+from llnl.util import tty
-class Mercurial(Package):
+class Mercurial(PythonPackage):
"""Mercurial is a free, distributed source control management tool."""
homepage = "https://www.mercurial-scm.org"
- url = "https://www.mercurial-scm.org/release/mercurial-3.9.tar.gz"
+ url = "https://www.mercurial-scm.org/release/mercurial-4.1.2.tar.gz"
+ import_modules = [
+ 'hgext', 'hgext3rd', 'mercurial', 'hgext.convert', 'hgext.fsmonitor',
+ 'hgext.highlight', 'hgext.largefiles', 'hgext.zeroconf',
+ 'hgext.fsmonitor.pywatchman', 'mercurial.hgweb',
+ 'mercurial.httpclient', 'mercurial.pure'
+ ]
+
+ version('4.1.2', '934c99808bdc8385e074b902d59b0d93')
version('3.9.1', '3759dd10edb8c1a6dfb8ff0ce82658ce')
version('3.9', 'e2b355da744e94747daae3a5339d28a0')
version('3.8.4', 'cec2c3db688cb87142809089c6ae13e9')
@@ -40,30 +47,62 @@ class Mercurial(Package):
version('3.8.2', 'c38daa0cbe264fc621dc3bb05933b0b3')
version('3.8.1', '172a8c588adca12308c2aca16608d7f4')
- extends('python')
depends_on('python@2.6:2.8')
depends_on('py-docutils', type='build')
+ depends_on('py-pygments', type=('build', 'run'))
+ depends_on('py-certifi', type=('build', 'run'))
+
+ @run_after('install')
+ def post_install(self):
+ prefix = self.prefix
+
+ # Install man pages
+ mkdirp(prefix.man.man1)
+ mkdirp(prefix.man.man5)
+ mkdirp(prefix.man.man8)
+ with working_dir('doc'):
+ install('hg.1', prefix.man.man1)
+ install('hgignore.5', prefix.man.man5)
+ install('hgrc.5', prefix.man.man5)
+ install('hg-ssh.8', prefix.man.man8)
+
+ # Install completion scripts
+ contrib = join_path(prefix, 'contrib')
+ mkdir(contrib)
+ with working_dir('contrib'):
+ install('bash_completion', join_path(contrib, 'bash_completion'))
+ install('zsh_completion', join_path(contrib, 'zsh_completion'))
+
+ @run_after('install')
+ def configure_certificates(self):
+ """Configuration of HTTPS certificate authorities
+ https://www.mercurial-scm.org/wiki/CACertificates"""
- def install(self, spec, prefix):
- make('install', 'PREFIX={0}'.format(prefix))
+ etc_dir = join_path(self.prefix.etc, 'mercurial')
+ mkdirp(etc_dir)
- # Configuration of HTTPS certificate authorities
- # https://www.mercurial-scm.org/wiki/CACertificates
- hgrc_filename = join_path(prefix.etc, 'mercurial', 'hgrc')
- mkdirp(os.path.dirname(hgrc_filename))
+ hgrc_filename = join_path(etc_dir, 'hgrc')
+ # Use certifi to find the location of the CA certificate
+ certificate = python('-c', 'import certifi; print certifi.where()',
+ output=str)
+
+ if not certificate:
+ tty.warn('CA certificate not found. You may not be able to '
+ 'connect to an HTTPS server. If your CA certificate '
+ 'is in a non-standard location, you should add it to '
+ '{0}.'.format(hgrc_filename))
+
+ # Write the global mercurial configuration file
with open(hgrc_filename, 'w') as hgrc:
- if os.path.exists('/etc/ssl/certs/ca-certificates.crt'):
- # Debian/Ubuntu/Gentoo/Arch Linux
- hgrc.write('[web]\ncacerts = /etc/ssl/certs/ca-certificates.crt') # noqa
- elif os.path.exists('/etc/pki/tls/certs/ca-bundle.crt'):
- # Fedora/RHEL/CentOS
- hgrc.write('[web]\ncacerts = /etc/pki/tls/certs/ca-bundle.crt')
- elif os.path.exists('/etc/ssl/ca-bundle.pem'):
- # openSUSE/SLE
- hgrc.write('[web]\ncacerts = /etc/ssl/ca-bundle.pem')
- else:
- tty.warn('CA certificate not found. You may not be able to '
- 'connect to an HTTPS server. If your CA certificate '
- 'is in a non-standard location, you should add it to '
- '{0}'.format(hgrc_filename))
+ hgrc.write('[web]\ncacerts = {0}'.format(certificate))
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ """Sanity-check setup."""
+
+ hg = Executable(join_path(self.prefix.bin, 'hg'))
+
+ hg('debuginstall')
+ hg('version')
diff --git a/var/spack/repos/builtin/packages/mesa-glu/package.py b/var/spack/repos/builtin/packages/mesa-glu/package.py
new file mode 100644
index 0000000000..b450728e75
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mesa-glu/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class MesaGlu(AutotoolsPackage):
+ """This package provides the Mesa OpenGL Utility library."""
+
+ homepage = "https://www.mesa3d.org"
+ url = "https://www.mesa3d.org/archive/glu/glu-9.0.0.tar.gz"
+
+ version('9.0.0', 'bbc57d4fe3bd3fb095bdbef6fcb977c4')
+
+ variant('mesa', default=True,
+ description='Usually depends on mesa, disable for accelerated OpenGL')
+ depends_on('mesa', when='+mesa')
diff --git a/var/spack/repos/builtin/packages/mesa/package.py b/var/spack/repos/builtin/packages/mesa/package.py
index f19bb466fd..af8c20ae52 100644
--- a/var/spack/repos/builtin/packages/mesa/package.py
+++ b/var/spack/repos/builtin/packages/mesa/package.py
@@ -1,13 +1,12 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
-# This file is part of Spack.
-# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# This file is released as part of spack under the LGPL license.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,46 +21,172 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+
from spack import *
-class Mesa(Package):
- """Mesa is an open-source implementation of the OpenGL
- specification - a system for rendering interactive 3D graphics."""
+class Mesa(AutotoolsPackage):
+ """Mesa is an open-source implementation of the OpenGL specification
+ - a system for rendering interactive 3D graphics."""
homepage = "http://www.mesa3d.org"
- url = "ftp://ftp.freedesktop.org/pub/mesa/12.0.3/mesa-12.0.3.tar.gz"
+ url = "https://mesa.freedesktop.org/archive/mesa-17.1.5.tar.xz"
+ list_url = "https://mesa.freedesktop.org/archive"
+ _urlfmt = "https://mesa.freedesktop.org/archive/mesa-{0}.tar.xz"
+ _oldurlfmt = "https://mesa.freedesktop.org/archive/older-versions/{0}.x/{1}/mesa-{1}.tar.xz"
+ list_depth = 2
+
+ version('17.2.3', 'a7dca71afbc7294cb7d505067fd44ef6')
+ version('17.2.2', '1a157b5baefb5adf9f4fbb8a6632d74c')
+ version('17.1.5', '6cf936fbcaadd98924298a7009e8265d')
+ version('17.1.4', 'be2ef7c9edec23b07f74f6512a6a6fa5')
+ version('17.1.3', '1946a93d543bc219427e2bebe2ac4752')
+ version('17.1.1', 'a4844bc6052578574f9629458bcbb749')
+ version('13.0.6', '1e5a769bc6cfd839cf3febcb179c27cc')
+ version('12.0.6', '1a3d4fea0656c208db59289e4ed33b3f')
+ version('12.0.3', '1113699c714042d8c4df4766be8c57d8')
- version('12.0.3', '60c5f9897ddc38b46f8144c7366e84ad')
+ variant('swrender', default=True,
+ description="Build with (gallium) software rendering.")
+ variant('hwrender', default=False,
+ description="Build with (DRI) hardware rendering.")
+ variant('llvm', default=False,
+ description="Use llvm for rendering pipes.")
# General dependencies
- depends_on('python@2.6.4:')
- depends_on('py-mako@0.3.4:')
+ depends_on('pkg-config@0.9.0:', type='build')
depends_on('flex@2.5.35:', type='build')
depends_on('bison@2.4.1:', type='build')
-
- # For DRI and hardware acceleration
+ depends_on('binutils', type='build')
+ depends_on('python@2.6.4:', type='build')
+ depends_on('py-mako@0.3.4:', type='build')
+ depends_on('gettext')
+ depends_on('icu4c')
+ depends_on('expat')
depends_on('libpthread-stubs')
- depends_on('libdrm')
depends_on('openssl')
+ depends_on('xproto')
+ depends_on('glproto@1.4.14:')
+ depends_on('presentproto@1.0:')
depends_on('libxcb@1.9.3:')
- depends_on('libxshmfence@1.1:')
depends_on('libx11')
depends_on('libxext')
+ depends_on('libxshmfence@1.1:')
depends_on('libxdamage')
depends_on('libxfixes')
+ depends_on('libxv')
+ depends_on('libxvmc')
- depends_on('glproto@1.4.14:', type='build')
- depends_on('dri2proto@2.6:', type='build')
- depends_on('dri3proto@1.0:', type='build')
- depends_on('presentproto@1.0:', type='build')
- depends_on('pkg-config@0.9.0:', type='build')
+ # For DRI and hardware acceleration
+ depends_on('dri2proto@2.6:', type='build', when='+hwrender')
+ depends_on('dri3proto@1.0:', type='build', when='+hwrender')
+ depends_on('libdrm', when='+hwrender')
+
+ depends_on('llvm@:3.8.1+link_dylib', when='@12:12.99+llvm')
+ depends_on('llvm@:3.9.1+link_dylib', when='@13:13.99+llvm')
+ depends_on('llvm+link_dylib', when='+llvm')
+ depends_on('libelf', when='+llvm')
+
+ def url_for_version(self, version):
+ """Handle Mesa version-based custom URLs."""
+ if version < Version('17.0.0'):
+ return self._oldurlfmt.format(version.up_to(1), version)
+ else:
+ return self._urlfmt.format(version)
+
+ def configure_args(self):
+ """Build drivers for platforms supported by spack;
+ exclude drivers for embedded systems.
+ """
+ spec = self.spec
+ args = ['--enable-glx', '--enable-glx-tls']
+ drivers = []
+
+ if '+swrender' in spec:
+ drivers = ['swrast']
+ args.extend([
+ '--disable-osmesa',
+ '--enable-gallium-osmesa',
+ '--enable-texture-float',
+ ])
+ if '+llvm' in spec:
+ # For @17.1.1:17.1.2 the swr driver requires C++14 support
+ # Should be fixed in 17.1.3, but can still encounter problems
+ if spec.version >= Version('17') and \
+ spec.version < Version('17.2'):
+ if spec.satisfies('%gcc@4.9:'):
+ drivers.append('swr')
+ else:
+ drivers.append('swr')
+ else:
+ args.append('--disable-gallium-osmesa')
+ # Fallback for "~hwrender~swrender" -> old osmesa
+ if '~hwrender' in spec:
+ args.append('--enable-osmesa')
+
+ if '+hwrender' in spec:
+ args.append('--enable-xa')
+ if spec.version >= Version('17'):
+ args.append('--with-platforms=x11,drm')
+ else:
+ args.append('--with-egl-platforms=x11,drm')
+ drivers.extend([
+ 'svga', 'i915', 'r600', 'nouveau', 'virgl'
+ ])
+
+ # These hardware drivers need llvm
+ if '+llvm' in spec:
+ drivers.extend(['r300', 'radeonsi'])
+
+ else:
+ args.extend([
+ '--disable-xa',
+ '--disable-dri',
+ '--disable-dri3',
+ '--disable-egl',
+ '--disable-gbm',
+ '--disable-xvmc',
+ ])
+ if spec.version >= Version('17'):
+ args.append('--with-platforms=x11')
+
+ if '+llvm' in spec:
+ if self.spec.version < Version('17'):
+ args.append('--enable-gallium-llvm')
+ else:
+ args.append('--enable-llvm')
+ if '+link_dylib' in self.spec['llvm']:
+ args.append('--enable-llvm-shared-libs')
+ else:
+ args.append('--disable-llvm-shared-libs')
+ args.append('--with-llvm-prefix=%s' % spec['llvm'].prefix)
+
+ if drivers:
+ args.append('--with-gallium-drivers=' + ','.join(drivers))
+ else:
+ args.append('--without-gallium-drivers')
+
+ # Avoid errors due to missing clock_gettime symbol:
+ arch = spec.architecture
+ if arch.platform == 'linux':
+ args.append('LIBS=-lrt')
- # TODO: Add package for systemd, provides libudev
- # Using the system package manager to install systemd didn't work for me
+ return args
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
+ def configure(self, spec, prefix):
+ """Configure mesa, detecting if libsysfs is required
+ for DRI support on the build host.
+ """
+ options = ['--prefix={0}'.format(prefix)] + self.configure_args()
- make()
- make('install')
+ try:
+ # First attempt uses libudev:
+ configure(*options)
+ except ProcessError:
+ if '+hwrender' in spec and not spec.satisfies('@13:'):
+ print('Configuring with libudev failed ... '
+ ' trying libsysfs ...')
+ options.append('--enable-sysfs')
+ configure(*options)
+ else:
+ raise
diff --git a/var/spack/repos/builtin/packages/meshkit/package.py b/var/spack/repos/builtin/packages/meshkit/package.py
new file mode 100644
index 0000000000..9db76fc4d8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/meshkit/package.py
@@ -0,0 +1,81 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class Meshkit(AutotoolsPackage):
+ """MeshKit is an open-source library of mesh generation functionality.
+ Its design philosophy is two-fold: it provides a collection of
+ meshing algorithms for use in real meshing problems, along with
+ other tools commonly needed to support mesh generation"""
+
+ homepage = "http://sigma.mcs.anl.gov/meshkit-library"
+ url = "http://ftp.mcs.anl.gov/pub/fathom/meshkit-1.5.0.tar.gz"
+
+ version('1.5.0', '90b52416598ef65525ce4457a50ffe68')
+
+ variant("mpi", default=True, description='enable mpi support')
+ variant("netgen", default=False, description='enable netgen support')
+ variant("debug", default=False, description='enable debug symbols')
+ variant("shared", default=False, description='enable shared builds')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('netgen', when='+netgen')
+ depends_on('cgm')
+ depends_on('moab+cgm+irel+fbigeom')
+
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ "--with-igeom={0}".format(spec['cgm'].prefix),
+ "--with-imesh={0}".format(spec['moab'].prefix)
+ ]
+ if '+mpi' in spec:
+ args.extend([
+ "--with-mpi",
+ "CC={0}".format(spec['mpi'].mpicc),
+ "CXX={0}".format(spec['mpi'].mpicxx),
+ "FC={0}".format(spec['mpi'].mpifc)
+ ])
+# FIXME without-mpi is not working
+# else:
+# args.append("--without-mpi")
+ if '+netgen' in spec:
+ args.append("--with-netgen={0}".format(spec['netgen'].prefix))
+ else:
+ args.append("--without-netgen")
+
+ if '+debug' in spec:
+ args.append("--enable-debug")
+ else:
+ args.append("--disable-debug")
+
+ if '+shared' in spec:
+ args.append("--enable-shared")
+ else:
+ args.append("--disable-shared")
+
+ return args
diff --git a/var/spack/repos/builtin/packages/meson/package.py b/var/spack/repos/builtin/packages/meson/package.py
new file mode 100644
index 0000000000..046d9b2dea
--- /dev/null
+++ b/var/spack/repos/builtin/packages/meson/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Meson(PythonPackage):
+ """Meson is a portable open source build system meant to be both
+ extremely fast, and as user friendly as possible."""
+
+ homepage = "http://mesonbuild.com/"
+ url = "https://github.com/mesonbuild/meson/archive/0.42.0.tar.gz"
+
+ version('0.42.0', '9e26bf154ca439b78b1b9366c8a89437')
+ version('0.41.2', 'aa9c69ced965e47f5c75a9257ee91ce3')
+ version('0.41.1', 'c6d285b35cfd7acc8517124d417efbdc')
+
+ variant('ninjabuild', default=True)
+
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('ninja', when='+ninjabuild', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/mesquite/package.py b/var/spack/repos/builtin/packages/mesquite/package.py
new file mode 100644
index 0000000000..b23f1294ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mesquite/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mesquite(AutotoolsPackage):
+ """Mesquite (Mesh Quality Improvement Toolkit) is designed to provide a
+ stand-alone, portable, comprehensive suite of mesh quality improvement
+ algorithms and components that can be used to construct custom quality
+ improvement algorithms. Mesquite provides a robust and effective mesh
+ improvement toolkit that allows both meshing researchers application
+ scientists to benefit from the latest developments in mesh quality
+ control and improvement."""
+
+ homepage = "https://software.sandia.gov/mesquite"
+ url = "https://software.sandia.gov/mesquite/mesquite-2.3.0.tar.gz"
+
+ version('2.99', '92b94167981bb8fcd59b0f0f18fbab64')
+ version('2.3.0', 'f64948b5210d5ccffaa9a2482447b322')
+ version('2.2.0', '41360c363e541aff7dc10024c90072d3')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+
+ depends_on('mpi', when='+mpi')
+
+ def configure_args(self):
+ args = [
+ 'CC=%s' % self.spec['mpi'].mpicc,
+ 'CXX=%s' % self.spec['mpi'].mpicxx,
+ '--with-mpi=%s' % self.spec['mpi'].prefix,
+ '--enable-release',
+ '--enable-shared',
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/metaphysicl/package.py b/var/spack/repos/builtin/packages/metaphysicl/package.py
new file mode 100644
index 0000000000..52548f7b4c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/metaphysicl/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Metaphysicl(AutotoolsPackage):
+ """Metaprogramming and operator-overloaded classes for
+ numerical simulations."""
+ homepage = "https://github.com/roystgnr/MetaPhysicL"
+ url = "https://github.com/roystgnr/MetaPhysicL/archive/v0.2.0.tar.gz"
+
+ version('0.2.0', '2af65536524a3945b6507a30233ca1cf')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
diff --git a/var/spack/repos/builtin/packages/metis/package.py b/var/spack/repos/builtin/packages/metis/package.py
index b66677288c..20e601fbd8 100644
--- a/var/spack/repos/builtin/packages/metis/package.py
+++ b/var/spack/repos/builtin/packages/metis/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,8 @@ class Metis(Package):
partitioning schemes."""
homepage = "http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
- base_url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis"
+ url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
+ list_url = "http://glaros.dtc.umn.edu/gkhome/fsroot/sw/metis/OLD"
version('5.1.0', '5465e67079419a69e0116de24fce58fe')
version('5.0.2', 'acb521a4e8c2e6dd559a7f9abd0468c5')
@@ -55,12 +56,11 @@ class Metis(Package):
patch('install_gklib_defs_rename.patch', when='@5:')
def url_for_version(self, version):
- verdir = 'OLD/' if version < Version('4.0.3') else ''
- return '%s/%smetis-%s.tar.gz' % (Metis.base_url, verdir, version)
-
- @when('@:4')
- def patch(self):
- pass
+ url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis"
+ if version < Version('4.0.3'):
+ url += "/OLD"
+ url += "/metis-{0}.tar.gz".format(version)
+ return url
@when('@5:')
def patch(self):
@@ -91,7 +91,7 @@ class Metis(Package):
raise InstallError('METIS@:4 does not support the following '
'variants: gdb, int64, real64.')
- options = ['COPTIONS=-fPIC']
+ options = ['COPTIONS={0}'.format(self.compiler.pic_flag)]
if '+debug' in spec:
options.append('OPTFLAGS=-g -O0')
make(*options)
@@ -119,7 +119,7 @@ class Metis(Package):
install(sharefile, prefix.share)
if '+shared' in spec:
- shared_flags = ['-fPIC', '-shared']
+ shared_flags = [self.compiler.pic_flag, '-shared']
if sys.platform == 'darwin':
shared_suffix = 'dylib'
shared_flags.extend(['-Wl,-all_load', 'libmetis.a'])
@@ -135,7 +135,8 @@ class Metis(Package):
# Set up and run tests on installation
ccompile('-I%s' % prefix.include, '-L%s' % prefix.lib,
- '-Wl,-rpath=%s' % (prefix.lib if '+shared' in spec else ''),
+ self.compiler.cc_rpath_arg +
+ '%s' % (prefix.lib if '+shared' in spec else ''),
join_path('Programs', 'io.o'), join_path('Test', 'mtest.c'),
'-o', '%s/mtest' % prefix.bin, '-lmetis', '-lm')
@@ -186,6 +187,15 @@ class Metis(Package):
if '+shared' in spec:
options.append('-DSHARED:BOOL=ON')
+ else:
+ # Remove all RPATH options
+ # (RPATHxxx options somehow trigger cmake to link dynamically)
+ rpath_options = []
+ for o in options:
+ if o.find('RPATH') >= 0:
+ rpath_options.append(o)
+ for o in rpath_options:
+ options.remove(o)
if '+debug' in spec:
options.extend(['-DDEBUG:BOOL=ON',
'-DCMAKE_BUILD_TYPE:STRING=Debug'])
diff --git a/var/spack/repos/builtin/packages/mfem/mfem_ppc_build.patch b/var/spack/repos/builtin/packages/mfem/mfem_ppc_build.patch
new file mode 100644
index 0000000000..b403683105
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mfem/mfem_ppc_build.patch
@@ -0,0 +1,10 @@
+--- mfem/miniapps/performance/makefile 2017-06-07 13:51:29.366596901 -0700
++++ mfem/miniapps/performance/makefile.new 2017-06-07 13:51:57.087104178 -0700
+@@ -26,7 +26,6 @@
+ # Compiler specific optimizations.
+ # For best performance, GCC 5 (or newer) is recommended.
+ ifneq (,$(findstring $(MFEM_CXX),g++ mpicxx))
+- MFEM_CXXFLAGS += -march=native
+ # MFEM_CXXFLAGS += -std=c++03
+ MFEM_CXXFLAGS += -std=c++11
+ MFEM_CXXFLAGS += -pedantic -Wall
diff --git a/var/spack/repos/builtin/packages/mfem/package.py b/var/spack/repos/builtin/packages/mfem/package.py
index 45f64cef65..3afbd4ca2f 100644
--- a/var/spack/repos/builtin/packages/mfem/package.py
+++ b/var/spack/repos/builtin/packages/mfem/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,6 +22,7 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import re
from spack import *
@@ -31,142 +32,226 @@ class Mfem(Package):
homepage = 'http://www.mfem.org'
url = 'https://github.com/mfem/mfem'
+ # mfem is downloaded from a URL shortener at request of upstream
+ # author Tzanio Kolev <tzanio@llnl.gov>. See here:
+ # https://github.com/mfem/mfem/issues/53
+ #
+ # The following procedure should be used to verify security when a
+ # new verison is added:
+ #
+ # 1. Verify that no checksums on old versions have changed.
+ #
+ # 2. Verify that the shortened URL for the new version is listed at:
+ # http://mfem.org/download/
+ #
+ # 3. Use http://getlinkinfo.com or similar to verify that the
+ # underling download link for the latest version comes has the
+ # prefix: http://mfem.github.io/releases
+ #
+ # If this quick verification procedure fails, additional discussion
+ # will be required to verify the new version.
+
+ version('3.3.2',
+ '01a762a5d0a2bc59ce4e2f59009045a4',
+ url='https://goo.gl/Kd7Jk8', extension='.tar.gz',
+ preferred=True)
+
+ version('laghos-v1.0', git='https://github.com/mfem/mfem',
+ tag='laghos-v1.0')
+
+ version('3.3',
+ 'b17bd452593aada93dc0fee748fcfbbf4f04ce3e7d77fdd0341cc9103bcacd0b',
+ url='http://goo.gl/Vrpsns', extension='.tar.gz')
+
version('3.2',
'2938c3deed4ec4f7fd5b5f5cfe656845282e86e2dcd477d292390058b7b94340',
- url='http://goo.gl/Y9T75B', preferred=True, extension='.tar.gz')
+ url='http://goo.gl/Y9T75B', extension='.tar.gz')
version('3.1',
'841ea5cf58de6fae4de0f553b0e01ebaab9cd9c67fa821e8a715666ecf18fc57',
url='http://goo.gl/xrScXn', extension='.tar.gz')
-# version('3.1', git='https://github.com/mfem/mfem.git',
-# commit='dbae60fe32e071989b52efaaf59d7d0eb2a3b574')
- variant('metis', default=False, description='Activate support for metis')
- variant('hypre', default=False, description='Activate support for hypre')
- variant('suite-sparse', default=False,
- description='Activate support for SuiteSparse')
- variant('mpi', default=True, description='Activate support for MPI')
+ variant('mpi', default=True,
+ description='Enable MPI parallelism')
+ variant('hypre', default=True,
+ description='Required for MPI parallelism')
+ variant('openmp', default=False,
+ description='Enable OpenMP parallelism')
+ variant('threadsafe', default=False,
+ description=('Enable thread safe features.'
+ ' Required for OpenMP.'
+ ' May cause minor performance issues.'))
variant('superlu-dist', default=False,
- description='Activate support for SuperLU_Dist')
- variant('lapack', default=False, description='Activate support for LAPACK')
- variant('debug', default=False, description='Build debug version')
- variant('netcdf', default=False, description='Activate NetCDF support')
-
- depends_on('blas', when='+lapack')
- depends_on('lapack', when='+lapack')
+ description='Enable MPI parallel, sparse direct solvers')
+ variant('suite-sparse', default=False,
+ description='Enable serial, sparse direct solvers')
+ variant('petsc', default=False,
+ description='Enable PETSc solvers, preconditioners, etc..')
+ variant('sundials', default=False,
+ description='Enable Sundials time integrators')
+ variant('mpfr', default=False,
+ description='Enable precise, 1D quadrature rules')
+ variant('lapack', default=False,
+ description='Use external blas/lapack routines')
+ variant('debug', default=False,
+ description='Build debug instead of optimized version')
+ variant('netcdf', default=False,
+ description='Enable Cubit/Genesis reader')
+ variant('gzstream', default=True,
+ description='Support zip\'d streams for I/O')
+ variant('examples', default=False,
+ description='Build and install examples')
+ variant('miniapps', default=False,
+ description='Build and install miniapps')
- depends_on('mpi', when='+mpi')
- depends_on('metis', when='+mpi')
- depends_on('hypre', when='+mpi')
+ conflicts('+mpi', when='~hypre')
+ conflicts('+suite-sparse', when='~lapack')
+ conflicts('+superlu-dist', when='@:3.1')
+ conflicts('+netcdf', when='@:3.1')
depends_on('hypre', when='+hypre')
-
- depends_on('metis@4:', when='+metis')
-
- depends_on('suite-sparse', when='+suite-sparse')
+ depends_on('blas', when='+lapack')
depends_on('blas', when='+suite-sparse')
+ depends_on('lapack', when='+lapack')
depends_on('lapack', when='+suite-sparse')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('metis')
+ depends_on('parmetis', when='+superlu-dist')
+ depends_on('metis@5:', when='+superlu-dist')
depends_on('metis@5:', when='+suite-sparse ^suite-sparse@4.5:')
- depends_on('cmake', when='^metis@5:', type='build')
+ depends_on('sundials@2.7:+hypre', when='+sundials')
+ depends_on('suite-sparse', when='+suite-sparse')
depends_on('superlu-dist', when='@3.2: +superlu-dist')
+ depends_on('petsc@3.8:', when='+petsc')
+ depends_on('mpfr', when='+mpfr')
depends_on('netcdf', when='@3.2: +netcdf')
depends_on('zlib', when='@3.2: +netcdf')
depends_on('hdf5', when='@3.2: +netcdf')
+ depends_on('libunwind', when='+debug')
+ depends_on('zlib', when='+gzstream')
- def check_variants(self, spec):
- if '+mpi' in spec and ('+hypre' not in spec or '+metis' not in spec):
- raise InstallError('mfem+mpi must be built with +hypre ' +
- 'and +metis!')
- if '+suite-sparse' in spec and ('+metis' not in spec or
- '+lapack' not in spec):
- raise InstallError('mfem+suite-sparse must be built with ' +
- '+metis and +lapack!')
- if 'metis@5:' in spec and '%clang' in spec and (
- '^cmake %gcc' not in spec):
- raise InstallError('To work around CMake bug with clang, must ' +
- 'build mfem with mfem[+variants] %clang ' +
- '^cmake %gcc to force CMake to build with gcc')
- if '@:3.1' in spec and '+superlu-dist' in spec:
- raise InstallError('MFEM does not support SuperLU_DIST for ' +
- 'versions 3.1 and earlier')
- if '@:3.1' in spec and '+netcdf' in spec:
- raise InstallError('MFEM does not support NetCDF for versions' +
- '3.1 and earlier')
- return
+ patch('mfem_ppc_build.patch', when='@3.2:3.3 arch=ppc64le')
+ #
+ # Note: Although MFEM does support CMake configuration, MFEM
+ # development team indicates that vanilla GNU Make is the
+ # preferred mode of configuration of MFEM and the mode most
+ # likely to be up to date in supporting *all* of MFEM's
+ # configuration options. So, don't use CMake
+ #
def install(self, spec, prefix):
- self.check_variants(spec)
- options = ['PREFIX=%s' % prefix]
+ def yes_no(varstr):
+ return 'YES' if varstr in self.spec else 'NO'
- if '+lapack' in spec:
- lapack_lib = (spec['lapack'].lapack_libs + spec['blas'].blas_libs).ld_flags # NOQA: ignore=E501
- options.extend([
- 'MFEM_USE_LAPACK=YES',
- 'LAPACK_OPT=-I%s' % spec['lapack'].prefix.include,
- 'LAPACK_LIB=%s' % lapack_lib])
+ metis5_str = 'NO'
+ if '+superlu-dist' in spec or \
+ spec.satisfies('+suite-sparse ^suite-sparse@4.5:') or \
+ spec['metis'].satisfies('@5:'):
+ metis5_str = 'YES'
+
+ threadsafe_str = 'NO'
+ if '+openmp' in spec or '+threadsafe' in spec:
+ threadsafe_str = 'YES'
+
+ options = [
+ 'PREFIX=%s' % prefix,
+ 'MFEM_USE_MEMALLOC=YES',
+ 'MFEM_DEBUG=%s' % yes_no('+debug'),
+ 'CXX=%s' % env['CXX'],
+ 'MFEM_USE_LIBUNWIND=%s' % yes_no('+debug'),
+ 'MFEM_USE_GZSTREAM=%s' % yes_no('+gzstream'),
+ 'MFEM_USE_METIS_5=%s' % metis5_str,
+ 'MFEM_THREAD_SAFE=%s' % threadsafe_str,
+ 'MFEM_USE_MPI=%s' % yes_no('+mpi'),
+ 'MFEM_USE_LAPACK=%s' % yes_no('+lapack'),
+ 'MFEM_USE_SUPERLU=%s' % yes_no('+superlu-dist'),
+ 'MFEM_USE_SUITESPARSE=%s' % yes_no('+suite-sparse'),
+ 'MFEM_USE_SUNDIALS=%s' % yes_no('+sundials'),
+ 'MFEM_USE_PETSC=%s' % yes_no('+petsc'),
+ 'MFEM_USE_NETCDF=%s' % yes_no('+netcdf'),
+ 'MFEM_USE_MPFR=%s' % yes_no('+mpfr'),
+ 'MFEM_USE_OPENMP=%s' % yes_no('+openmp')]
+
+ if '+mpi' in spec:
+ options += ['MPICXX=%s' % spec['mpi'].mpicxx]
if '+hypre' in spec:
- options.extend([
+ options += [
'HYPRE_DIR=%s' % spec['hypre'].prefix,
'HYPRE_OPT=-I%s' % spec['hypre'].prefix.include,
- 'HYPRE_LIB=-L%s' % spec['hypre'].prefix.lib +
- ' -lHYPRE'])
-
- if 'parmetis' in spec:
- metis_lib = '-L%s -lparmetis -lmetis' % spec['parmetis'].prefix.lib
- metis_str = 'MFEM_USE_METIS_5=YES'
- options.extend([metis_str,
- 'METIS_DIR=%s' % spec['parmetis'].prefix,
- 'METIS_OPT=-I%s' % spec['parmetis'].prefix.include,
- 'METIS_LIB=%s' % metis_lib])
- elif 'metis' in spec:
- metis_lib = '-L%s -lmetis' % spec['metis'].prefix.lib
- if spec['metis'].satisfies('@5:'):
- metis_str = 'MFEM_USE_METIS_5=YES'
- else:
- metis_str = 'MFEM_USE_METIS_5=NO'
- options.extend([
- metis_str,
- 'METIS_DIR=%s' % spec['metis'].prefix,
- 'METIS_OPT=-I%s' % spec['metis'].prefix.include,
- 'METIS_LIB=%s' % metis_lib])
+ 'HYPRE_LIB=-L%s' % spec['hypre'].prefix.lib + ' -lHYPRE']
- if 'mpi' in spec:
- options.extend(['MFEM_USE_MPI=YES'])
+ if '+lapack' in spec:
+ lapack_lib = (spec['lapack'].libs + spec['blas'].libs).ld_flags # NOQA: ignore=E501
+ options += [
+ 'LAPACK_OPT=-I%s' % spec['lapack'].prefix.include,
+ 'LAPACK_LIB=%s' % lapack_lib]
if '+superlu-dist' in spec:
+ metis_lib = '-L%s -lparmetis -lmetis' % spec['parmetis'].prefix.lib
+ options += [
+ 'METIS_DIR=%s' % spec['parmetis'].prefix,
+ 'METIS_OPT=-I%s' % spec['parmetis'].prefix.include,
+ 'METIS_LIB=%s' % metis_lib]
superlu_lib = '-L%s' % spec['superlu-dist'].prefix.lib
superlu_lib += ' -lsuperlu_dist'
- sl_inc = 'SUPERLU_OPT=-I%s' % spec['superlu-dist'].prefix.include
- options.extend(['MFEM_USE_SUPERLU=YES',
- 'SUPERLU_DIR=%s' % spec['superlu-dist'].prefix,
- sl_inc,
- 'SUPERLU_LIB=%s' % superlu_lib])
+ options += [
+ 'SUPERLU_DIR=%s' % spec['superlu-dist'].prefix,
+ 'SUPERLU_OPT=-I%s' % spec['superlu-dist'].prefix.include,
+ 'SUPERLU_LIB=%s' % superlu_lib]
+ else:
+ metis_lib = '-L%s -lmetis' % spec['metis'].prefix.lib
+ options += [
+ 'METIS_DIR=%s' % spec['metis'].prefix,
+ 'METIS_OPT=-I%s' % spec['metis'].prefix.include,
+ 'METIS_LIB=%s' % metis_lib]
if '+suite-sparse' in spec:
ssp = spec['suite-sparse'].prefix
ss_lib = '-L%s' % ssp.lib
-
if '@3.2:' in spec:
ss_lib += ' -lklu -lbtf'
-
ss_lib += (' -lumfpack -lcholmod -lcolamd' +
' -lamd -lcamd -lccolamd -lsuitesparseconfig')
-
- no_librt_archs = ['darwin-i686', 'darwin-x86_64']
- no_rt = any(map(lambda a: spec.satisfies('=' + a),
- no_librt_archs))
+ no_rt = spec.satisfies('platform=darwin')
if not no_rt:
ss_lib += ' -lrt'
ss_lib += (' ' + metis_lib + ' ' + lapack_lib)
+ options += [
+ 'SUITESPARSE_DIR=%s' % ssp,
+ 'SUITESPARSE_OPT=-I%s' % ssp.include,
+ 'SUITESPARSE_LIB=%s' % ss_lib]
+
+ if '+sundials' in spec:
+ sundials_libs = (
+ '-lsundials_arkode -lsundials_cvode'
+ ' -lsundials_nvecserial -lsundials_kinsol')
+ if '+mpi' in spec:
+ sundials_libs += (
+ ' -lsundials_nvecparhyp -lsundials_nvecparallel')
+ options += [
+ 'SUNDIALS_DIR=%s' % spec['sundials'].prefix,
+ 'SUNDIALS_OPT=-I%s' % spec['sundials'].prefix.include,
+ 'SUNDIALS_LIB=-L%s %s' % (spec['sundials'].prefix.lib,
+ sundials_libs)]
- options.extend(['MFEM_USE_SUITESPARSE=YES',
- 'SUITESPARSE_DIR=%s' % ssp,
- 'SUITESPARSE_OPT=-I%s' % ssp.include,
- 'SUITESPARSE_LIB=%s' % ss_lib])
+ if '+petsc' in spec:
+ f = open('%s/lib/pkgconfig/PETSc.pc' % spec['petsc'].prefix, 'r')
+ for line in f:
+ if re.search('^\s*Cflags: ', line):
+ petsc_opts = re.sub('^\s*Cflags: (.*)', '\\1', line)
+ elif re.search('^\s*Libs.*: ', line):
+ petsc_libs = re.sub('^\s*Libs.*: (.*)', '\\1', line)
+ f.close()
+ options += [
+ 'PETSC_DIR=%s' % spec['petsc'].prefix,
+ 'PETSC_OPT=%s' % petsc_opts,
+ 'PETSC_LIB=-L%s -lpetsc %s' %
+ (spec['petsc'].prefix.lib, petsc_libs)]
if '+netcdf' in spec:
np = spec['netcdf'].prefix
@@ -175,28 +260,31 @@ class Mfem(Package):
nlib = '-L%s -lnetcdf ' % np.lib
nlib += '-L%s -lhdf5_hl -lhdf5 ' % h5p.lib
nlib += '-L%s -lz' % zp.lib
- options.extend(['MFEM_USE_NETCDF=YES',
- 'NETCDF_DIR=%s' % np,
- 'HDF5_DIR=%s' % h5p,
- 'ZLIB_DIR=%s' % zp,
- 'NETCDF_OPT=-I%s' % np.include,
- 'NETCDF_LIB=%s' % nlib])
+ options += [
+ 'NETCDF_DIR=%s' % np,
+ 'HDF5_DIR=%s' % h5p,
+ 'ZLIB_DIR=%s' % zp,
+ 'NETCDF_OPT=-I%s' % np.include,
+ 'NETCDF_LIB=%s' % nlib]
- if '+debug' in spec:
- options.extend(['MFEM_DEBUG=YES'])
+ if '+mpfr' in spec:
+ options += ['MPFR_LIB=-L%s -lmpfr' % spec['mpfr'].prefix.lib]
+
+ if '+openmp' in spec:
+ options += ['OPENMP_OPT = %s' % self.compiler.openmp_flag]
make('config', *options)
- make('all')
+ make('lib')
- # Run a small test before installation
- args = ['-m', join_path('data', 'star.mesh'), '--no-visualization']
- if '+mpi' in spec:
- Executable(join_path(spec['mpi'].prefix.bin,
- 'mpirun'))('-np',
- '4',
- join_path('examples', 'ex1p'),
- *args)
- else:
- Executable(join_path('examples', 'ex1'))(*args)
+ if self.run_tests:
+ make('check')
make('install')
+
+ if '+examples' in spec:
+ make('examples')
+ install_tree('examples', join_path(prefix, 'examples'))
+
+ if '+miniapps' in spec:
+ make('miniapps')
+ install_tree('miniapps', join_path(prefix, 'miniapps'))
diff --git a/var/spack/repos/builtin/packages/microbiomeutil/package.py b/var/spack/repos/builtin/packages/microbiomeutil/package.py
new file mode 100644
index 0000000000..319148f71d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/microbiomeutil/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Microbiomeutil(MakefilePackage):
+ """Microbiome analysis utilities"""
+
+ homepage = "http://microbiomeutil.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/microbiomeutil/microbiomeutil-r20110519.tgz"
+
+ version('20110519', '11eaac4b0468c05297ba88ec27bd4b56')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('blast-plus')
+ depends_on('cdbfasta')
+
+ def install(self, spec, prefix):
+ install_tree('ChimeraSlayer', prefix.ChimeraSlayer)
+ install_tree('NAST-iEr', join_path(prefix, 'NAST-iEr'))
+ install_tree('TreeChopper', prefix.TreeChopper)
+ install_tree('WigeoN', prefix.WigeoN)
+ install_tree('docs', prefix.docs)
+ install_tree('RESOURCES', prefix.resources)
+ install_tree('AmosCmp16Spipeline', prefix.AmosCmp16Spipeline)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', self.prefix.ChimeraSlayer)
+ run_env.prepend_path('PATH', join_path(self.prefix, 'NAST-iEr'))
+ run_env.prepend_path('PATH', self.prefix.TreeChopper)
+ run_env.prepend_path('PATH', self.prefix.WigeoN)
diff --git a/var/spack/repos/builtin/packages/miniaero/package.py b/var/spack/repos/builtin/packages/miniaero/package.py
new file mode 100644
index 0000000000..da1421963f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miniaero/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Miniaero(MakefilePackage):
+ """Proxy Application. MiniAero is a mini-application for the evaulation
+ of programming models and hardware for next generation platforms.
+ """
+
+ homepage = "http://mantevo.org"
+ url = "https://github.com/Mantevo/miniAero.git"
+
+ tags = ['proxy-app']
+
+ version('2016-11-11', git='https://github.com/Mantevo/miniAero.git',
+ commit='f46d135479a5be19ec5d146ccaf0e581aeff4596')
+
+ depends_on('kokkos')
+
+ @property
+ def build_targets(self):
+ targets = [
+ '--directory=kokkos',
+ 'CXX=c++',
+ 'KOKKOS_PATH={0}'.format(self.spec['kokkos'].prefix)
+ ]
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('kokkos/miniAero.host', prefix.bin)
+ install('kokkos/README', prefix.doc)
+ install('kokkos/tests/3D_Sod_Serial/miniaero.inp', prefix.bin)
+ install_tree('kokkos/tests', prefix.doc.tests)
diff --git a/var/spack/repos/builtin/packages/miniamr/package.py b/var/spack/repos/builtin/packages/miniamr/package.py
new file mode 100644
index 0000000000..1740ab461c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miniamr/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Miniamr(MakefilePackage):
+ """Proxy Application. 3D stencil calculation with
+ Adaptive Mesh Refinement (AMR)
+ """
+
+ homepage = "https://mantevo.org"
+ url = "https://github.com/Mantevo/miniAMR/archive/v1.4.tar.gz"
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('1.4.0', '3aab0247047a94e343709cf2e51cc46e')
+
+ variant('mpi', default=True, description='Build with MPI support')
+
+ depends_on('mpi', when="+mpi")
+
+ @property
+ def build_targets(self):
+ targets = []
+ if '+mpi' in self.spec:
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+ targets.append('LD={0}'.format(self.spec['mpi'].mpicc))
+ targets.append('LDLIBS=-lm')
+ else:
+ targets.append('CC={0}'.format(self.compiler.cc))
+ targets.append('LD={0}'.format(self.compiler.cc))
+ targets.append('--directory=ref')
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual installation
+ mkdir(prefix.bin)
+ mkdir(prefix.doc)
+
+ install('ref/ma.x', prefix.bin)
+ # Install Support Documents
+ install('ref/README', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/miniconda2/package.py b/var/spack/repos/builtin/packages/miniconda2/package.py
new file mode 100644
index 0000000000..7433b2d731
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miniconda2/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from six.moves.urllib.parse import urlparse
+from os.path import split
+
+
+class Miniconda2(Package):
+ """The minimalist bootstrap toolset for conda and Python2."""
+
+ homepage = "https://conda.io/miniconda.html"
+ url = "https://repo.continuum.io/miniconda/Miniconda2-4.3.11-Linux-x86_64.sh"
+
+ version('4.3.14', '8cb075cf5462480980ef2373ad9fad38', expand=False)
+ version('4.3.11', 'd573980fe3b5cdf80485add2466463f5', expand=False)
+
+ def install(self, spec, prefix):
+ # peel the name of the script out of the url
+ result = urlparse(self.url)
+ dir, script = split(result.path)
+ bash = which('bash')
+ bash(script, '-b', '-f', '-p', self.prefix)
diff --git a/var/spack/repos/builtin/packages/miniconda3/package.py b/var/spack/repos/builtin/packages/miniconda3/package.py
new file mode 100644
index 0000000000..faaa786b6c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/miniconda3/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from six.moves.urllib.parse import urlparse
+from os.path import split
+
+
+class Miniconda3(Package):
+ """The minimalist bootstrap toolset for conda and Python3."""
+
+ homepage = "https://conda.io/miniconda.html"
+ url = "https://repo.continuum.io/miniconda/Miniconda3-4.3.11-Linux-x86_64.sh"
+
+ version('4.3.14', 'fc6fc37479e3e3fcf3f9ba52cae98991', expand=False)
+ version('4.3.11', '1924c8d9ec0abf09005aa03425e9ab1a', expand=False)
+
+ def install(self, spec, prefix):
+ # peel the name of the script out of the url
+ result = urlparse(self.url)
+ dir, script = split(result.path)
+ bash = which('bash')
+ bash(script, '-b', '-f', '-p', self.prefix)
diff --git a/var/spack/repos/builtin/packages/minife/package.py b/var/spack/repos/builtin/packages/minife/package.py
new file mode 100644
index 0000000000..0757a8c6db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minife/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Minife(MakefilePackage):
+ """Proxy Application. MiniFE is an proxy application
+ for unstructured implicit finite element codes.
+ """
+
+ homepage = "https://mantevo.org/"
+ url = "https://github.com/Mantevo/miniFE/archive/v2.1.0.tar.gz"
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('2.1.0', '930a6b99c09722428a6f4d795b506a62')
+
+ variant('build', default='ref', description='Type of Parallelism',
+ values=('ref', 'openmp_ref', 'qthreads', 'kokkos'))
+
+ depends_on('mpi')
+ depends_on('qthreads', when='build=qthreads')
+
+ @property
+ def build_targets(self):
+ targets = [
+ '--directory={0}/src'.format(self.spec.variants['build'].value),
+ 'CXX={0}'.format(self.spec['mpi'].mpicxx),
+ 'CC={0}'.format(self.spec['mpi'].mpicc)
+ ]
+
+ return targets
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('{0}/src/Makefile'.format(
+ self.spec.variants['build'].value))
+
+ makefile.filter('-fopenmp', self.compiler.openmp_flag, string=True)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('{0}/src/miniFE.x'.format(self.spec.variants['build'].value),
+ prefix.bin)
diff --git a/var/spack/repos/builtin/packages/minighost/package.py b/var/spack/repos/builtin/packages/minighost/package.py
new file mode 100644
index 0000000000..f397306645
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minighost/package.py
@@ -0,0 +1,96 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import tarfile
+
+from spack import *
+
+
+class Minighost(MakefilePackage):
+ """Proxy Application. A Finite Difference proxy
+ application which implements a difference stencil
+ across a homogenous three dimensional domain.
+ """
+
+ homepage = "http://mantevo.org"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/MiniGhost/miniGhost_1.0.1.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.0.1', '2a4ac4383e9be00f87b6067c3cfe6463')
+
+ variant('mpi', default=True, description='Enable MPI Support')
+
+ depends_on('mpi', when='+mpi')
+
+ parallel = False
+
+ @property
+ def build_targets(self):
+ targets = ['--directory=miniGhost_ref']
+
+ if '+mpi' in self.spec:
+ targets.append('PROTOCOL=-D_MG_MPI')
+ targets.append('FC={0}'.format(self.spec['mpi'].mpif77))
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+ targets.append(
+ 'LIBS=-lm -lgfortran -lmpi_usempi -lmpi_mpifh -lmpi')
+ else:
+ targets.append('PROTOCOL=-D_MG_SERIAL')
+ targets.append('FC=f77')
+ targets.append('CC=cc')
+ targets.append('LIBS=-lm -lgfortran')
+
+ if '%gcc' in self.spec:
+ targets.append('COMPILER_SUITE=gnu')
+ elif '%cce' in self.spec:
+ targets.append('COMPILER_SUITE=cray')
+ elif '%intel' in self.spec:
+ targets.append('COMPILER_SUITE=intel')
+ elif '%pgi' in self.spec:
+ targets.append('COMPILER_SUITE=pgi')
+
+ return targets
+
+ def edit(self, spec, prefix):
+ inner_tar = tarfile.open(
+ 'miniGhost_ref_{0}.tar.gz'.format(self.version.up_to(3)))
+ inner_tar.extractall()
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('miniGhost_ref/miniGhost.x', prefix.bin)
+ install('miniGhost_ref/default-settings.h', prefix.bin)
+
+ if '+mpi' in spec:
+ install('miniGhost_ref/runtest.mpi', prefix.bin)
+ install('miniGhost_ref/runtest.mpi.ds', prefix.bin)
+ else:
+ install('miniGhost_ref/runtest.serial', prefix.bin)
+
+ install('README', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/minigmg/package.py b/var/spack/repos/builtin/packages/minigmg/package.py
new file mode 100644
index 0000000000..8cbd35faff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minigmg/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Minigmg(Package):
+ """miniGMG is a compact benchmark for understanding the performance
+ challenges associated with geometric multigrid solvers
+ found in applications built from AMR MG frameworks
+ like CHOMBO or BoxLib when running
+ on modern multi- and manycore-based supercomputers.
+ It includes both productive reference examples as well as
+ highly-optimized implementations for CPUs and GPUs.
+ It is sufficiently general that it has been used to evaluate
+ a broad range of research topics including PGAS programming models
+ and algorithmic tradeoffs inherit in multigrid. miniGMG was developed
+ under the CACHE Joint Math-CS Institute.
+
+ Note, miniGMG code has been supersceded by HPGMG. """
+
+ homepage = "http://crd.lbl.gov/departments/computer-science/PAR/research/previous-projects/miniGMG/"
+ url = "http://crd.lbl.gov/assets/Uploads/FTG/Projects/miniGMG/miniGMG.tar.gz"
+
+ version('master', '975a2a118403fc0024b5e04cef280e95')
+
+ depends_on('mpi')
+
+ phases = ['build', 'install']
+
+ def build(self, spec, prefix):
+ cc = Executable(spec['mpi'].mpicc)
+ cc('-O3', self.compiler.openmp_flag, 'miniGMG.c',
+ 'mg.c', 'box.c', 'solver.c', 'operators.ompif.c', 'timer.x86.c',
+ '-D__MPI', '-D__COLLABORATIVE_THREADING=6',
+ '-D__TEST_MG_CONVERGENCE', '-D__PRINT_NORM', '-D__USE_BICGSTAB',
+ '-o', 'run.miniGMG', '-lm')
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('run.miniGMG', prefix.bin)
+ mkdir(prefix.jobs)
+ files = glob.glob('job*')
+ for f in files:
+ install(f, prefix.jobs)
diff --git a/var/spack/repos/builtin/packages/minimap2/package.py b/var/spack/repos/builtin/packages/minimap2/package.py
new file mode 100644
index 0000000000..17abaaeafa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minimap2/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Minimap2(MakefilePackage):
+ """Minimap2 is a versatile sequence alignment program that aligns DNA or
+ mRNA sequences against a large reference database."""
+
+ homepage = "https://github.com/lh3/minimap2"
+ url = "https://github.com/lh3/minimap2/releases/download/v2.2/minimap2-2.2.tar.bz2"
+
+ version('2.2', '5b68e094f4fa3dfbd9b37d5b654b7715')
+
+ depends_on('py-mappy', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('minimap2', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/minimd/package.py b/var/spack/repos/builtin/packages/minimd/package.py
new file mode 100644
index 0000000000..a9a6d90aa2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minimd/package.py
@@ -0,0 +1,76 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import glob
+import tarfile
+
+from spack import *
+
+
+class Minimd(MakefilePackage):
+ """Proxy Application. A simple proxy for the force computations
+ in a typical molecular dynamics applications.
+ """
+
+ homepage = "http://mantevo.org"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/MiniMD/miniMD_1.2.tgz"
+
+ tags = ['proxy-app']
+
+ version('1.2', '893ef1ca5062e32b43a8d11bcfe1a056')
+
+ depends_on('mpi')
+
+ build_directory = 'miniMD_ref'
+
+ @property
+ def build_targets(self):
+ targets = [
+ 'LINK={0}'.format(self.spec['mpi'].mpicxx),
+ 'CC={0}'.format(self.spec['mpi'].mpicxx),
+ 'CCFLAGS={0} -DMPICH_IGNORE_CXX_SEEK -DNOCHUNK'.format(
+ self.compiler.openmp_flag),
+ 'EXE=miniMD_mpi',
+ 'openmpi'
+ ]
+
+ return targets
+
+ def edit(self, spec, prefix):
+ inner_tar = tarfile.open(name='miniMD_{0}_ref.tgz'.format(
+ self.version.up_to(2)))
+ inner_tar.extractall()
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('miniMD_ref/miniMD_mpi', prefix.bin)
+ install('miniMD_ref/in.lj.miniMD', prefix.bin)
+ install('miniMD_ref/README', prefix.doc)
+
+ for f in glob.glob('miniMD_ref/in.*'):
+ install(f, prefix.doc)
diff --git a/var/spack/repos/builtin/packages/minismac2d/package.py b/var/spack/repos/builtin/packages/minismac2d/package.py
new file mode 100644
index 0000000000..4e961fac94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minismac2d/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Minismac2d(MakefilePackage):
+ """Proxy Application. Solves the finite-differenced 2D incompressible
+ Navier-Stokes equations with Spalart-Allmaras one-equation
+ turbulence model on a structured body conforming grid.
+ """
+
+ homepage = "http://mantevo.org"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/MiniSMAC2D/miniSMAC2D-2.0.tgz"
+
+ tags = ['proxy-app']
+
+ version('2.0', '1bb1a52cea21bc9162bf7a71a6ddf37d')
+
+ depends_on('mpi')
+
+ parallel = False
+
+ @property
+ def build_targets(self):
+ targets = [
+ 'CPP=cpp',
+ 'FC={0}'.format(self.spec['mpi'].mpifc),
+ 'LD={0}'.format(self.spec['mpi'].mpifc),
+ 'MPIDIR=-I{0}/include'.format(self.spec['mpi'].prefix),
+ 'CPPFLAGS=-P -traditional -DD_PRECISION',
+ 'FFLAGS=-O3 -c -g -DD_PRECISION',
+ 'LDFLAGS=-O3',
+ '--file=Makefile_mpi_only'
+ ]
+
+ return targets
+
+ def edit(self, spec, prefix):
+ # Editing input file to point to installed data files
+ param_file = FileFilter('smac2d.in')
+ param_file.filter('bcmain_directory=.*', "bcmain_directory='.'")
+ param_file.filter('bcmain_filename=.*',
+ "bcmain_filename='bcmain.dat_original_119x31'")
+ param_file.filter('xygrid_directory=.*', "xygrid_directory='.'")
+ param_file.filter('xygrid_filename=.*',
+ "xygrid_filename='xy.dat_original_119x31'")
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('smac2d_mpi_only', prefix.bin)
+ install('bcmain.dat_original_119x31', prefix.bin)
+ install('xy.dat_original_119x31', prefix.bin)
+ install('smac2d.in', prefix.bin)
+ install('README.txt', prefix.doc)
diff --git a/var/spack/repos/builtin/packages/minitri/package.py b/var/spack/repos/builtin/packages/minitri/package.py
new file mode 100644
index 0000000000..6451a8b86a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minitri/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Minitri(MakefilePackage):
+ """A simple, triangle-based data analytics proxy application."""
+
+ homepage = "https://github.com/Mantevo/miniTri"
+ url = "https://github.com/Mantevo/miniTri/archive/v1.0.tar.gz"
+
+ version('1.0', '947e296ca408275232f47724267a85ce')
+
+ variant('mpi', default=True, description='Build with MPI support')
+
+ depends_on('mpi', when="+mpi")
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ @property
+ def build_targets(self):
+ targets = []
+ if '+mpi' in self.spec:
+ targets.append('CCC={0}'.format(self.spec['mpi'].mpicxx))
+ targets.append('--directory=miniTri/linearAlgebra/MPI')
+ else:
+ targets.append('CCC={0}'.format(self.compiler.cxx))
+ targets.append('--directory=miniTri/linearAlgebra/serial')
+
+ targets.append('--file=Makefile')
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual installation
+ mkdir(prefix.bin)
+ mkdir(prefix.doc)
+
+ if '+mpi' in spec:
+ install('miniTri/linearAlgebra/MPI/miniTri.exe', prefix.bin)
+ else:
+ install('miniTri/linearAlgebra/serial/miniTri.exe', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/minixyce/package.py b/var/spack/repos/builtin/packages/minixyce/package.py
new file mode 100644
index 0000000000..6273838f7e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/minixyce/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Minixyce(MakefilePackage):
+ """Proxy Application. A portable proxy of some of the key
+ capabilities in the electrical modeling Xyce.
+ """
+
+ homepage = "https://mantevo.org"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/MiniXyce/miniXyce_1.0.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.0', '6fc0e5a561af0b8ff581d9f704194133')
+
+ variant('mpi', default=True, description='Build with MPI Support')
+
+ depends_on('mpi', when='+mpi')
+
+ @property
+ def build_targets(self):
+ targets = []
+
+ if '+mpi' in self.spec:
+ targets.append('CXX={0}'.format(self.spec['mpi'].mpicxx))
+ targets.append('LINKER={0}'.format(self.spec['mpi'].mpicxx))
+ targets.append('USE_MPI=-DHAVE_MPI -DMPICH_IGNORE_CXX_SEEK')
+ else:
+ targets.append('CXX=c++')
+ targets.append('LINKER=c++')
+ targets.append('USE_MPI=')
+
+ # Remove Compiler Specific Optimization Flags
+ if '%gcc' not in self.spec:
+ targets.append('CPP_OPT_FLAGS=')
+
+ return targets
+
+ def build(self, spec, prefix):
+ with working_dir('miniXyce_ref'):
+ # Call Script Targets First to Generate Needed Files
+ make('generate_info')
+ make('common_files')
+ make(*self.build_targets)
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
+
+ install('miniXyce_ref/miniXyce.x', prefix.bin)
+ install('miniXyce_ref/default_params.txt', prefix.bin)
+ install('README', prefix.doc)
+
+ install_tree('miniXyce_ref/tests/', prefix.doc.tests)
diff --git a/var/spack/repos/builtin/packages/mirdeep/package.py b/var/spack/repos/builtin/packages/mirdeep/package.py
new file mode 100644
index 0000000000..28981eade5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mirdeep/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Mirdeep(Package):
+ """miRDeep2 is a completely overhauled tool which discovers microRNA genes
+ by analyzing sequenced RNAs."""
+
+ homepage = "https://www.mdc-berlin.de/8551903/en/"
+ url = "https://www.mdc-berlin.de/45995549/en/research/research_teams/systems_biology_of_gene_regulatory_elements/projects/miRDeep/mirdeep2_0_0_8.zip"
+
+ version('2.0.0.8', 'a707f7d7ad4a2975fb8b2e78c5bcf483')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('perl-pdf-api2', type=('build', 'run'))
+ depends_on('bowtie')
+ depends_on('viennarna')
+ depends_on('squid')
+ depends_on('randfold')
+
+ def url_for_version(self, version):
+ url = 'https://www.mdc-berlin.de/45995549/en/research/research_teams/systems_biology_of_gene_regulatory_elements/projects/miRDeep/mirdeep{0}.zip'
+ return url.format(version.underscored)
+
+ def patch(self):
+ with working_dir('src'):
+ files = glob.iglob("*.pl")
+ for file in files:
+ change = FileFilter(file)
+ change.filter('usr/bin/perl', 'usr/bin/env perl')
+ change.filter('perl -W', 'perl')
+ change.filter("../Rfam_for_miRDeep.fa",
+ "Rfam_for_miRDeep.fa")
+ change.filter("../install_successful",
+ "install_successful")
+
+ def install(self, spec, prefix):
+ install_tree('src', prefix.bin)
+ install('Rfam_for_miRDeep.fa', prefix.bin)
+ # miRDeep looks for the install_sucessful file to check if you used
+ # their automated install script which we'll just be kind of hacking
+ # around
+ touch(prefix.bin.install_successful)
diff --git a/var/spack/repos/builtin/packages/mitofates/package.py b/var/spack/repos/builtin/packages/mitofates/package.py
new file mode 100644
index 0000000000..0ba5535b3d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mitofates/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mitofates(Package):
+ """MitoFates predicts mitochondrial presequence, a cleavable localization
+ signal located in N-terminal, and its cleaved position."""
+
+ homepage = "http://mitf.cbrc.jp/MitoFates/cgi-bin/top.cgi"
+ url = "http://mitf.cbrc.jp/MitoFates/program/MitoFates_1.2.tar.gz"
+
+ version('1.2', 'aaac42a8e8c7318a4abde9df3a4b72d1')
+
+ depends_on('libsvm')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install('MitoFates.pl', prefix)
diff --git a/var/spack/repos/builtin/packages/mitos/package.py b/var/spack/repos/builtin/packages/mitos/package.py
index d577a1b285..1cc402590b 100644
--- a/var/spack/repos/builtin/packages/mitos/package.py
+++ b/var/spack/repos/builtin/packages/mitos/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,19 @@
from spack import *
-class Mitos(Package):
+class Mitos(CMakePackage):
"""Mitos is a library and a tool for collecting sampled memory
performance data to view with MemAxes"""
homepage = "https://github.com/llnl/Mitos"
- url = "https://github.com/llnl/Mitos"
+ url = "https://github.com/LLNL/Mitos/archive/v0.9.1.tar.gz"
version('0.9.2',
git='https://github.com/llnl/Mitos.git',
commit='8cb143a2e8c00353ff531a781a9ca0992b0aaa3d')
-
- version('0.9.1', git='https://github.com/llnl/Mitos.git', tag='v0.9.1')
+ version('0.9.1', 'c6cb57f3cae54f5157affd97ef7ef79e')
depends_on('dyninst@8.2.1:')
depends_on('hwloc')
depends_on('mpi')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
- make()
- make("install")
+ depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/mkfontdir/package.py b/var/spack/repos/builtin/packages/mkfontdir/package.py
index 15c85b24e4..f1f12b514e 100644
--- a/var/spack/repos/builtin/packages/mkfontdir/package.py
+++ b/var/spack/repos/builtin/packages/mkfontdir/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Mkfontdir(Package):
+class Mkfontdir(AutotoolsPackage):
"""mkfontdir creates the fonts.dir files needed by the legacy X server
core font system. The current implementation is a simple wrapper script
around the mkfontscale program, which must be built and installed first."""
@@ -39,9 +39,3 @@ class Mkfontdir(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/mkfontscale/package.py b/var/spack/repos/builtin/packages/mkfontscale/package.py
index 4c907831b6..9e8945f045 100644
--- a/var/spack/repos/builtin/packages/mkfontscale/package.py
+++ b/var/spack/repos/builtin/packages/mkfontscale/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Mkfontscale(Package):
+class Mkfontscale(AutotoolsPackage):
"""mkfontscale creates the fonts.scale and fonts.dir index files used by the
legacy X11 font system."""
@@ -40,9 +40,3 @@ class Mkfontscale(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/mlhka/package.py b/var/spack/repos/builtin/packages/mlhka/package.py
new file mode 100644
index 0000000000..85a23d5edd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mlhka/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mlhka(Package):
+ """A maximum likelihood ratio test of natural selection, using polymorphism
+ and divergence data."""
+
+ homepage = "https://wright.eeb.utoronto.ca"
+ url = "https://github.com/rossibarra/MLHKA"
+
+ version('2.1', git='https://github.com/rossibarra/MLHKA.git',
+ commit='e735ddd39073af58da21b00b27dea203736e5467')
+
+ def install(self, spec, prefix):
+ cxx = which('c++')
+ cxx('MLHKA_version{0}.cpp'.format(self.version), '-o', 'MLHKA')
+ mkdirp(prefix.bin)
+ install('MLHKA', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/moab/package.py b/var/spack/repos/builtin/packages/moab/package.py
index b783d7b81b..8e84f63b2c 100644
--- a/var/spack/repos/builtin/packages/moab/package.py
+++ b/var/spack/repos/builtin/packages/moab/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Moab(Package):
+class Moab(AutotoolsPackage):
"""MOAB is a component for representing and evaluating mesh
data. MOAB can store structured and unstructured mesh, consisting
of elements in the finite element 'zoo.' The functional interface
@@ -34,19 +34,43 @@ class Moab(Package):
optimized for efficiency in space and time, based on access to
mesh in chunks rather than through individual entities, while also
versatile enough to support individual entity access."""
+
homepage = "https://bitbucket.org/fathomteam/moab"
- url = "http://ftp.mcs.anl.gov/pub/fathom/moab-4.6.3.tar.gz"
+ url = "http://ftp.mcs.anl.gov/pub/fathom/moab-5.0.0.tar.gz"
+ version('5.0.0', '1840ca02366f4d3237d44af63e239e3b')
+ version('4.9.2', '540931a604c180bbd3c1bb3ee8c51dd0')
version('4.9.1', '19cc2189fa266181ad9109b18d0b2ab8')
version('4.9.0', '40695d0a159040683cfa05586ad4a7c2')
version('4.8.2', '1dddd10f162fce3cfffaedc48f6f467d')
+ variant('mpi', default=True, description='enable mpi support')
+ variant('hdf5', default=True,
+ description='Required to enable the hdf5 (default I/O) format')
+ variant('netcdf', default=False,
+ description='Required to enable the ExodusII reader/writer.')
+ variant('pnetcdf', default=False,
+ description='Enable pnetcdf (AKA parallel-netcdf) support')
variant('netcdf', default=False,
description='Required to enable the ExodusII reader/writer.')
- variant('shared', default=True,
+ variant('zoltan', default=False, description='Enable zoltan support')
+ variant('cgm', default=False, description='Enable common geometric module')
+ variant('metis', default=True, description='Enable metis link')
+ variant('parmetis', default=True, description='Enable parmetis link')
+ variant('irel', default=False, description='Enable irel interface')
+ variant('fbigeom', default=False, description='Enable fbigeom interface')
+ variant('coupler', default=True, description='Enable mbcoupler tool')
+
+ variant("debug", default=False, description='enable debug symbols')
+ variant('shared', default=False,
description='Enables the build of shared libraries')
variant('fortran', default=True, description='Enable Fortran support')
+ conflicts('+irel', when='~cgm')
+ conflicts('+pnetcdf', when='~mpi')
+ conflicts('+parmetis', when='~mpi')
+ conflicts('+coupler', when='~mpi')
+
# There are many possible variants for MOAB. Here are examples for
# two of them:
#
@@ -55,37 +79,120 @@ class Moab(Package):
# depends_on('cgns', when='+cgns')
# depends_on('vtk', when='+vtk')
- depends_on('mpi')
- depends_on('hdf5+mpi')
- depends_on('netcdf+mpi', when='+netcdf')
- depends_on('parmetis')
- depends_on('zoltan')
- depends_on('zoltan~fortran', when='~fortran')
+ depends_on('blas')
+ depends_on('mpi', when='+mpi')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hdf5+mpi', when='+hdf5+mpi')
+ depends_on('netcdf', when='+netcdf')
+ depends_on('parallel-netcdf', when='+pnetcdf')
+ depends_on('cgm', when='+cgm')
+ depends_on('metis', when='+metis')
+ depends_on('parmetis', when='+parmetis')
+ # FIXME it seems that zoltan needs to be built without fortran
+ depends_on('zoltan~fortran', when='+zoltan')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
options = [
- '--prefix=%s' % prefix,
'--enable-optimize',
- '--enable-tools',
- '--with-pic',
- '--with-mpi=%s' % spec['mpi'].prefix,
- '--with-hdf5=%s' % spec['hdf5'].prefix,
- '--with-parmetis=%s' % spec['parmetis'].prefix,
- '--with-zoltan=%s' % spec['zoltan'].prefix,
'--disable-vtkMOABReader',
- '--without-vtk',
- 'CXX=%s' % spec['mpi'].mpicxx,
- 'CC=%s' % spec['mpi'].mpicc,
- 'FC=%s' % spec['mpi'].mpifc]
+ '--disable-mbtagprop',
+ '--disable-mbmem',
+ '--disable-spheredecomp',
+ '--disable-mbsurfplot',
+ '--disable-gsets',
+ '--disable-mcnpmit',
+ '--disable-refiner',
+ '--disable-h5mtools',
+ '--disable-mbcslam',
+ '--with-pic',
+ '--without-vtk'
+ ]
+ if '+mpi' in spec:
+ options.extend([
+ '--with-mpi=%s' % spec['mpi'].prefix,
+ 'CXX=%s' % spec['mpi'].mpicxx,
+ 'CC=%s' % spec['mpi'].mpicc,
+ 'FC=%s' % spec['mpi'].mpifc
+ ])
+ if '+parmetis' in spec:
+ options.append('--with-parmetis=%s' % spec['parmetis'].prefix)
+ else:
+ options.append('--without-parmetis')
+# FIXME: --without-mpi does not configure right
+# else:
+# options.append('--without-mpi')
+
+ if '+hdf5' in spec:
+ options.append('--with-hdf5=%s' % spec['hdf5'].prefix)
+ else:
+ options.append('--without-hdf5')
- if '~fortran' in spec:
- options.append('--disable-fortran')
- if '+shared' in spec:
- options.append('--enable-shared')
if '+netcdf' in spec:
options.append('--with-netcdf=%s' % spec['netcdf'].prefix)
+ else:
+ options.append('--without-netcdf')
+
+ if '+pnetcdf' in spec:
+ options.append('--with-pnetcdf=%s'
+ % spec['parallel-netcdf'].prefix)
+ else:
+ options.append('--without-pnetcdf')
- configure(*options)
- make()
- make('install')
+ if '+cgm' in spec:
+ options.append('--with-cgm=%s' % spec['cgm'].prefix)
+ if '+irel' in spec:
+ options.append('--enable-irel')
+ else:
+ options.append('--disable-irel')
+ else:
+ options.append('--without-cgm')
+ if '+fbigeom' in spec:
+ options.append('--enable-fbigeom')
+ else:
+ options.append('--disable-fbigeom')
+
+ if '+coupler' in spec:
+ options.append('--enable-mbcoupler')
+ else:
+ options.append('--disable-mbcoupler')
+
+ if '+metis' in spec:
+ options.append('--with-metis=%s' % spec['metis'].prefix)
+ else:
+ options.append('--without-metis')
+
+ if '+parmetis' in spec:
+ options.append('--with-parmetis=%s' % spec['parmetis'].prefix)
+ else:
+ options.append('--without-parmetis')
+
+ if '+zoltan' in spec:
+ options.append('--with-zoltan=%s' % spec['zoltan'].prefix)
+ else:
+ options.append('--without-zoltan')
+
+ if '+debug' in spec:
+ options.append('--enable-debug')
+ else:
+ options.append('--disable-debug')
+
+ # FIXME it seems that with cgm and shared, we have a link
+ # issue in tools/geometry
+ if '+shared' in spec:
+ options.append('--enable-shared')
+ else:
+ options.append('--disable-shared')
+
+ if '~fortran' in spec:
+ options.append('--disable-fortran')
+ else:
+ options.append('--enable-fortran')
+
+ return options
+
+ # FIXME Run the install phase with -j 1. There seems to be a problem with
+ # parallel installations of examples
+ def install(self, spec, prefix):
+ make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/molcas/install_driver.patch b/var/spack/repos/builtin/packages/molcas/install_driver.patch
new file mode 100644
index 0000000000..717e776aee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/molcas/install_driver.patch
@@ -0,0 +1,114 @@
+--- molcas82/sbin/install_driver.sh 2017-02-14 04:35:06.000000000 -0600
++++ molcas82/sbin/install_driver.sh 2017-08-04 15:08:17.872417692 -0500
+@@ -1,110 +1,3 @@
+ #!/bin/sh
+
+-echo `pwd` > $HOME/.Molcas/molcas 2> /dev/null
+-
+-# current driver version
+-if [ -z "$1" ] ; then
+- driver_file="sbin/molcas.driver"
+-else
+- driver_file="$1"
+-fi
+-current_version=`sed -e 's/.*Molcas driver shell script version // ; tx ; d ; :x s/\.//' $driver_file`
+-
+-MOLCASDRIVER=""
+-
+-# check location of driver script in your PATH
+-installed=0
+-
+-orig_IFS=$IFS
+-IFS=':'
+-for x in $PATH; do
+- if [ -f "$x/molcas" ]; then
+- l=`sed -e 's/.*Molcas driver shell script version // ; tx ; d ; :x s/\.//' "$x/molcas"`
+- if [ "$l" -lt "$current_version" ]; then
+- echo "*** Warning! An old version of the molcas driver script was found at: $x"
+- rm -f "$x/molcas" > /dev/null 2>&1
+- if [ "$?" != 0 ]; then
+- echo "*** $x/molcas is read only!"
+- echo "*** You have to remove this file manually"
+- echo ""
+- else
+- echo " and removed..."
+- MOLCASDRIVER="$x"
+- fi
+- else
+- echo "Molcas driver has been found at: $x"
+- MOLCASDRIVER="$x"
+- installed=1
+- fi
+- break
+- fi
+-done
+-
+-# latest version already installed, exit
+-if [ $installed = 1 ] ; then
+- exit 0
+-fi
+-
+-# try to find proper location for molcas driver
+-if [ -z "$MOLCASDRIVER" ]; then
+- # no existing version found, use default PATH
+- if [ -z "$PATH" ]; then
+- E_PATH="$HOME/bin"
+- else
+- E_PATH="$HOME/bin:$PATH"
+- fi
+-else
+- # a previous version was found, create it there
+- E_PATH="$MOLCASDRIVER"
+-fi
+-
+-# find first writable directory
+-dir_found=0
+-for x in $E_PATH ; do
+- if [ "$x" = "." ] ; then continue ; fi
+- # detect if directory is writable (-w would not work, since it does not handle mount permissions)
+- cp "$driver_file" "$x/this_is_not_molcas" > /dev/null 2>&1
+- if [ "$?" = 0 ] ; then
+- rm -f "$x/this_is_not_molcas" > /dev/null 2>&1
+- MOLCASDRIVER="$x"
+- dir_found=1
+- break
+- fi
+-done
+-
+-# create a default molcas driver
+-if [ $dir_found = 0 ] ; then
+- echo "*** Warning! Could not find a proper directory to install the molcas driver"
+- echo ""
+- echo "*** Check that there is a directory in your PATH with write access"
+- echo "*** (for example $HOME/bin) and restart the installation"
+- echo ""
+- echo "*** You have to put the molcas driver in any directory in your PATH"
+-else
+- echo "molcas driver will be installed in $MOLCASDRIVER"
+- echo "Is this OK?"
+- while true; do
+- read answer
+- case "${answer}_" in
+- [Yy]*|_ )
+- cp "$driver_file" "$MOLCASDRIVER/molcas"
+- chmod +x "$MOLCASDRIVER/molcas"
+- # check again the driver was installed
+- l=`sed -e 's/.*Molcas driver shell script version // ; tx ; d ; :x s/\.//' "$x/molcas"`
+- if [ "$l" -eq "$current_version" -a -x "$MOLCASDRIVER/molcas" ] ; then
+- echo "Driver installation successful"
+- else
+- echo "*** Driver installation failed!"
+- echo ""
+- echo "*** You have to put the molcas driver in any directory in your PATH"
+- fi
+- break ;;
+- [Nn]* )
+- echo "*** Driver installation canceled!"
+- echo ""
+- echo "*** You have to put the molcas driver in any directory in your PATH"
+- break ;;
+- * ) echo "Please answer yes or no"
+- esac
+- done
+-fi
++echo `Driver Will be in the sbin folder`
diff --git a/var/spack/repos/builtin/packages/molcas/package.py b/var/spack/repos/builtin/packages/molcas/package.py
new file mode 100644
index 0000000000..7c4958cc94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/molcas/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Molcas(CMakePackage):
+ """Molcas is an ab initio quantum chemistry software package
+ developed by scientists to be used by scientists.
+ Please set the path to licence file with the following command
+ export MOLCAS_LICENSE=/path/to/molcas/license/"""
+
+ homepage = "http://www.molcas.org/"
+ url = "file://{0}/molcas8.2.tar.gz".format(os.getcwd())
+
+ version('8.2', '25b5fb8e1338b458a3eaea0b3d3b5e58')
+
+ # Licensing
+ license_required = True
+ license_vars = ['MOLCAS_LICENSE']
+
+ depends_on('openmpi')
+ depends_on('openblas')
+ depends_on('hdf5')
+
+ patch('install_driver.patch')
diff --git a/var/spack/repos/builtin/packages/mono/package.py b/var/spack/repos/builtin/packages/mono/package.py
new file mode 100644
index 0000000000..a2f841ceb1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mono/package.py
@@ -0,0 +1,66 @@
+###############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mono(AutotoolsPackage):
+ """Mono is a software platform designed to allow developers to easily
+ create cross platform applications. It is an open source
+ implementation of Microsoft's .NET Framework based on the ECMA
+ standards for C# and the Common Language Runtime.
+ """
+
+ homepage = "http://www.mono-project.com/"
+ url = "https://download.mono-project.com/sources/mono/mono-5.0.1.1.tar.bz2"
+
+ # /usr/share/.mono/keypairs needs to exist or be able to be
+ # created, e.g. https://github.com/gentoo/dotnet/issues/6
+ variant('patch-folder-path', default=False,
+ description='Point SpecialFolder.CommonApplicationData folder '
+ 'into Spack installation instead of /usr/share')
+
+ # Spack's openssl interacts badly with mono's vendored
+ # "boringssl", don't drag it in w/ cmake
+ depends_on('cmake~openssl', type=('build'))
+ depends_on('libiconv')
+ depends_on('perl', type=('build'))
+
+ version('5.4.0.167', '103c7a737632046a9e9a0b039d752ee1')
+ version('5.0.1.1', '17692c7a797f95ee6f9a0987fda3d486')
+ version('4.8.0.524', 'baeed5b8139a85ad7e291d402a4bcccb')
+
+ def patch(self):
+ if '+patch-folder-path' in self.spec:
+ before = 'return "/usr/share";'
+ after = 'return "{0}";'.format(self.prefix.share)
+ f = 'mcs/class/corlib/System/Environment.cs'
+ kwargs = {'ignore_absent': False, 'backup': True, 'string': True}
+ filter_file(before, after, f, **kwargs)
+
+ def configure_args(self):
+ args = []
+ li = self.spec['libiconv'].prefix
+ args.append('--with-libiconv-prefix={p}'.format(p=li))
+ return args
diff --git a/var/spack/repos/builtin/packages/mosh/package.py b/var/spack/repos/builtin/packages/mosh/package.py
new file mode 100644
index 0000000000..de15e46bde
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mosh/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mosh(AutotoolsPackage):
+ """Remote terminal application that allows roaming, supports intermittent
+ connectivity, and provides intelligent local echo and line editing of user
+ keystrokes. Mosh is a replacement for SSH. It's more robust and responsive,
+ especially over Wi-Fi, cellular, and long-distance links.
+ """
+
+ homepage = "https://mosh.org/"
+ url = "https://mosh.org/mosh-1.2.6.tar.gz"
+
+ version('1.3.2', '5122f4d2b973ab7c38dcdac8c35cb61e')
+ version('1.3.0', 'd961276995936953bf2d5a794068b076')
+ version('1.2.6', 'bb4e24795bb135a754558176a981ee9e')
+
+ depends_on('protobuf')
+ depends_on('ncurses')
+ depends_on('zlib')
+ depends_on('openssl')
+
+ depends_on('perl', type='run')
+
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/mothur/package.py b/var/spack/repos/builtin/packages/mothur/package.py
new file mode 100644
index 0000000000..e19ee30f98
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mothur/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mothur(MakefilePackage):
+ """This project seeks to develop a single piece of open-source, expandable
+ software to fill the bioinformatics needs of the microbial ecology
+ community."""
+
+ homepage = "https://github.com/mothur/mothur"
+ url = "https://github.com/mothur/mothur/archive/v1.39.5.tar.gz"
+
+ version('1.39.5', '1f826ea4420e6822fc0db002c5940b92')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('boost')
+ depends_on('readline')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ makefile.filter('BOOST_LIBRARY_DIR=\"\\\"Enter_your_boost_library_path'
+ '_here\\\"\"', 'BOOST_LIBRARY_DIR=%s' %
+ self.spec['boost'].prefix.lib)
+ makefile.filter('BOOST_INCLUDE_DIR=\"\\\"Enter_your_boost_include_path'
+ '_here\\\"\"', 'BOOST_INCLUDE_DIR=%s' %
+ self.spec['boost'].prefix.include)
+ makefile.filter('MOTHUR_FILES=\"\\\"Enter_your_default_path_'
+ 'here\\\"\"', 'MOTHUR_FILES=%s' % prefix)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('mothur', prefix.bin)
+ install('uchime', prefix.bin)
+ install_tree('source', prefix.include)
diff --git a/var/spack/repos/builtin/packages/motioncor2/package.py b/var/spack/repos/builtin/packages/motioncor2/package.py
new file mode 100644
index 0000000000..304e369d99
--- /dev/null
+++ b/var/spack/repos/builtin/packages/motioncor2/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from glob import glob
+
+
+class Motioncor2(Package):
+ """MotionCor2 is a multi-GPU program that corrects beam-induced sample
+ motion recorded on dose fractionated movie stacks. It implements a robust
+ iterative alignment algorithm that delivers precise measurement and
+ correction of both global and non-uniform local motions at
+ single pixel level, suitable for both single-particle and
+ tomographic images. MotionCor2 is sufficiently fast
+ to keep up with automated data collection."""
+
+ homepage = "http://msg.ucsf.edu/em/software"
+ url = "http://msg.ucsf.edu/MotionCor2/MotionCor2-1.0.2.tar.gz"
+
+ version('1.0.2', 'f2f4c5b09170ab8480ca657f14cdba2b')
+ version('1.0.1', '73d94a80abdef9bf37bbc80fbbe76622')
+ version('1.0.0', '490f4df8daa9f5ddb9eec3962ba3ddf5')
+
+ depends_on('cuda@8.0:8.99', type='run')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ for files in glob("MotionCor2_*"):
+ install(files, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/mozjs/package.py b/var/spack/repos/builtin/packages/mozjs/package.py
new file mode 100644
index 0000000000..b0e98772af
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mozjs/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mozjs(AutotoolsPackage):
+ """SpiderMonkey is Mozilla's JavaScript engine written in C/C++.
+ It is used in various Mozilla products, including Firefox, and is
+ available under the MPL2."""
+
+ homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey"
+
+ version('24.2.0', '5db79c10e049a2dc117a6e6a3bc78a8e',
+ url="http://ftp.mozilla.org/pub/js/mozjs-24.2.0.tar.bz2")
+ version('17.0.0', '20b6f8f1140ef6e47daa3b16965c9202',
+ url="http://ftp.mozilla.org/pub/js/mozjs17.0.0.tar.gz")
+ version('1.8.5', 'a4574365938222adca0a6bd33329cb32',
+ url="http://ftp.mozilla.org/pub/js/js185-1.0.0.tar.gz")
+
+ depends_on('perl@5.6:', type='build')
+ depends_on('pkg-config@0.9.0:', type='build')
+ depends_on('python@2.7.3:2.8', type='build')
+ depends_on('nspr', when='@:27')
+ depends_on('libffi@3.0.9:')
+ depends_on('readline')
+ depends_on('zlib@1.2.3')
+
+ configure_directory = 'js/src'
+ build_directory = 'js/src/spack-build'
+
+ patch('perl-bug.patch')
+
+ def configure_args(self):
+ spec = self.spec
+ return [
+ '--enable-readline', # enables readline support in JS shell
+ '--enable-threadsafe', # enables support for multiple threads
+ '--enable-system-ffi',
+ '--with-system-zlib={0}'.format(spec['zlib'].prefix),
+ '--with-system-nspr',
+ '--with-nspr-prefix={0}'.format(spec['nspr'].prefix),
+ ]
diff --git a/var/spack/repos/builtin/packages/mozjs/perl-bug.patch b/var/spack/repos/builtin/packages/mozjs/perl-bug.patch
new file mode 100644
index 0000000000..a05384c7f4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mozjs/perl-bug.patch
@@ -0,0 +1,21 @@
+Perl has deprecated the feature:
+
+ defined(@array)
+
+In Perl 5.22+, this deprecation warning has been converted
+to a fatal error. This results in the following error message:
+
+ Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at milestone.pl line 58.
+
+This patch takes the suggestion of omitting defined().
+--- a/js/src/config/milestone.pl 2017-02-14 15:00:42.234275243 -0600
++++ b/js/src/config/milestone.pl 2017-02-14 15:01:19.453313360 -0600
+@@ -55,7 +55,7 @@
+ #
+ my $milestone = Moz::Milestone::getOfficialMilestone($MILESTONE_FILE);
+
+-if (defined(@TEMPLATE_FILE)) {
++if (@TEMPLATE_FILE) {
+ my $TFILE;
+
+ foreach $TFILE (@TEMPLATE_FILE) {
diff --git a/var/spack/repos/builtin/packages/mpc/package.py b/var/spack/repos/builtin/packages/mpc/package.py
index 2fe3900981..749794015a 100644
--- a/var/spack/repos/builtin/packages/mpc/package.py
+++ b/var/spack/repos/builtin/packages/mpc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,28 @@
from spack import *
-class Mpc(Package):
+class Mpc(AutotoolsPackage):
"""Gnu Mpc is a C library for the arithmetic of complex numbers
with arbitrarily high precision and correct rounding of the
result."""
homepage = "http://www.multiprecision.org"
- url = "ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz"
+ url = "https://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz"
version('1.0.3', 'd6a1d5f8ddea3abd2cc3e98f58352d26')
version('1.0.2', '68fadff3358fb3e7976c7a398a0af4c3')
- depends_on('gmp') # mpir is a drop-in replacement for this
- depends_on('mpfr') # Could also be built against mpir
+ depends_on('gmp@4.3.2:') # mpir is a drop-in replacement for this
+ depends_on('mpfr@2.4.2:') # Could also be built against mpir
def url_for_version(self, version):
if version < Version("1.0.1"):
- return "http://www.multiprecision.org/mpc/download/mpc-%s.tar.gz" % version # NOQA
+ return "http://www.multiprecision.org/mpc/download/mpc-%s.tar.gz" % version
else:
- return "ftp://ftp.gnu.org/gnu/mpc/mpc-%s.tar.gz" % version
+ return "https://ftp.gnu.org/gnu/mpc/mpc-%s.tar.gz" % version
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def configure_args(self):
+ spec = self.spec
+ return [
+ '--with-mpfr={0}'.format(spec['mpfr'].prefix),
+ '--with-gmp={0}'.format(spec['gmp'].prefix)
+ ]
diff --git a/var/spack/repos/builtin/packages/mpe2/package.py b/var/spack/repos/builtin/packages/mpe2/package.py
index a129d59949..d5041d7a32 100644
--- a/var/spack/repos/builtin/packages/mpe2/package.py
+++ b/var/spack/repos/builtin/packages/mpe2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class Mpe2(Package):
"""Message Passing Extensions (MPE): Parallel, shared X window graphics"""
homepage = "http://www.mcs.anl.gov/research/projects/perfvis/software/MPE/"
- url = "ftp://ftp.mcs.anl.gov/pub/mpi/mpe/mpe2-1.3.0.tar.gz"
+ url = "http://ftp.mcs.anl.gov/pub/mpi/mpe/mpe2-1.3.0.tar.gz"
version('1.3.0', '67bf0c7b2e573df3ba0d2059a96c2f7b')
diff --git a/var/spack/repos/builtin/packages/mpest/package.py b/var/spack/repos/builtin/packages/mpest/package.py
new file mode 100644
index 0000000000..c5cba773dd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpest/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mpest(MakefilePackage):
+ """MP-EST estimates species trees from a set of gene trees by maximizing
+ a pseudo-likelihood function."""
+
+ homepage = "http://faculty.franklin.uga.edu/lliu/content/mp-est"
+ url = "https://faculty.franklin.uga.edu/lliu/sites/faculty.franklin.uga.edu.lliu/files/mpest_1.5.zip"
+
+ version('1.5', 'f176d5301aa26567918664e5e30027d1')
+
+ @property
+ def build_directory(self):
+ return join_path('mpest_{0}'.format(self.version), 'src')
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ mkdirp(prefix.bin)
+ install('mpest', prefix.bin)
+
+ def setup_environment(self, spack_env, run_env):
+ if self.spec.satisfies('platform=darwin'):
+ spack_env.set('ARCHITECTURE', 'mac')
+ else:
+ spack_env.set('ARCHITECTURE', 'unix')
diff --git a/var/spack/repos/builtin/packages/mpfr/package.py b/var/spack/repos/builtin/packages/mpfr/package.py
index 4612d03849..01006dd72a 100644
--- a/var/spack/repos/builtin/packages/mpfr/package.py
+++ b/var/spack/repos/builtin/packages/mpfr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,26 @@
from spack import *
-class Mpfr(Package):
+class Mpfr(AutotoolsPackage):
"""The MPFR library is a C library for multiple-precision
floating-point computations with correct rounding."""
+
homepage = "http://www.mpfr.org"
- url = "https://gforge.inria.fr/frs/download.php/latestfile/159/mpfr-3.1.2.tar.bz2"
+ url = "https://ftp.gnu.org/gnu/mpfr/mpfr-3.1.5.tar.bz2"
+ version('3.1.5', 'b1d23a55588e3b2a13e3be66bc69fd8d')
version('3.1.4', 'b8a2f6b0e68bef46e53da2ac439e1cf4')
version('3.1.3', '5fdfa3cfa5c86514ee4a241a1affa138')
version('3.1.2', 'ee2c3ac63bf0c2359bf08fc3ee094c19')
- depends_on('gmp') # mpir is a drop-in replacement for this
+ # mpir is a drop-in replacement for gmp
+ depends_on('gmp@4.1.0:') # 4.2.3 or higher is recommended
+
+ patch('vasprintf.patch', when='@3.1.5')
+ patch('strtofr.patch', when='@3.1.5')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
+ def configure_args(self):
+ args = [
+ '--with-gmp=' + self.spec['gmp'].prefix,
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/mpfr/strtofr.patch b/var/spack/repos/builtin/packages/mpfr/strtofr.patch
new file mode 100644
index 0000000000..01878bf1b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpfr/strtofr.patch
@@ -0,0 +1,92 @@
+diff -Naurd mpfr-3.1.5-a/PATCHES mpfr-3.1.5-b/PATCHES
+--- mpfr-3.1.5-a/PATCHES 2016-12-19 22:11:17.022676737 +0000
++++ mpfr-3.1.5-b/PATCHES 2016-12-19 22:11:17.094676820 +0000
+@@ -0,0 +1 @@
++strtofr
+diff -Naurd mpfr-3.1.5-a/VERSION mpfr-3.1.5-b/VERSION
+--- mpfr-3.1.5-a/VERSION 2016-12-15 08:35:46.544430346 +0000
++++ mpfr-3.1.5-b/VERSION 2016-12-19 22:11:17.094676820 +0000
+@@ -1 +1 @@
+-3.1.5-p1
++3.1.5-p2
+diff -Naurd mpfr-3.1.5-a/src/mpfr.h mpfr-3.1.5-b/src/mpfr.h
+--- mpfr-3.1.5-a/src/mpfr.h 2016-12-15 08:35:46.540430340 +0000
++++ mpfr-3.1.5-b/src/mpfr.h 2016-12-19 22:11:17.090676815 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 1
+ #define MPFR_VERSION_PATCHLEVEL 5
+-#define MPFR_VERSION_STRING "3.1.5-p1"
++#define MPFR_VERSION_STRING "3.1.5-p2"
+
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.1.5-a/src/strtofr.c mpfr-3.1.5-b/src/strtofr.c
+--- mpfr-3.1.5-a/src/strtofr.c 2016-09-27 07:58:15.000000000 +0000
++++ mpfr-3.1.5-b/src/strtofr.c 2016-12-19 22:11:17.066676788 +0000
+@@ -743,11 +743,14 @@
+ of the pstr_size most significant digits of pstr->mant, with
+ equality in case exact is non-zero. */
+
+- /* test if rounding is possible, and if so exit the loop */
+- if (exact || mpfr_can_round_raw (result, ysize,
+- (pstr->negative) ? -1 : 1,
+- ysize_bits - err - 1,
+- MPFR_RNDN, rnd, MPFR_PREC(x)))
++ /* test if rounding is possible, and if so exit the loop.
++ Note: we also need to be able to determine the correct ternary value,
++ thus we use the MPFR_PREC(x) + (rnd == MPFR_RNDN) trick.
++ For example if result = xxx...xxx111...111 and rnd = RNDN,
++ then we know the correct rounding is xxx...xx(x+1), but we cannot know
++ the correct ternary value. */
++ if (exact || mpfr_round_p (result, ysize, ysize_bits - err - 1,
++ MPFR_PREC(x) + (rnd == MPFR_RNDN)))
+ break;
+
+ next_loop:
+diff -Naurd mpfr-3.1.5-a/src/version.c mpfr-3.1.5-b/src/version.c
+--- mpfr-3.1.5-a/src/version.c 2016-12-15 08:35:46.544430346 +0000
++++ mpfr-3.1.5-b/src/version.c 2016-12-19 22:11:17.094676820 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+- return "3.1.5-p1";
++ return "3.1.5-p2";
+ }
+diff -Naurd mpfr-3.1.5-a/tests/tstrtofr.c mpfr-3.1.5-b/tests/tstrtofr.c
+--- mpfr-3.1.5-a/tests/tstrtofr.c 2016-09-27 07:58:14.000000000 +0000
++++ mpfr-3.1.5-b/tests/tstrtofr.c 2016-12-19 22:11:17.066676788 +0000
+@@ -1191,6 +1191,24 @@
+ mpfr_clears (e, x1, x2, (mpfr_ptr) 0);
+ }
+
++/* Note: the number is 5^47/2^9. */
++static void
++bug20161217 (void)
++{
++ mpfr_t fp, z;
++ static const char * num = "0.1387778780781445675529539585113525390625e31";
++ int inex;
++
++ mpfr_init2 (fp, 110);
++ mpfr_init2 (z, 110);
++ inex = mpfr_strtofr (fp, num, NULL, 10, MPFR_RNDN);
++ MPFR_ASSERTN(inex == 0);
++ mpfr_set_str_binary (z, "10001100001000010011110110011101101001010000001011011110010001010100010100100110111101000010001011001100001101E-9");
++ MPFR_ASSERTN(mpfr_equal_p (fp, z));
++ mpfr_clear (fp);
++ mpfr_clear (z);
++}
++
+ int
+ main (int argc, char *argv[])
+ {
+@@ -1205,6 +1223,7 @@
+ test20100310 ();
+ bug20120814 ();
+ bug20120829 ();
++ bug20161217 ();
+
+ tests_end_mpfr ();
+ return 0;
diff --git a/var/spack/repos/builtin/packages/mpfr/vasprintf.patch b/var/spack/repos/builtin/packages/mpfr/vasprintf.patch
new file mode 100644
index 0000000000..e1576d5976
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpfr/vasprintf.patch
@@ -0,0 +1,82 @@
+diff -Naurd mpfr-3.1.5-a/PATCHES mpfr-3.1.5-b/PATCHES
+--- mpfr-3.1.5-a/PATCHES 2016-12-15 08:35:46.476430238 +0000
++++ mpfr-3.1.5-b/PATCHES 2016-12-15 08:35:46.544430346 +0000
+@@ -0,0 +1 @@
++vasprintf
+diff -Naurd mpfr-3.1.5-a/VERSION mpfr-3.1.5-b/VERSION
+--- mpfr-3.1.5-a/VERSION 2016-09-27 07:58:14.000000000 +0000
++++ mpfr-3.1.5-b/VERSION 2016-12-15 08:35:46.544430346 +0000
+@@ -1 +1 @@
+-3.1.5
++3.1.5-p1
+diff -Naurd mpfr-3.1.5-a/src/mpfr.h mpfr-3.1.5-b/src/mpfr.h
+--- mpfr-3.1.5-a/src/mpfr.h 2016-09-27 07:58:15.000000000 +0000
++++ mpfr-3.1.5-b/src/mpfr.h 2016-12-15 08:35:46.540430340 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 1
+ #define MPFR_VERSION_PATCHLEVEL 5
+-#define MPFR_VERSION_STRING "3.1.5"
++#define MPFR_VERSION_STRING "3.1.5-p1"
+
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.1.5-a/src/vasprintf.c mpfr-3.1.5-b/src/vasprintf.c
+--- mpfr-3.1.5-a/src/vasprintf.c 2016-09-27 07:58:15.000000000 +0000
++++ mpfr-3.1.5-b/src/vasprintf.c 2016-12-15 08:35:46.520430308 +0000
+@@ -1593,7 +1593,7 @@
+ }
+ else if (spec.spec == 'f' || spec.spec == 'F')
+ {
+- if (spec.prec == -1)
++ if (spec.prec < 0)
+ spec.prec = 6;
+ if (regular_fg (np, p, spec, NULL) == -1)
+ goto error;
+diff -Naurd mpfr-3.1.5-a/src/version.c mpfr-3.1.5-b/src/version.c
+--- mpfr-3.1.5-a/src/version.c 2016-09-27 07:58:15.000000000 +0000
++++ mpfr-3.1.5-b/src/version.c 2016-12-15 08:35:46.544430346 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+- return "3.1.5";
++ return "3.1.5-p1";
+ }
+diff -Naurd mpfr-3.1.5-a/tests/tsprintf.c mpfr-3.1.5-b/tests/tsprintf.c
+--- mpfr-3.1.5-a/tests/tsprintf.c 2016-09-27 07:58:14.000000000 +0000
++++ mpfr-3.1.5-b/tests/tsprintf.c 2016-12-15 08:35:46.520430308 +0000
+@@ -1251,6 +1251,25 @@
+ check_emin_aux (MPFR_EMIN_MIN);
+ }
+
++static void
++test20161214 (void)
++{
++ mpfr_t x;
++ char buf[32];
++ const char s[] = "0x0.fffffffffffff8p+1024";
++ int r;
++
++ mpfr_init2 (x, 64);
++ mpfr_set_str (x, s, 16, MPFR_RNDN);
++ r = mpfr_snprintf (buf, 32, "%.*RDf", -2, x);
++ MPFR_ASSERTN(r == 316);
++ r = mpfr_snprintf (buf, 32, "%.*RDf", INT_MIN + 1, x);
++ MPFR_ASSERTN(r == 316);
++ r = mpfr_snprintf (buf, 32, "%.*RDf", INT_MIN, x);
++ MPFR_ASSERTN(r == 316);
++ mpfr_clear (x);
++}
++
+ int
+ main (int argc, char **argv)
+ {
+@@ -1271,6 +1290,7 @@
+ mixed ();
+ check_emax ();
+ check_emin ();
++ test20161214 ();
+
+ #if defined(HAVE_LOCALE_H) && defined(HAVE_SETLOCALE)
+ #if MPFR_LCONV_DPTS
diff --git a/var/spack/repos/builtin/packages/mpibash/package.py b/var/spack/repos/builtin/packages/mpibash/package.py
index f3feaaaa42..f5476328b7 100644
--- a/var/spack/repos/builtin/packages/mpibash/package.py
+++ b/var/spack/repos/builtin/packages/mpibash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/mpiblast/mpiBLAST-1.6.0-patch-110806 b/var/spack/repos/builtin/packages/mpiblast/mpiBLAST-1.6.0-patch-110806
new file mode 100644
index 0000000000..05de8ed074
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpiblast/mpiBLAST-1.6.0-patch-110806
@@ -0,0 +1,182 @@
+diff -rwu mpiblast-1.6.0/ncbi/corelib/ncbienv.c mpiblast-1.6.0-patched/ncbi/corelib/ncbienv.c
+--- mpiblast-1.6.0/ncbi/corelib/ncbienv.c 2009-11-22 01:17:48.000000000 -0500
++++ mpiblast-1.6.0-patched/ncbi/corelib/ncbienv.c 2011-08-06 17:10:08.000000000 -0400
+@@ -1932,7 +1932,7 @@
+ static char **targv = NULL;
+
+
+-#if defined(WIN_MAC)
++#if defined(WIN_MAC) || defined(OS_UNIX_DARWIN)
+ static FSSpec apFileSpec;
+ static Str255 apName;
+ static Handle apParam;
+@@ -2047,7 +2047,7 @@
+ }
+ }
+ #endif /* defined(OS_UNIX_DARWIN) */
+-#endif /* defined(WIN_MAC) */
++#endif /* defined(WIN_MAC) || defined(OS_UNIX_DARWIN) */
+
+
+ #if defined(OS_MSWIN) || defined(OS_VMS)
+diff -rwu mpiblast-1.6.0/ncbi/make/makedis.csh mpiblast-1.6.0-patched/ncbi/make/makedis.csh
+--- mpiblast-1.6.0/ncbi/make/makedis.csh 2010-06-28 21:04:36.000000000 -0400
++++ mpiblast-1.6.0-patched/ncbi/make/makedis.csh 2011-08-06 17:06:42.000000000 -0400
+@@ -1,6 +1,6 @@
+ #!/bin/csh -f
+ #
+-# $Id: makedis.csh 148594 2008-12-30 15:11:36Z ucko $
++# $Id: makedis.csh 179886 2010-01-04 17:28:02Z ucko $
+ #
+ ## PUBLIC DOMAIN NOTICE
+ # National Center for Biotechnology Information
+@@ -54,7 +54,7 @@
+ endif
+
+ ls -l $tar_file
+- tar xvf $tar_file
++ tar xf $tar_file
+ else
+ # make sure that ncbi/build directory exists
+ if ( ! -d "ncbi/build" ) then
+@@ -74,6 +74,7 @@
+ set HAVE_MAC=0
+ #we will try to build OpenGL version of vibrant
+ set HAVE_OGL=1
++set MPBL_HAVE_MAC=0
+
+ switch ($os)
+ case SunOS:
+@@ -164,7 +165,7 @@
+ gcc -v
+ switch (`uname -m`)
+ case "ia64":
+- if (-e `which ecc`) then
++ if (-e `which icc`) then
+ set platform=linux_ecc
+ else
+ set platform=linux
+@@ -253,7 +254,11 @@
+ endif
+ endif
+ set HAVE_MOTIF=0
+- set HAVE_MAC=1
++#MPIBLAST <<<
++# set HAVE_MAC=1
++ set MPBL_HAVE_MAC=1
++ set HAVE_MAC=0
++#MPIBLAST
+ breaksw
+ case NetBSD:
+ set platform=netbsd
+@@ -319,6 +324,7 @@
+ goto BADPLATFORM
+ endif
+
++
+ set noglob
+ # take the file $NCBI_DOT_MK and convert it to be suitable for csh eval:
+ # (1) remove comments at the beginning of the lines
+@@ -328,6 +334,7 @@
+ eval `sed -e 's/^ *#.*//g' -e 's/\$(\([a-zA-Z_]*\))/\${\1}/g' -e 's/ *= */=/g' -e 's/^\([^=]*\)=\(.*\)$/setenv \1 "\2";/' < $NCBI_DOT_MK`
+ unset noglob
+
++
+ # disable assert() unless ENABLE_ASSERT is set
+ if ("$?ENABLE_ASSERT" == 0) then
+ set NCBI_OPTFLAG="-DNDEBUG $NCBI_OPTFLAG"
+@@ -441,13 +448,23 @@
+ set NET_VIB=(VIB=\"blastcl3 taxblast idfetch bl2seq asn2gb tbl2asn gene2xml $NONVIBWWWBLAST \")
+ endif
+
++# MPIBLAST <<<<<
++if ("$MPBL_HAVE_MAC" == 1) then
++set CMD='make $MFLG \
++ CFLAGS1=\"-I/Developer/Headers/FlatCarbon $NCBI_OPTFLAG $NCBI_CFLAGS1 $OGL_INCLUDE $PNG_INCLUDE\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
++ SHELL=\"$NCBI_MAKE_SHELL\" LCL=\"$NCBI_DEFAULT_LCL\" \
++ RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" $ALL_VIB all'
++else
+ set CMD='make $MFLG \
+ CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1 $OGL_INCLUDE $PNG_INCLUDE\" \
+ LDFLAGS1=\"$NCBI_LDFLAGS1\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
+ SHELL=\"$NCBI_MAKE_SHELL\" LCL=\"$NCBI_DEFAULT_LCL\" \
+ RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" $ALL_VIB all'
++endif
+ eval echo $CMD
+ eval echo $CMD | sh
++# MPIBLAST >>>>>
+
+ set make_stat = $status
+
+@@ -463,12 +480,18 @@
+ endif
+
+ # MPIBLAST <<<<<
+-
++if ("$MPBL_HAVE_MAC" == 1) then
+ set CMD='make $MFLG -f makempiblast.unx CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1\" \
+ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
+ LCL=\"$NCBI_DEFAULT_LCL\" RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\"'
++else
++set CMD='make $MFLG -f makempiblast.unx CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
++ LCL=\"$NCBI_DEFAULT_LCL\" RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\"'
++endif
+ eval echo $CMD
+ eval echo $CMD | sh
++if ($status != 0) exit $status
+
+ if( "$platform" == "bluegenel" || "$platform" == "bluegenep" ) then
+ exit 0
+@@ -476,7 +499,7 @@
+ # MPIBLAST >>>>>
+
+ set CMD='make $MFLG -f makedemo.unx CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1\" \
+- LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
+ LCL=\"$NCBI_DEFAULT_LCL\" RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" $DEMO_VIB'
+ eval echo $CMD
+ eval echo $CMD | sh
+@@ -495,7 +518,7 @@
+
+
+ set CMD='make $MFLG -f makedemo.unx CFLAGS1=\"$NCBI_OPTFLAG $NCBI_CFLAGS1\" \
+- LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" \
++ LDFLAGS1=\"$NCBI_LDFLAGS1\" SHELL=\"$NCBI_MAKE_SHELL\" OTHERLIBS=\"$NCBI_OTHERLIBS\" \
+ LCL=\"$NCBI_DEFAULT_LCL\" RAN=\"$NCBI_RANLIB\" AR=\"$NCBI_AR\" CC=\"$NCBI_CC\" \
+ THREAD_OBJ=$NCBI_THREAD_OBJ THREAD_OTHERLIBS=\"$NCBI_MT_OTHERLIBS\" \
+ $DEMO_VIB $mtapps'
+diff -rwu mpiblast-1.6.0/src/Makefile.am mpiblast-1.6.0-patched/src/Makefile.am
+--- mpiblast-1.6.0/src/Makefile.am 2009-11-22 01:17:48.000000000 -0500
++++ mpiblast-1.6.0-patched/src/Makefile.am 2011-08-06 17:06:42.000000000 -0400
+@@ -2,7 +2,7 @@
+ -D_LARGEFILE64_SOURCE -DMPIBLAST_PIO \
+ -I$(top_srcdir)/include/ -I@CONFIG_NCBIDIR@/include/ $(MPE_INCS) \
+ -I@CONFIG_NCBIDIR@/corelib/
+-AM_CXXFLAGS = -DMPICH_IGNORE_CXX_SEEK -DINSTALL_PREFIX="\"@prefix@\"" \
++AM_CXXFLAGS = -DMPICH_IGNORE_CXX_SEEK -DOMPI_SKIP_MPICXX -DINSTALL_PREFIX="\"@prefix@\"" \
+ @COMPILE_FLAGS@ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
+ -I$(top_srcdir)/include/ -I@CONFIG_NCBIDIR@/include/ $(MPE_INCS) \
+ -I@CONFIG_NCBIDIR@/corelib/
+@@ -31,7 +31,7 @@
+ @CONFIG_NCBIDIR@/build/blast_hooks.o -lmyncbitool -lblastcompadj -lmyncbiobj \
+ -lmyncbi -L. -L@CONFIG_NCBIDIR@/lib/ $(MPE_LIBS) -lm @LINK_FLAGS@
+ mpiblast_DEPENDENCIES = @GETOPT_LONG_SYSTEM@
+-mpiblast_CPPFLAGS = -DUSING_MPI -DMPICH_IGNORE_CXX_SEEK
++mpiblast_CPPFLAGS = -DUSING_MPI -DMPICH_IGNORE_CXX_SEEK -DOMPI_SKIP_MPICXX
+
+ mpiformatdb_SOURCES = mpiformatdb.cpp mpiblast_config.cpp mpiblast_config.hpp \
+ file_util.cpp file_util.hpp mpiblast_util.cpp mpiblast_util.hpp \
+diff -rwu mpiblast-1.6.0/src/pio_intercept.h mpiblast-1.6.0-patched/src/pio_intercept.h
+--- mpiblast-1.6.0/src/pio_intercept.h 2009-11-22 01:17:48.000000000 -0500
++++ mpiblast-1.6.0-patched/src/pio_intercept.h 2011-08-06 17:06:42.000000000 -0400
+@@ -60,7 +60,7 @@
+ #include <txalign.h>
+
+ /* marcros are duplicated in ncbi files to avoid header file conflict */
+-#define CHECK_NULPTR(x) if(x==NULL) fprintf(stderr, "%s, line%d: cannot allocate enough memory\n", __FILE__, __LINE__);
++#define CHECK_NULPTR(x) if(x==NULL) { perror("Cannot allocate enough memory:"); exit(-1); }
+
+ #ifndef NO_MPI
+ typedef struct _output_record {
diff --git a/var/spack/repos/builtin/packages/mpiblast/package.py b/var/spack/repos/builtin/packages/mpiblast/package.py
new file mode 100644
index 0000000000..eebb7da1fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpiblast/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mpiblast(AutotoolsPackage):
+ """mpiBLAST is a freely available, open-source, parallel implementation of
+ NCBI BLAST"""
+
+ homepage = "http://www.mpiblast.org/"
+ url = "http://www.mpiblast.org/downloads/files/mpiBLAST-1.6.0.tgz"
+
+ version('1.6.0', '707105ccd56825db776b50bfd81cecd5')
+
+ patch('mpiBLAST-1.6.0-patch-110806')
+
+ depends_on('mpi')
+
+ def configure_args(self):
+ args = ['--with-mpi=%s' % self.spec['mpi'].prefix]
+ return args
+
+ def build(self, spec, prefix):
+ make('ncbi')
+ make()
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('ac_cv_path_CC', self.spec['mpi'].mpicc)
+ spack_env.set('ac_cv_path_CXX', self.spec['mpi'].mpicxx)
diff --git a/var/spack/repos/builtin/packages/mpich/mpich32_clang.patch b/var/spack/repos/builtin/packages/mpich/mpich32_clang.patch
new file mode 100644
index 0000000000..01243072f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpich/mpich32_clang.patch
@@ -0,0 +1,13 @@
+diff --git a/src/include/mpiimpl.h b/src/include/mpiimpl.h
+index e705e5d..3bfcbee 100644
+--- a/src/include/mpiimpl.h
++++ b/src/include/mpiimpl.h
+@@ -1528,7 +1528,7 @@ typedef struct MPID_Request {
+ #ifdef MPID_DEV_REQUEST_DECL
+ MPID_DEV_REQUEST_DECL
+ #endif
+-} MPID_Request ATTRIBUTE((__aligned__(32)));
++} ATTRIBUTE((__aligned__(32))) MPID_Request;
+
+ extern MPIU_Object_alloc_t MPID_Request_mem;
+ /* Preallocated request objects */
diff --git a/var/spack/repos/builtin/packages/mpich/package.py b/var/spack/repos/builtin/packages/mpich/package.py
index dd864acbe3..74234f46ae 100644
--- a/var/spack/repos/builtin/packages/mpich/package.py
+++ b/var/spack/repos/builtin/packages/mpich/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import os
class Mpich(AutotoolsPackage):
@@ -32,7 +33,7 @@ class Mpich(AutotoolsPackage):
homepage = "http://www.mpich.org"
url = "http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz"
list_url = "http://www.mpich.org/static/downloads/"
- list_depth = 2
+ list_depth = 1
version('3.2', 'f414cfa77099cd1fa1a5ae4e22db508a')
version('3.1.4', '2ab544607986486562e076b83937bba2')
@@ -41,15 +42,49 @@ class Mpich(AutotoolsPackage):
version('3.1.1', '40dc408b1e03cc36d80209baaa2d32b7')
version('3.1', '5643dd176499bfb7d25079aaff25f2ec')
version('3.0.4', '9c5d5d4fe1e17dd12153f40bc5b6dbc0')
+ version('develop', git='git://github.com/pmodels/mpich')
variant('hydra', default=True, description='Build the hydra process manager')
variant('pmi', default=True, description='Build with PMI support')
variant('romio', default=True, description='Enable ROMIO MPI I/O implementation')
variant('verbs', default=False, description='Build support for OpenFabrics verbs.')
-
+ variant(
+ 'device',
+ default='ch3',
+ description='''Abstract Device Interface (ADI)
+implementation. The ch4 device is currently in experimental state''',
+ values=('ch3', 'ch4'),
+ multi=False
+ )
+ variant(
+ 'netmod',
+ default='tcp',
+ description='''Network module. Only single netmod builds are
+supported. For ch3 device configurations, this presumes the
+ch3:nemesis communication channel. ch3:sock is not supported by this
+spack package at this time.''',
+ values=('tcp', 'mxm', 'ofi', 'ucx'),
+ multi=False
+ )
+
+ provides('mpi')
provides('mpi@:3.0', when='@3:')
provides('mpi@:1.3', when='@1:')
+ # fix MPI_Barrier segmentation fault
+ # see https://lists.mpich.org/pipermail/discuss/2016-May/004764.html
+ # and https://lists.mpich.org/pipermail/discuss/2016-June/004768.html
+ patch('mpich32_clang.patch', when='@3.2%clang')
+
+ depends_on('libfabric', when='netmod=ofi')
+
+ conflicts('device=ch4', when='@:3.2')
+ conflicts('netmod=ofi', when='@:3.1.4')
+ conflicts('netmod=ucx', when='device=ch3')
+ conflicts('netmod=mxm', when='device=ch4')
+ conflicts('netmod=mxm', when='@:3.1.3')
+ conflicts('netmod=tcp', when='device=ch4')
+
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
# On Cray, the regular compiler wrappers *are* the MPI wrappers.
if 'platform=cray' in self.spec:
@@ -69,7 +104,7 @@ class Mpich(AutotoolsPackage):
spack_env.set('MPICH_F90', spack_fc)
spack_env.set('MPICH_FC', spack_fc)
- def setup_dependent_package(self, module, dep_spec):
+ def setup_dependent_package(self, module, dependent_spec):
if 'platform=cray' in self.spec:
self.spec.mpicc = spack_cc
self.spec.mpicxx = spack_cxx
@@ -86,7 +121,16 @@ class Mpich(AutotoolsPackage):
join_path(self.prefix.lib, 'libmpi.{0}'.format(dso_suffix))
]
- @AutotoolsPackage.precondition('autoreconf')
+ def autoreconf(self, spec, prefix):
+ """Not needed usually, configure should be already there"""
+ # If configure exists nothing needs to be done
+ if os.path.exists(self.configure_abs_path):
+ return
+ # Else bootstrap with autotools
+ bash = which('bash')
+ bash('./autogen.sh')
+
+ @run_before('autoreconf')
def die_without_fortran(self):
# Until we can pass variants such as +fortran through virtual
# dependencies depends_on('mpi'), require Fortran compiler to
@@ -98,7 +142,7 @@ class Mpich(AutotoolsPackage):
def configure_args(self):
spec = self.spec
- return [
+ config_args = [
'--enable-shared',
'--with-pm={0}'.format('hydra' if '+hydra' in spec else 'no'),
'--with-pmi={0}'.format('yes' if '+pmi' in spec else 'no'),
@@ -106,7 +150,27 @@ class Mpich(AutotoolsPackage):
'--{0}-ibverbs'.format('with' if '+verbs' in spec else 'without')
]
- @AutotoolsPackage.sanity_check('install')
+ # setup device configuration
+ device_config = ''
+ if 'device=ch4' in spec:
+ device_config = '--with-device=ch4:'
+ elif 'device=ch3' in spec:
+ device_config = '--with-device=ch3:nemesis:'
+
+ if 'netmod=ucx' in spec:
+ device_config += 'ucx'
+ elif 'netmod=ofi' in spec:
+ device_config += 'ofi'
+ elif 'netmod=mxm' in spec:
+ device_config += 'mxm'
+ elif 'netmod=tcp' in spec:
+ device_config += 'tcp'
+
+ config_args.append(device_config)
+
+ return config_args
+
+ @run_after('install')
def filter_compilers(self):
"""Run after install to make the MPI compilers use the
compilers that Spack built the package with.
diff --git a/var/spack/repos/builtin/packages/mpifileutils/package.py b/var/spack/repos/builtin/packages/mpifileutils/package.py
new file mode 100644
index 0000000000..f1bb7e3f39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpifileutils/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mpifileutils(AutotoolsPackage):
+ """mpiFileUtils is a suite of MPI-based tools to manage large datasets,
+ which may vary from large directory trees to large files.
+ High-performance computing users often generate large datasets with
+ parallel applications that run with many processes (millions in some
+ cases). However those users are then stuck with single-process tools
+ like cp and rm to manage their datasets. This suite provides
+ MPI-based tools to handle typical jobs like copy, remove, and compare
+ for such datasets, providing speedups of up to 20-30x."""
+
+ homepage = "https://github.com/hpc/mpifileutils"
+ url = "https://github.com/hpc/mpifileutils/releases/download/v0.6/mpifileutils-0.6.tar.gz"
+
+ version('0.7', 'c081f7f72c4521dddccdcf9e087c5a2b')
+ version('0.6', '620bcc4966907481f1b1a965b28fc9bf')
+
+ depends_on('mpi')
+ depends_on('libcircle')
+ depends_on('lwgrp')
+ depends_on('dtcmp')
+ depends_on('libarchive')
+
+ variant('xattr', default=True,
+ description="Enable code for extended attributes")
+
+ variant('lustre', default=False,
+ description="Enable optimizations and features for Lustre")
+
+ variant('experimental', default=False,
+ description="Install experimental tools")
+
+ # --enable-experimental fails with v0.6 and earlier
+ conflicts('+experimental', when='@:0.6')
+
+ def configure_args(self):
+ args = []
+
+ if '+lustre' in self.spec:
+ args.append('--enable-lustre')
+ else:
+ args.append('--disable-lustre')
+
+ if self.spec.satisfies('@0.7:'):
+ if '+experimental' in self.spec:
+ args.append('--enable-experimental')
+ else:
+ args.append('--disable-experimental')
+
+ return args
+
+ @property
+ def build_targets(self):
+ targets = []
+ if '+xattr' in self.spec:
+ targets.append('CFLAGS=-DDCOPY_USE_XATTRS')
+ return targets
diff --git a/var/spack/repos/builtin/packages/mpileaks/package.py b/var/spack/repos/builtin/packages/mpileaks/package.py
index ec4e9b30cc..cbf330666a 100644
--- a/var/spack/repos/builtin/packages/mpileaks/package.py
+++ b/var/spack/repos/builtin/packages/mpileaks/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/mpip/package.py b/var/spack/repos/builtin/packages/mpip/package.py
index 78e1dca68a..a641217622 100644
--- a/var/spack/repos/builtin/packages/mpip/package.py
+++ b/var/spack/repos/builtin/packages/mpip/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,19 +26,21 @@ from spack import *
import os
-class Mpip(Package):
+class Mpip(AutotoolsPackage):
"""mpiP: Lightweight, Scalable MPI Profiling"""
homepage = "http://mpip.sourceforge.net/"
url = "http://downloads.sourceforge.net/project/mpip/mpiP/mpiP-3.4.1/mpiP-3.4.1.tar.gz"
version("3.4.1", "1168adc83777ac31d6ebd385823aabbd")
- depends_on("libelf", type="build")
- depends_on("libdwarf", type="build")
- depends_on('libunwind', when=os.uname()[4] == "x86_64", type="build")
- depends_on("mpi", type="build")
+ depends_on("libelf")
+ depends_on("libdwarf")
+ depends_on('libunwind', when=os.uname()[4] == "x86_64")
+ depends_on("mpi")
- def install(self, spec, prefix):
- configure("--prefix=" + prefix, "--without-f77")
- make()
- make("install")
+ def configure_args(self):
+ config_args = ['--without-f77']
+ config_args.append("--with-cc=%s" % self.spec['mpi'].mpicc)
+ config_args.append("--with-cxx=%s" % self.spec['mpi'].mpicxx)
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/mpir/package.py b/var/spack/repos/builtin/packages/mpir/package.py
index b939a690b2..14be170a3a 100644
--- a/var/spack/repos/builtin/packages/mpir/package.py
+++ b/var/spack/repos/builtin/packages/mpir/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/mpix-launch-swift/package.py b/var/spack/repos/builtin/packages/mpix-launch-swift/package.py
new file mode 100644
index 0000000000..a56337fdd4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mpix-launch-swift/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class MpixLaunchSwift(Package):
+ """Library that allows a child MPI application to be launched
+ inside a subset of processes in a parent MPI application.
+ """
+
+ homepage = "https://bitbucket.org/kshitijvmehta/mpix_launch_swift"
+ url = "https://kshitijvmehta@bitbucket.org/kshitijvmehta/mpix_launch_swift.git"
+
+ version('develop', git='https://kshitijvmehta@bitbucket.org/kshitijvmehta/mpix_launch_swift.git',
+ branch='envs')
+
+ depends_on('stc')
+ depends_on('tcl')
+ depends_on('mpi')
+ depends_on('swig', type='build')
+
+ def install(self, spec, prefix):
+ make()
+ copy_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/mrbayes/package.py b/var/spack/repos/builtin/packages/mrbayes/package.py
new file mode 100644
index 0000000000..9361c3cc0e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mrbayes/package.py
@@ -0,0 +1,72 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mrbayes(AutotoolsPackage):
+ """MrBayes is a program for Bayesian inference and model choice across a
+ wide range of phylogenetic and evolutionary models. MrBayes uses Markov
+ chain Monte Carlo (MCMC) methods to estimate the posterior distribution
+ of model parameters."""
+
+ homepage = "http://mrbayes.sourceforge.net"
+ url = "https://downloads.sourceforge.net/project/mrbayes/mrbayes/3.2.6/mrbayes-3.2.6.tar.gz"
+
+ version('3.2.6', '95f9822f24be47b976bf87540b55d1fe')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+ variant('beagle', default=True, description='Enable BEAGLE library for speed benefits')
+ variant('sse', default=True, description='Enable SSE in order to substantially speed up execution')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('libbeagle', when='+beagle')
+ depends_on('mpi', when='+mpi')
+
+ configure_directory = 'src'
+
+ def configure_args(self):
+ args = []
+ if '~beagle' in self.spec:
+ args.append('--with-beagle=no')
+ else:
+ args.append('--with-beagle=%s' % self.spec['libbeagle'].prefix)
+ if '~sse' in self.spec:
+ args.append('--enable-sse=no')
+ else:
+ args.append('--enable-sse=yes')
+ if '~mpi' in self.spec:
+ args.append('--enable-mpi=no')
+ else:
+ args.append('--enable-mpi=yes')
+ return args
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('src'):
+ install('mb', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/mrnet/package.py b/var/spack/repos/builtin/packages/mrnet/package.py
index 9da9e29a2e..6569934817 100644
--- a/var/spack/repos/builtin/packages/mrnet/package.py
+++ b/var/spack/repos/builtin/packages/mrnet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,10 +25,10 @@
from spack import *
-class Mrnet(Package):
+class Mrnet(AutotoolsPackage):
"""The MRNet Multi-Cast Reduction Network."""
homepage = "http://paradyn.org/mrnet"
- url = "ftp://ftp.cs.wisc.edu/paradyn/mrnet/mrnet_5.0.1.tar.gz"
+ url = "http://ftp.cs.wisc.edu/pub/paradyn/mrnet/mrnet_5.0.1.tar.gz"
list_url = "http://ftp.cs.wisc.edu/paradyn/mrnet"
version('5.0.1-2', git='https://github.com/dyninst/mrnet.git',
@@ -43,14 +43,13 @@ class Mrnet(Package):
depends_on("boost")
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
+ config_args = ['--enable-shared']
+
# Build the MRNet LW thread safe libraries when the
# lwthreads variant is present
if '+lwthreads' in spec:
- configure("--prefix=%s" % prefix, "--enable-shared",
- "--enable-ltwt-threadsafe")
- else:
- configure("--prefix=%s" % prefix, "--enable-shared")
+ config_args.append('--enable-ltwt-threadsafe')
- make()
- make("install")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/mrtrix3/package.py b/var/spack/repos/builtin/packages/mrtrix3/package.py
new file mode 100644
index 0000000000..f5daeabf5a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mrtrix3/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import distutils.dir_util
+
+
+class Mrtrix3(Package):
+ """MRtrix provides a set of tools to perform various advanced diffusion MRI
+ analyses, including constrained spherical deconvolution (CSD),
+ probabilistic tractography, track-density imaging, and apparent fibre
+ density."""
+
+ homepage = "http://www.mrtrix.org/"
+ url = "https://github.com/MRtrix3/mrtrix3"
+
+ version('2017-09-25', commit='72aca89e3d38c9d9e0c47104d0fb5bd2cbdb536d',
+ git='https://github.com/MRtrix3/mrtrix3.git')
+
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('mesa-glu')
+ depends_on('qt+opengl@4.7:')
+ depends_on('eigen')
+ depends_on('zlib')
+ depends_on('libtiff')
+ depends_on('fftw')
+
+ conflicts('%gcc@7:', when='@2017-09-25') # MRtrix3/mrtrix3#1041
+
+ def install(self, spec, prefix):
+ configure = Executable('./configure')
+ build = Executable('./build')
+ configure()
+ build()
+ # install_tree('.', prefix) does not work since the prefix
+ # directory already exists by this point
+ distutils.dir_util.copy_tree('.', prefix)
+
+ def setup_environment(self, spac_env, run_env):
+ run_env.prepend_path('PATH', self.prefix)
diff --git a/var/spack/repos/builtin/packages/msgpack-c/package.py b/var/spack/repos/builtin/packages/msgpack-c/package.py
index 9a726e2356..bf78e8d931 100644
--- a/var/spack/repos/builtin/packages/msgpack-c/package.py
+++ b/var/spack/repos/builtin/packages/msgpack-c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,11 @@
from spack import *
-class MsgpackC(Package):
+class MsgpackC(CMakePackage):
"""A small, fast binary interchange format convertible to/from JSON"""
homepage = "http://www.msgpack.org"
url = "https://github.com/msgpack/msgpack-c/archive/cpp-1.4.1.tar.gz"
version('1.4.1', 'e2fd3a7419b9bc49e5017fdbefab87e0')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake('.', *std_cmake_args)
-
- make()
- make("install")
+ depends_on('cmake@2.8.12:', type='build')
diff --git a/var/spack/repos/builtin/packages/mshadow/package.py b/var/spack/repos/builtin/packages/mshadow/package.py
new file mode 100644
index 0000000000..cd9ecfce86
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mshadow/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mshadow(Package):
+ """MShadow is a lightweight CPU/GPU Matrix/Tensor C++ Template Library.
+ in C++/CUDA."""
+
+ homepage = "https://github.com/dmlc/mshadow"
+ url = "https://github.com/dmlc/mshadow/archive/v1.1.tar.gz"
+
+ version('master', git='https://github.com/dmlc/mshadow.git', branch='master')
+ version('20170721', git='https://github.com/dmlc/mshadow.git',
+ commit='20b54f068c1035f0319fa5e5bbfb129c450a5256')
+
+ def install(self, spec, prefix):
+ install_tree('mshadow', prefix.include.mshadow)
+ install_tree('make', prefix.make)
diff --git a/var/spack/repos/builtin/packages/multitail/package.py b/var/spack/repos/builtin/packages/multitail/package.py
new file mode 100644
index 0000000000..9c9ef2cca0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/multitail/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Multitail(MakefilePackage):
+ """MultiTail allows you to monitor logfiles and command output
+ in multiple windows in a terminal, colorize, filter and merge."""
+
+ homepage = "https://www.vanheusden.com/multitail/index.php"
+ url = "https://www.vanheusden.com/multitail/multitail-6.4.2.tgz"
+
+ version('6.4.2', 'a0959f7b2385061080712afd8ae6e33d')
+
+ depends_on('ncurses')
+
+ # It's counterintuitive, but use DESTDIR for the install because
+ # the Makefile doesn't consistently use PREFIX with the things
+ # it's installing...
+ @property
+ def install_targets(self):
+ targets = []
+ targets.append('PREFIX=')
+ targets.append('DESTDIR={0}'.format(self.prefix))
+ targets.append('install')
+ return targets
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+
+ nc_include_flags = spec['ncurses'].headers.include_flags
+ nc_ld_flags = spec['ncurses'].libs.ld_flags
+ makefile.filter('CFLAGS\+=', 'CFLAGS+={0} '.format(nc_include_flags))
+ makefile.filter('LDFLAGS\+=', 'LDFLAGS+={0} '.format(nc_ld_flags))
+
+ # Copy the conf file directly into place (don't worry about
+ # overwriting an existing file...)
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': True}
+ makefile.filter('cp multitail.conf $(CONFIG_FILE).new',
+ 'cp multitail.conf $(CONFIG_FILE)', **kwargs)
diff --git a/var/spack/repos/builtin/packages/multiverso/cmake-143187.patch b/var/spack/repos/builtin/packages/multiverso/cmake-143187.patch
new file mode 100644
index 0000000000..5f2847f019
--- /dev/null
+++ b/var/spack/repos/builtin/packages/multiverso/cmake-143187.patch
@@ -0,0 +1,28 @@
+From 478bcfecadafb09aa73bacab35d932851b323142 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Mon, 10 Apr 2017 15:29:50 +0800
+Subject: [PATCH 1/1] Patch 1431875.
+
+---
+ CMakeLists.txt | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6a824f1..100b21c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -30,9 +30,10 @@ ADD_SUBDIRECTORY(Test/unittests)
+ ADD_SUBDIRECTORY(Applications/WordEmbedding)
+ ADD_SUBDIRECTORY(Applications/LogisticRegression)
+
+-if(USE_INSTALL_MULTIVERSO)
++if(INSTALL_MULTIVERSO)
+ install (DIRECTORY ${PROJECT_SOURCE_DIR}/include/multiverso DESTINATION include)
+-endif(USE_INSTALL_MULTIVERSO)
++ install (DIRECTORY ${PROJECT_SOURCE_DIR}/Test DESTINATION .)
++endif(INSTALL_MULTIVERSO)
+
+
+ # uninstall target
+--
+2.11.1
diff --git a/var/spack/repos/builtin/packages/multiverso/package.py b/var/spack/repos/builtin/packages/multiverso/package.py
new file mode 100644
index 0000000000..8993ce1b4d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/multiverso/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Multiverso(CMakePackage):
+ """Multiverso is a parameter server based framework for
+ training machine learning models on big data with numbers of machines."""
+
+ homepage = "https://github.com/Microsoft/Multiverso"
+ url = "https://github.com/Microsoft/Multiverso/archive/v0.2.tar.gz"
+
+ version('master', git='https://github.com/Microsoft/Multiverso.git',
+ branch='master')
+ version('143187', git='https://github.com/Microsoft/Multiverso.git',
+ commit='143187575d1cfa410100037b8aea2e767e0af637')
+ version('0.2', '483ca7524fea14a311389e421f2bc098')
+
+ depends_on('mpi')
+ depends_on('boost')
+
+ patch('cmake-143187.patch', when='@143187')
+
+ def cmake_args(self):
+ spec = self.spec
+ return ['-DBOOST_ROOT:PATH=%s' % spec['boost'].prefix]
diff --git a/var/spack/repos/builtin/packages/mummer/Makefile.patch b/var/spack/repos/builtin/packages/mummer/Makefile.patch
new file mode 100644
index 0000000000..0c96565afb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mummer/Makefile.patch
@@ -0,0 +1,24 @@
+--- a/Makefile 2017-05-15 17:33:05.132803923 -0700
++++ b/Makefile 2017-05-16 16:01:29.264842369 -0700
+@@ -35,6 +35,13 @@
+ TIGR_SRC_DIR := $(TOP_DIR)/src/tigr
+ KURTZ_SRC_DIR := $(TOP_DIR)/src/kurtz
+
++ifndef INSTALL_TOP_DIR
++INSTALL_TOP_DIR := $(TOP_DIR)
++endif
++INSTALL_BIN_DIR := $(INSTALL_TOP_DIR)/bin
++INSTALL_AUX_BIN_DIR := $(INSTALL_TOP_DIR)/aux_bin
++INSTALL_SCRIPT_DIR := $(INSTALL_TOP_DIR)/scripts
++
+ CC := $(filter /%,$(shell /bin/sh -c 'type gcc'))
+ CXX := $(filter /%,$(shell /bin/sh -c 'type g++'))
+ SED := $(filter /%,$(shell /bin/sh -c 'type sed'))
+@@ -52,6 +59,7 @@
+
+ #-- EXPORT THESE VARIABLES TO OTHER MAKEFILES
+ export BIN_DIR AUX_BIN_DIR CXX CC CFLAGS CXXFLAGS LDFLAGS
++export INSTALL_BIN_DIR INSTALL_AUX_BIN_DIR INSTALL_SCRIPT_DIR
+
+
+
diff --git a/var/spack/repos/builtin/packages/mummer/package.py b/var/spack/repos/builtin/packages/mummer/package.py
new file mode 100644
index 0000000000..8aabf502f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mummer/package.py
@@ -0,0 +1,75 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mummer(Package):
+ """MUMmer is a system for rapidly aligning entire genomes."""
+
+ homepage = "http://mummer.sourceforge.net/"
+ url = "https://sourceforge.net/projects/mummer/files/mummer/3.23/MUMmer3.23.tar.gz/download"
+
+ version('3.23', 'f2422b3d2638dba4baedb71b1acdffa2')
+
+ depends_on('gnuplot')
+ depends_on('perl', type=('build', 'run'))
+
+ patch('Makefile.patch')
+ patch('scripts-Makefile.patch')
+
+ def patch(self):
+ """Fix mummerplot's use of defined on hashes (deprecated
+ since perl@5.10, made illegal in perl@5.20."""
+
+ kwargs = {'string': True}
+ filter_file('defined (%', '(%', 'scripts/mummerplot.pl',
+ **kwargs)
+
+ def install(self, spec, prefix):
+ if self.run_tests:
+ make('check')
+ make('INSTALL_TOP_DIR={0}'.format(prefix))
+ bd = prefix.bin
+ abd = join_path(prefix, 'aux_bin')
+ sd = join_path(prefix, 'scripts')
+ mkdirp(bd)
+ mkdirp(abd)
+ mkdirp(sd)
+
+ bins = ["show-tiling", "show-snps", "show-coords", "show-aligns",
+ "show-diff", "delta-filter", "combineMUMs", "mummer",
+ "repeat-match", "annotate", "mgaps", "gaps", "dnadiff",
+ "nucmer2xfig", "run-mummer3", "mummerplot", "promer",
+ "run-mummer1", "nucmer", "mapview", "exact-tandems"]
+ aux_bins = ["aux_bin/postnuc", "aux_bin/postpro",
+ "aux_bin/prenuc", "aux_bin/prepro"]
+ scripts = ["scripts/Foundation.pm"]
+
+ for f in bins:
+ install(f, join_path(bd, f))
+ for f in aux_bins:
+ install(f, join_path(abd, f[8:]))
+ for f in scripts:
+ install(f, join_path(sd, f[8:]))
diff --git a/var/spack/repos/builtin/packages/mummer/scripts-Makefile.patch b/var/spack/repos/builtin/packages/mummer/scripts-Makefile.patch
new file mode 100644
index 0000000000..961a4d5463
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mummer/scripts-Makefile.patch
@@ -0,0 +1,74 @@
+--- a/scripts/Makefile 2011-12-16 18:49:26.000000000 -0800
++++ b/scripts/Makefile 2017-05-16 16:05:48.697853000 -0700
+@@ -37,56 +37,56 @@
+ #-- not so PHONY rules --#
+ exact-tandems: exact-tandems.csh
+ $(SED) -e 's?__CSH_PATH?$(CSH)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
+ exact-tandems.csh > $(BIN_DIR)/exact-tandems
+ chmod 755 $(BIN_DIR)/exact-tandems
+
+ mapview: mapview.pl
+ $(SED) -e 's?__PERL_PATH?$(PERL)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
+ mapview.pl > $(BIN_DIR)/mapview
+ chmod 755 $(BIN_DIR)/mapview
+
+ mummerplot: mummerplot.pl Foundation.pm
+ $(SED) -e 's?__PERL_PATH?$(PERL)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ mummerplot.pl > $(BIN_DIR)/mummerplot
+ chmod 755 $(BIN_DIR)/mummerplot
+
+ dnadiff: dnadiff.pl Foundation.pm
+ $(SED) -e 's?__PERL_PATH?$(PERL)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ dnadiff.pl > $(BIN_DIR)/dnadiff
+ chmod 755 $(BIN_DIR)/dnadiff
+
+ nucmer: nucmer.pl Foundation.pm
+ $(SED) -e 's?__PERL_PATH?$(PERL)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
+- -e 's?__AUX_BIN_DIR?$(AUX_BIN_DIR)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
++ -e 's?__AUX_BIN_DIR?$(INSTALL_AUX_BIN_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ nucmer.pl > $(BIN_DIR)/nucmer
+ chmod 755 $(BIN_DIR)/nucmer
+
+ promer: promer.pl Foundation.pm
+ $(SED) -e 's?__PERL_PATH?$(PERL)?g' \
+- -e 's?__SCRIPT_DIR?$(SCRIPT_DIR)?g' \
+- -e 's?__AUX_BIN_DIR?$(AUX_BIN_DIR)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__SCRIPT_DIR?$(INSTALL_SCRIPT_DIR)?g' \
++ -e 's?__AUX_BIN_DIR?$(INSTALL_AUX_BIN_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ promer.pl > $(BIN_DIR)/promer
+ chmod 755 $(BIN_DIR)/promer
+
+ run-mummer1: run-mummer1.csh
+ $(SED) -e 's?__CSH_PATH?$(CSH)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ run-mummer1.csh > $(BIN_DIR)/run-mummer1
+ chmod 755 $(BIN_DIR)/run-mummer1
+
+ run-mummer3: run-mummer3.csh
+ $(SED) -e 's?__CSH_PATH?$(CSH)?g' \
+- -e 's?__BIN_DIR?$(BIN_DIR)?g' \
++ -e 's?__BIN_DIR?$(INSTALL_BIN_DIR)?g' \
+ run-mummer3.csh > $(BIN_DIR)/run-mummer3
+ chmod 755 $(BIN_DIR)/run-mummer3
+
diff --git a/var/spack/repos/builtin/packages/mumps/mumps-5.0.2-spectrum-mpi-xl.patch b/var/spack/repos/builtin/packages/mumps/mumps-5.0.2-spectrum-mpi-xl.patch
new file mode 100644
index 0000000000..d2bd17cb44
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mumps/mumps-5.0.2-spectrum-mpi-xl.patch
@@ -0,0 +1,75 @@
+diff -Naur MUMPS_5.0.1/Makefile MUMPS_5.0.1-patched/MUMPS_5.0.1/Makefile
+--- ./Makefile 2015-07-23 13:08:29.000000000 -0400
++++ ./Makefile 2016-12-05 14:08:30.788638382 -0500
+@@ -62,7 +62,7 @@
+ $(libdir)/libpord$(PLAT)$(LIBEXT):
+ if [ "$(LPORDDIR)" != "" ] ; then \
+ cd $(LPORDDIR); \
+- $(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" RANLIB="$(RANLIB)" OUTC="$(OUTC)" LIBEXT=$(LIBEXT); \
++ $(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" SAR="$(SAR)" RANLIB="$(RANLIB)" OUTC="$(OUTC)" LIBEXT=$(LIBEXT); \
+ fi;
+ if [ "$(LPORDDIR)" != "" ] ; then \
+ cp $(LPORDDIR)/libpord$(LIBEXT) $@; \
+diff -Naur MUMPS_5.0.1/PORD/lib/Makefile MUMPS_5.0.1-patched/PORD/lib/MUMPS_5.0.1/Makefile
+--- ./PORD/lib/Makefile 2015-07-23 13:08:29.000000000 -0400
++++ ./PORD/lib/Makefile 2016-12-05 11:26:24.785317467 -0500
+@@ -25,7 +25,7 @@
+ $(CC) $(COPTIONS) -c $*.c $(OUTC)$*.o
+
+ libpord$(LIBEXT):$(OBJS)
+- $(AR)$@ $(OBJS)
++ $(SAR)$@ $(OBJS)
+ $(RANLIB) $@
+
+ clean:
+diff -Naur MUMPS_5.0.1/examples/Makefile MUMPS_5.0.1-patched/examples/Makefile
+--- ./examples/Makefile 2015-07-23 13:08:32.000000000 -0400
++++ ./examples/Makefile 2016-12-05 14:36:10.692857906 -0500
+@@ -25,37 +25,30 @@
+
+ LIBSMUMPS = $(libdir)/libsmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-ssimpletest: $(LIBSMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) ssimpletest.o $(LIBSMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++ssimpletest: $(LIBSMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include ssimpletest.F $(LIBSMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBDMUMPS = $(libdir)/libdmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-dsimpletest: $(LIBDMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) dsimpletest.o $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++dsimpletest: $(LIBDMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include dsimpletest.F $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBCMUMPS = $(libdir)/libcmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-csimpletest: $(LIBCMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) csimpletest.o $(LIBCMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++csimpletest: $(LIBCMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include csimpletest.F $(LIBCMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBZMUMPS = $(libdir)/libzmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-zsimpletest: $(LIBZMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) zsimpletest.o $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++zsimpletest: $(LIBZMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include zsimpletest.F $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+-c_example: $(LIBDMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) $@.o $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+-
+-
+-.SUFFIXES: .c .F .o
+-.F.o:
+- $(FC) $(OPTF) $(INCS) -I. -I$(topdir)/include -c $*.F $(OUTF)$*.o
+-.c.o:
+- $(CC) $(OPTC) $(INCS) $(CDEFS) -I. -I$(topdir)/include -I$(topdir)/src -c $*.c $(OUTC)$*.o
++c_example: $(LIBDMUMPS) $$@.c
++ $(CC) -o $@ $(OPTC) $(INCS) -I. -I$(topdir)/include c_example.c $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ $(libdir)/libsmumps$(PLAT)$(LIBEXT):
diff --git a/var/spack/repos/builtin/packages/mumps/mumps-5.1.1-spectrum-mpi-xl.patch b/var/spack/repos/builtin/packages/mumps/mumps-5.1.1-spectrum-mpi-xl.patch
new file mode 100644
index 0000000000..8d9c1fb93a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mumps/mumps-5.1.1-spectrum-mpi-xl.patch
@@ -0,0 +1,79 @@
+diff -Naur MUMPS_5.0.1/Makefile MUMPS_5.0.1-patched/MUMPS_5.0.1/Makefile
+--- ./Makefile 2015-07-23 13:08:29.000000000 -0400
++++ ./Makefile 2016-12-05 14:08:30.788638382 -0500
+@@ -62,7 +62,7 @@
+ $(libdir)/libpord$(PLAT)$(LIBEXT):
+ if [ "$(LPORDDIR)" != "" ] ; then \
+ cd $(LPORDDIR); \
+- $(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" RANLIB="$(RANLIB)" OUTC="$(OUTC)" LIBEXT=$(LIBEXT); \
++ $(MAKE) CC="$(CC)" CFLAGS="$(OPTC)" SAR="$(SAR)" RANLIB="$(RANLIB)" OUTC="$(OUTC)" LIBEXT=$(LIBEXT); \
+ fi;
+ if [ "$(LPORDDIR)" != "" ] ; then \
+ cp $(LPORDDIR)/libpord$(LIBEXT) $@; \
+diff -Naur MUMPS_5.0.1/PORD/lib/Makefile MUMPS_5.0.1-patched/PORD/lib/MUMPS_5.0.1/Makefile
+--- ./PORD/lib/Makefile 2015-07-23 13:08:29.000000000 -0400
++++ ./PORD/lib/Makefile 2016-12-05 11:26:24.785317467 -0500
+@@ -25,7 +25,7 @@
+ $(CC) $(COPTIONS) -c $*.c $(OUTC)$*.o
+
+ libpord$(LIBEXT):$(OBJS)
+- $(AR)$@ $(OBJS)
++ $(SAR)$@ $(OBJS)
+ $(RANLIB) $@
+
+ clean:
+--- ./examples/Makefile 2017-06-07 15:40:49.366671322 -0400
++++ ./examples/Makefile 2017-06-07 15:47:55.666685772 -0400
+@@ -26,40 +26,33 @@
+
+ LIBSMUMPS = $(libdir)/libsmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-ssimpletest: $(LIBSMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) ssimpletest.o $(LIBSMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++ssimpletest: $(LIBSMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include ssimpletest.F $(LIBSMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBDMUMPS = $(libdir)/libdmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-dsimpletest: $(LIBDMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) dsimpletest.o $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++dsimpletest: $(LIBDMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include dsimpletest.F $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBCMUMPS = $(libdir)/libcmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-csimpletest: $(LIBCMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) csimpletest.o $(LIBCMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++csimpletest: $(LIBCMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include csimpletest.F $(LIBCMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ LIBZMUMPS = $(libdir)/libzmumps$(PLAT)$(LIBEXT) $(LIBMUMPS_COMMON)
+
+-zsimpletest: $(LIBZMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) zsimpletest.o $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++zsimpletest: $(LIBZMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include zsimpletest.F $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+-c_example: $(LIBDMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) $@.o $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
++c_example: $(LIBDMUMPS) $$@.c
++ $(CC) -o $@ $(OPTC) $(INCS) -I. -I$(topdir)/include c_example.c $(LIBDMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+-multiple_arithmetics_example: $(LIBSMUMPS) $(LIBDMUMPS) $(LIBCMUMPS) $(LIBZMUMPS) $$@.o
+- $(FL) -o $@ $(OPTL) $@.o $(LIBSMUMPS) $(LIBDMUMPS) $(LIBCMUMPS) $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+-
+-
+-.SUFFIXES: .c .F .o
+-.F.o:
+- $(FC) $(OPTF) $(INCS) -I. -I$(topdir)/include -c $*.F $(OUTF)$*.o
+-.c.o:
+- $(CC) $(OPTC) $(INCS) $(CDEFS) -I. -I$(topdir)/include -I$(topdir)/src -c $*.c $(OUTC)$*.o
++multiple_arithmetics_example: $(LIBSMUMPS) $(LIBDMUMPS) $(LIBCMUMPS) $(LIBZMUMPS) $$@.F
++ $(FC) -o $@ $(OPTF) $(INCS) -I. -I$(topdir)/include multiple_arithmetics_example.F $(LIBSMUMPS) $(LIBDMUMPS) $(LIBCMUMPS) $(LIBZMUMPS) $(LORDERINGS) $(LIBS) $(LIBBLAS) $(LIBOTHERS)
+
+
+ $(libdir)/libsmumps$(PLAT)$(LIBEXT):
diff --git a/var/spack/repos/builtin/packages/mumps/package.py b/var/spack/repos/builtin/packages/mumps/package.py
index 82d0c606b6..cf3c4bbd1e 100644
--- a/var/spack/repos/builtin/packages/mumps/package.py
+++ b/var/spack/repos/builtin/packages/mumps/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,6 +34,7 @@ class Mumps(Package):
homepage = "http://mumps.enseeiht.fr"
url = "http://mumps.enseeiht.fr/MUMPS_5.0.1.tar.gz"
+ version('5.1.1', 'f15c6b5dd8c71b1241004cd19818259d')
version('5.0.2', '591bcb2c205dcb0283872608cdf04927')
# Alternate location if main server is down.
# version('5.0.1', 'b477573fdcc87babe861f62316833db0', url='http://pkgs.fedoraproject.org/repo/pkgs/MUMPS/MUMPS_5.0.1.tar.gz/md5/b477573fdcc87babe861f62316833db0/MUMPS_5.0.1.tar.gz')
@@ -60,7 +61,7 @@ class Mumps(Package):
variant('shared', default=True, description='Build shared libraries')
depends_on('scotch + esmumps', when='~ptscotch+scotch')
- depends_on('scotch + esmumps + mpi', when='+ptscotch')
+ depends_on('scotch + esmumps ~ metis + mpi', when='+ptscotch')
depends_on('metis@5:', when='+metis')
depends_on('parmetis', when="+parmetis")
depends_on('blas')
@@ -68,6 +69,11 @@ class Mumps(Package):
depends_on('scalapack', when='+mpi')
depends_on('mpi', when='+mpi')
+ patch('mumps-5.0.2-spectrum-mpi-xl.patch', when='@5.0.2%xl^spectrum-mpi')
+ patch('mumps-5.0.2-spectrum-mpi-xl.patch', when='@5.0.2%xl_r^spectrum-mpi')
+ patch('mumps-5.1.1-spectrum-mpi-xl.patch', when='@5.1.1%xl^spectrum-mpi')
+ patch('mumps-5.1.1-spectrum-mpi-xl.patch', when='@5.1.1%xl_r^spectrum-mpi')
+
# this function is not a patch function because in case scalapack
# is needed it uses self.spec['scalapack'].fc_link set by the
# setup_dependent_environment in scalapck. This happen after patch
@@ -79,21 +85,16 @@ class Mumps(Package):
raise RuntimeError(
'You cannot use the variants parmetis or ptscotch without mpi')
- lapack_blas = (self.spec['lapack'].lapack_libs +
- self.spec['blas'].blas_libs)
- makefile_conf = ["LIBBLAS = %s" % lapack_blas.joined()]
+ lapack_blas = (self.spec['lapack'].libs +
+ self.spec['blas'].libs)
+ makefile_conf = ["LIBBLAS = %s" % lapack_blas.ld_flags]
orderings = ['-Dpord']
if '+ptscotch' in self.spec or '+scotch' in self.spec:
- join_lib = ' -l%s' % ('pt' if '+ptscotch' in self.spec else '')
makefile_conf.extend([
"ISCOTCH = -I%s" % self.spec['scotch'].prefix.include,
- "LSCOTCH = -L%s %s%s" % (self.spec['scotch'].prefix.lib,
- join_lib,
- join_lib.join(['esmumps',
- 'scotch',
- 'scotcherr']))
+ "LSCOTCH = {0}".format(self.spec['scotch'].libs.ld_flags)
])
orderings.append('-Dscotch')
@@ -122,31 +123,49 @@ class Mumps(Package):
# when building shared libs need -fPIC, otherwise
# /usr/bin/ld: graph.o: relocation R_X86_64_32 against `.rodata.str1.1'
# can not be used when making a shared object; recompile with -fPIC
- fpic = '-fPIC' if '+shared' in self.spec else ''
+ fpic = self.compiler.pic_flag if '+shared' in self.spec else ''
# TODO: test this part, it needs a full blas, scalapack and
# partitionning environment with 64bit integers
+
if '+int64' in self.spec:
- makefile_conf.extend(
- # the fortran compilation flags most probably are
- # working only for intel and gnu compilers this is
- # perhaps something the compiler should provide
- ['OPTF = %s -O -DALLOW_NON_INIT %s' % (fpic, '-fdefault-integer-8' if self.compiler.name == "gcc" else '-i8'), # noqa
- 'OPTL = %s -O ' % fpic,
- 'OPTC = %s -O -DINTSIZE64' % fpic])
+ if self.compiler.name == "xl" or self.compiler.name == "xl_r":
+ makefile_conf.extend(
+ ['OPTF = -O3',
+ 'OPTL = %s -O3' % fpic,
+ 'OPTC = %s -O3-DINTSIZE64' % fpic])
+ else:
+ makefile_conf.extend(
+ # the fortran compilation flags most probably are
+ # working only for intel and gnu compilers this is
+ # perhaps something the compiler should provide
+ ['OPTF = %s -O -DALLOW_NON_INIT %s' % (fpic, '-fdefault-integer-8' if self.compiler.name == "gcc" else '-i8'), # noqa
+ 'OPTL = %s -O ' % fpic,
+ 'OPTC = %s -O -DINTSIZE64' % fpic])
else:
- makefile_conf.extend(
- ['OPTF = %s -O -DALLOW_NON_INIT' % fpic,
- 'OPTL = %s -O ' % fpic,
- 'OPTC = %s -O ' % fpic])
+ if self.compiler.name == "xl" or self.compiler.name == "xl_r":
+ makefile_conf.extend(
+ ['OPTF = -O3 -qfixed',
+ 'OPTL = %s -O3' % fpic,
+ 'OPTC = %s -O3' % fpic])
+ else:
+ makefile_conf.extend(
+ ['OPTF = %s -O -DALLOW_NON_INIT' % fpic,
+ 'OPTL = %s -O ' % fpic,
+ 'OPTC = %s -O ' % fpic])
if '+mpi' in self.spec:
- scalapack = self.spec['scalapack'].scalapack_libs
+ scalapack = self.spec['scalapack'].libs
makefile_conf.extend(
- ["CC = %s" % join_path(self.spec['mpi'].prefix.bin, 'mpicc'),
- "FC = %s" % join_path(self.spec['mpi'].prefix.bin, 'mpif90'),
- "FL = %s" % join_path(self.spec['mpi'].prefix.bin, 'mpif90'),
+ ['CC = {0}'.format(self.spec['mpi'].mpicc),
+ 'FC = {0}'.format(self.spec['mpi'].mpifc),
"SCALAP = %s" % scalapack.ld_flags,
"MUMPS_TYPE = par"])
+ if (self.spec.satisfies('%xl_r' or '%xl')) and self.spec.satisfies('^spectrum-mpi'): # noqa
+ makefile_conf.extend(
+ ['FL = {0}'.format(self.spec['mpi'].mpicc)])
+ else:
+ makefile_conf.extend(
+ ['FL = {0}'.format(self.spec['mpi'].mpifc)])
else:
makefile_conf.extend(
["CC = cc",
@@ -156,13 +175,14 @@ class Mumps(Package):
# TODO: change the value to the correct one according to the
# compiler possible values are -DAdd_, -DAdd__ and/or -DUPPER
- if self.compiler.name == 'intel':
- # Intel Fortran compiler provides the main() function so
+ if self.compiler.name == 'intel' or self.compiler.name == 'pgi':
+ # Intel & PGI Fortran compiler provides the main() function so
# C examples linked with the Fortran compiler require a
# hack defined by _DMAIN_COMP (see examples/c_example.c)
makefile_conf.append("CDEFS = -DAdd_ -DMAIN_COMP")
else:
- makefile_conf.append("CDEFS = -DAdd_")
+ if self.compiler.name != "xl" and self.compiler.name != "xl_r":
+ makefile_conf.append("CDEFS = -DAdd_")
if '+shared' in self.spec:
if sys.platform == 'darwin':
@@ -179,6 +199,11 @@ class Mumps(Package):
'AR=$(FL) -shared -Wl,-soname -Wl,%s/$(notdir $@) -o' % prefix.lib, # noqa
'RANLIB=echo'
])
+
+ if self.compiler.name == 'xl' or self.compiler.name == 'xl_r':
+ makefile_conf.extend([
+ 'SAR=/bin/xlc -shared -Wl,-soname -Wl,%s/$(notdir $@) -o' % prefix.lib # noqa
+ ])
else:
makefile_conf.extend([
'LIBEXT = .a',
diff --git a/var/spack/repos/builtin/packages/munge/package.py b/var/spack/repos/builtin/packages/munge/package.py
index 38dbfa1cc1..f53fa5953e 100644
--- a/var/spack/repos/builtin/packages/munge/package.py
+++ b/var/spack/repos/builtin/packages/munge/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/muparser/package.py b/var/spack/repos/builtin/packages/muparser/package.py
index 1373c8cd7b..8c65207dc5 100644
--- a/var/spack/repos/builtin/packages/muparser/package.py
+++ b/var/spack/repos/builtin/packages/muparser/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/muscle/package.py b/var/spack/repos/builtin/packages/muscle/package.py
new file mode 100644
index 0000000000..7ba57284c6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/muscle/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Muscle(MakefilePackage):
+ """MUSCLE is one of the best-performing multiple alignment programs
+ according to published benchmark tests, with accuracy and speed
+ that are consistently better than CLUSTALW."""
+
+ homepage = "http://drive5.com/muscle/"
+ url = "http://www.drive5.com/muscle/muscle_src_3.8.1551.tar.gz"
+
+ version('3.8.1551', '1b7c9661f275a82d3cf708f923736bf8')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ makefile.filter('-static', '')
+ makefile.filter('-funroll-loops', '')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('muscle', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/muse/package.py b/var/spack/repos/builtin/packages/muse/package.py
new file mode 100644
index 0000000000..3c3616854e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/muse/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Muse(MakefilePackage):
+ """Somatic point mutation caller."""
+
+ homepage = "http://bioinformatics.mdanderson.org/main/MuSE"
+ url = "https://github.com/danielfan/MuSE/archive/v1.0-rc.tar.gz"
+
+ version('1.0-rc', 'c63fdb48c041f6f9545879f1a7e4da58')
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('MuSE', prefix.bin.MuSE)
diff --git a/var/spack/repos/builtin/packages/muster/package.py b/var/spack/repos/builtin/packages/muster/package.py
index 81817e48dc..d926c90d8e 100644
--- a/var/spack/repos/builtin/packages/muster/package.py
+++ b/var/spack/repos/builtin/packages/muster/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Muster(Package):
+class Muster(CMakePackage):
"""The Muster library provides implementations of sequential and
parallel K-Medoids clustering algorithms. It is intended as a
general framework for parallel cluster analysis, particularly
@@ -38,11 +38,6 @@ class Muster(Package):
version('1.0.1', 'd709787db7e080447afb6571ac17723c')
version('1.0', '2eec6979a4a36d3a65a792d12969be16')
- depends_on("boost")
- depends_on("mpi")
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- cmake(".", *std_cmake_args)
- make()
- make("install")
+ depends_on('boost')
+ depends_on('mpi')
+ depends_on('cmake@2.8:', type='build')
diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py
index 18f2ebe0bb..4454907b74 100644
--- a/var/spack/repos/builtin/packages/mvapich2/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,79 +22,90 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import sys
+
from spack import *
+from spack.error import SpackError
+
+
+def _process_manager_validator(values):
+ if len(values) > 1 and 'slurm' in values:
+ raise SpackError(
+ 'slurm cannot be activated along with other process managers'
+ )
-class Mvapich2(Package):
+class Mvapich2(AutotoolsPackage):
"""MVAPICH2 is an MPI implementation for Infiniband networks."""
homepage = "http://mvapich.cse.ohio-state.edu/"
url = "http://mvapich.cse.ohio-state.edu/download/mvapich/mv2/mvapich2-2.2.tar.gz"
+ list_url = "http://mvapich.cse.ohio-state.edu/downloads/"
- version('2.2', '939b65ebe5b89a5bc822cdab0f31f96e')
+ # Newer alpha release
+ version('2.3a', '87c3fbf8a755b53806fa9ecb21453445')
+
+ # Prefer the latest stable release
+ version('2.2', '939b65ebe5b89a5bc822cdab0f31f96e', preferred=True)
version('2.1', '0095ceecb19bbb7fb262131cb9c2cdd6')
version('2.0', '9fbb68a4111a8b6338e476dc657388b4')
version('1.9', '5dc58ed08fd3142c260b70fe297e127c')
patch('ad_lustre_rwcontig_open_source.patch', when='@1.9')
+ provides('mpi')
provides('mpi@:2.2', when='@1.9') # MVAPICH2-1.9 supports MPI 2.2
provides('mpi@:3.0', when='@2.0:') # MVAPICH2-2.0 supports MPI 3.0
variant('debug', default=False,
description='Enable debug info and error messages at run-time')
- ##########
- # TODO : Process managers should be grouped into the same variant,
- # as soon as variant capabilities will be extended See
- # https://groups.google.com/forum/#!topic/spack/F8-f8B4_0so
- SLURM = 'slurm'
- HYDRA = 'hydra'
- GFORKER = 'gforker'
- REMSHELL = 'remshell'
- SLURM_INCOMPATIBLE_PMS = (HYDRA, GFORKER, REMSHELL)
- variant(SLURM, default=False,
- description='Set slurm as the only process manager')
- variant(HYDRA, default=False,
- description='Set hydra as one of the process managers')
- variant(GFORKER, default=False,
- description='Set gforker as one of the process managers')
- variant(REMSHELL, default=False,
- description='Set remshell as one of the process managers')
- ##########
-
- ##########
- # TODO : Network types should be grouped into the same variant, as
- # soon as variant capabilities will be extended
- PSM = 'psm'
- SOCK = 'sock'
- NEMESISIBTCP = 'nemesisibtcp'
- NEMESISIB = 'nemesisib'
- NEMESIS = 'nemesis'
- MRAIL = 'mrail'
- SUPPORTED_NETWORKS = (PSM, SOCK, NEMESIS, NEMESISIB, NEMESISIBTCP)
- variant(
- PSM, default=False,
- description='Configure for QLogic PSM-CH3')
- variant(
- SOCK, default=False,
- description='Configure for TCP/IP-CH3')
- variant(
- NEMESISIBTCP, default=False,
- description='Configure for both OFA-IB-Nemesis and TCP/IP-Nemesis')
+ variant('cuda', default=False,
+ description='Enable CUDA extension')
+
+ # Accepted values are:
+ # single - No threads (MPI_THREAD_SINGLE)
+ # funneled - Only the main thread calls MPI (MPI_THREAD_FUNNELED)
+ # serialized - User serializes calls to MPI (MPI_THREAD_SERIALIZED)
+ # multiple - Fully multi-threaded (MPI_THREAD_MULTIPLE)
+ # runtime - Alias to "multiple"
variant(
- NEMESISIB, default=False,
- description='Configure for OFA-IB-Nemesis')
+ 'threads',
+ default='multiple',
+ values=('single', 'funneled', 'serialized', 'multiple'),
+ multi=False,
+ description='Control the level of thread support'
+ )
+
+ # 32 is needed when job size exceeds 32768 cores
variant(
- NEMESIS, default=False,
- description='Configure for TCP/IP-Nemesis')
+ 'ch3_rank_bits',
+ default='32',
+ values=('16', '32'),
+ multi=False,
+ description='Number of bits allocated to the rank field (16 or 32)'
+ )
+
variant(
- MRAIL, default=False,
- description='Configure for OFA-IB-CH3')
- ##########
+ 'process_managers',
+ description='List of the process managers to activate',
+ values=('slurm', 'hydra', 'gforker', 'remshell'),
+ multi=True,
+ validator=_process_manager_validator
+ )
- # FIXME : CUDA support is missing
- depends_on('bison')
- depends_on('libpciaccess')
+ variant(
+ 'fabrics',
+ description='The fabric enabled for this build',
+ default='psm',
+ values=(
+ 'psm', 'sock', 'nemesisib', 'nemesis', 'mrail', 'nemesisibtcp',
+ 'nemesistcpib'
+ )
+ )
+
+ depends_on('bison', type='build')
+ depends_on('libpciaccess', when=(sys.platform != 'darwin'))
+ depends_on('cuda', when='+cuda')
def url_for_version(self, version):
base_url = "http://mvapich.cse.ohio-state.edu/download"
@@ -103,113 +114,57 @@ class Mvapich2(Package):
else:
return "%s/mvapich/mv2/mvapich2-%s.tar.gz" % (base_url, version)
- @staticmethod
- def enabled(x):
- """Given a variant name returns the string that means the variant is
- enabled
-
- :param x: variant name
- :return:
- """
- return '+' + x
+ @property
+ def process_manager_options(self):
+ spec = self.spec
- def set_build_type(self, spec, configure_args):
- """Appends to configure_args the flags that depends only on the build
- type (i.e. release or debug)
+ other_pms = []
+ for x in ('hydra', 'gforker', 'remshell'):
+ if 'process_managers={0}'.format(x) in spec:
+ other_pms.append(x)
+ opts = ['--with-pm=%s' % ':'.join(other_pms)]
- :param spec: spec
- :param configure_args: list of current configure arguments
- """
- if '+debug' in spec:
- build_type_options = [
- "--disable-fast",
- "--enable-error-checking=runtime",
- "--enable-error-messages=all",
- # Permits debugging with TotalView
- "--enable-g=dbg", "--enable-debuginfo"
- ]
- else:
- build_type_options = ["--enable-fast=all"]
-
- configure_args.extend(build_type_options)
-
- def set_process_manager(self, spec, configure_args):
- """Appends to configure_args the flags that will enable the
- appropriate process managers
-
- :param spec: spec
- :param configure_args: list of current configure arguments
- """
- # Check that slurm variant is not activated together with
- # other pm variants
- has_slurm_incompatible_variants = \
- any(self.enabled(x) in spec
- for x in Mvapich2.SLURM_INCOMPATIBLE_PMS)
-
- if self.enabled(Mvapich2.SLURM) in spec and \
- has_slurm_incompatible_variants:
- raise RuntimeError(" %s : 'slurm' cannot be activated \
- together with other process managers" % self.name)
-
- process_manager_options = []
# See: http://slurm.schedmd.com/mpi_guide.html#mvapich2
- if self.enabled(Mvapich2.SLURM) in spec:
+ if 'process_managers=slurm' in spec:
if self.version > Version('2.0'):
- process_manager_options = [
- "--with-pmi=pmi2",
- "--with-pm=slurm"
+ opts = [
+ '--with-pmi=pmi2',
+ '--with-pm=slurm'
]
else:
- process_manager_options = [
- "--with-pmi=slurm",
- "--with-pm=no"
+ opts = [
+ '--with-pmi=slurm',
+ '--with-pm=no'
]
- elif has_slurm_incompatible_variants:
- pms = []
- # The variant name is equal to the process manager name in
- # the configuration options
- for x in Mvapich2.SLURM_INCOMPATIBLE_PMS:
- if self.enabled(x) in spec:
- pms.append(x)
- process_manager_options = [
- "--with-pm=%s" % ':'.join(pms)
- ]
- configure_args.extend(process_manager_options)
-
- def set_network_type(self, spec, configure_args):
- # Check that at most one variant has been activated
- count = 0
- for x in Mvapich2.SUPPORTED_NETWORKS:
- if self.enabled(x) in spec:
- count += 1
- if count > 1:
- raise RuntimeError('network variants are mutually exclusive \
- (only one can be selected at a time)')
-
- network_options = []
+ return opts
+
+ @property
+ def network_options(self):
+ opts = []
# From here on I can suppose that only one variant has been selected
- if self.enabled(Mvapich2.PSM) in spec:
- network_options = ["--with-device=ch3:psm"]
- elif self.enabled(Mvapich2.SOCK) in spec:
- network_options = ["--with-device=ch3:sock"]
- elif self.enabled(Mvapich2.NEMESISIBTCP) in spec:
- network_options = ["--with-device=ch3:nemesis:ib,tcp"]
- elif self.enabled(Mvapich2.NEMESISIB) in spec:
- network_options = ["--with-device=ch3:nemesis:ib"]
- elif self.enabled(Mvapich2.NEMESIS) in spec:
- network_options = ["--with-device=ch3:nemesis"]
- elif self.enabled(Mvapich2.MRAIL) in spec:
- network_options = ["--with-device=ch3:mrail", "--with-rdma=gen2"]
-
- configure_args.extend(network_options)
+ if 'fabrics=psm' in self.spec:
+ opts = ["--with-device=ch3:psm"]
+ elif 'fabrics=sock' in self.spec:
+ opts = ["--with-device=ch3:sock"]
+ elif 'fabrics=nemesistcpib' in self.spec:
+ opts = ["--with-device=ch3:nemesis:tcp,ib"]
+ elif 'fabrics=nemesisibtcp' in self.spec:
+ opts = ["--with-device=ch3:nemesis:ib,tcp"]
+ elif 'fabrics=nemesisib' in self.spec:
+ opts = ["--with-device=ch3:nemesis:ib"]
+ elif 'fabrics=nemesis' in self.spec:
+ opts = ["--with-device=ch3:nemesis"]
+ elif 'fabrics=mrail' in self.spec:
+ opts = ["--with-device=ch3:mrail", "--with-rdma=gen2"]
+ return opts
def setup_environment(self, spack_env, run_env):
- if self.enabled(Mvapich2.SLURM) in self.spec and \
- self.version > Version('2.0'):
+ spec = self.spec
+ if 'process_managers=slurm' in spec and spec.satisfies('@2.0:'):
run_env.set('SLURM_MPI_TYPE', 'pmi2')
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('MPICC', join_path(self.prefix.bin, 'mpicc'))
spack_env.set('MPICXX', join_path(self.prefix.bin, 'mpicxx'))
spack_env.set('MPIF77', join_path(self.prefix.bin, 'mpif77'))
@@ -221,7 +176,7 @@ class Mvapich2(Package):
spack_env.set('MPICH_F90', spack_fc)
spack_env.set('MPICH_FC', spack_fc)
- def setup_dependent_package(self, module, dep_spec):
+ def setup_dependent_package(self, module, dependent_spec):
self.spec.mpicc = join_path(self.prefix.bin, 'mpicc')
self.spec.mpicxx = join_path(self.prefix.bin, 'mpicxx')
self.spec.mpifc = join_path(self.prefix.bin, 'mpif90')
@@ -231,45 +186,53 @@ class Mvapich2(Package):
join_path(self.prefix.lib, 'libmpi.{0}'.format(dso_suffix))
]
- def install(self, spec, prefix):
+ @run_before('configure')
+ def die_without_fortran(self):
# Until we can pass variants such as +fortran through virtual
# dependencies depends_on('mpi'), require Fortran compiler to
# avoid delayed build errors in dependents.
if (self.compiler.f77 is None) or (self.compiler.fc is None):
- raise InstallError('Mvapich2 requires both C and Fortran ',
- 'compilers!')
-
- # we'll set different configure flags depending on our
- # environment
- configure_args = [
- "--prefix=%s" % prefix,
- "--enable-shared",
- "--enable-romio",
- "--disable-silent-rules",
+ raise InstallError(
+ 'Mvapich2 requires both C and Fortran compilers!'
+ )
+
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ '--enable-shared',
+ '--enable-romio',
+ '-disable-silent-rules',
+ '--enable-fortran=all',
+ "--enable-threads={0}".format(spec.variants['threads'].value),
+ "--with-ch3-rank-bits={0}".format(
+ spec.variants['ch3_rank_bits'].value),
]
- if self.compiler.f77 and self.compiler.fc:
- configure_args.append("--enable-fortran=all")
- elif self.compiler.f77:
- configure_args.append("--enable-fortran=f77")
- elif self.compiler.fc:
- configure_args.append("--enable-fortran=fc")
+ if '+debug' in self.spec:
+ args.extend([
+ '--disable-fast',
+ '--enable-error-checking=runtime',
+ '--enable-error-messages=all',
+ # Permits debugging with TotalView
+ '--enable-g=dbg',
+ '--enable-debuginfo'
+ ])
else:
- configure_args.append("--enable-fortran=none")
+ args.append('--enable-fast=all')
- # Set the type of the build (debug, release)
- self.set_build_type(spec, configure_args)
- # Set the process manager
- self.set_process_manager(spec, configure_args)
- # Determine network type by variant
- self.set_network_type(spec, configure_args)
-
- configure(*configure_args)
- make()
- make("install")
+ if '+cuda' in self.spec:
+ args.extend([
+ '--enable-cuda',
+ '--with-cuda={0}'.format(spec['cuda'].prefix)
+ ])
+ else:
+ args.append('--disable-cuda')
- self.filter_compilers()
+ args.extend(self.process_manager_options)
+ args.extend(self.network_options)
+ return args
+ @run_after('install')
def filter_compilers(self):
"""Run after install to make the MPI compilers use the
compilers that Spack built the package with.
@@ -279,10 +242,11 @@ class Mvapich2(Package):
be bound to whatever compiler they were built with.
"""
bin = self.prefix.bin
- mpicc = join_path(bin, 'mpicc')
+ mpicc = join_path(bin, 'mpicc')
mpicxx = join_path(bin, 'mpicxx')
mpif77 = join_path(bin, 'mpif77')
mpif90 = join_path(bin, 'mpif90')
+ mpifort = join_path(bin, 'mpifort')
# Substitute Spack compile wrappers for the real
# underlying compiler
@@ -291,8 +255,9 @@ class Mvapich2(Package):
filter_file(env['CXX'], self.compiler.cxx, mpicxx, **kwargs)
filter_file(env['F77'], self.compiler.f77, mpif77, **kwargs)
filter_file(env['FC'], self.compiler.fc, mpif90, **kwargs)
+ filter_file(env['FC'], self.compiler.fc, mpifort, **kwargs)
# Remove this linking flag if present
# (it turns RPATH into RUNPATH)
- for wrapper in (mpicc, mpicxx, mpif77, mpif90):
+ for wrapper in (mpicc, mpicxx, mpif77, mpif90, mpifort):
filter_file('-Wl,--enable-new-dtags', '', wrapper, **kwargs)
diff --git a/var/spack/repos/builtin/packages/mxml/package.py b/var/spack/repos/builtin/packages/mxml/package.py
index 29e3b27d6e..c1e0a8f968 100644
--- a/var/spack/repos/builtin/packages/mxml/package.py
+++ b/var/spack/repos/builtin/packages/mxml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,26 +25,32 @@
from spack import *
-class Mxml(Package):
+class Mxml(AutotoolsPackage):
"""Mini-XML is a small XML library that you can use to read and write XML
and XML-like data files in your application without requiring large
non-standard libraries.
"""
- homepage = "http://www.msweet.org"
- url = "http://www.msweet.org/files/project3/mxml-2.9.tar.gz"
+ homepage = "http://michaelrsweet.github.io/mxml/"
+ url = "https://github.com/michaelrsweet/mxml/releases/download/release-2.10/mxml-2.10.tar.gz"
+ version('2.10', '8804c961a24500a95690ef287d150abe')
version('2.9', 'e21cad0f7aacd18f942aa0568a8dee19')
version('2.8', 'd85ee6d30de053581242c4a86e79a5d2')
version('2.7', '76f2ae49bf0f5745d5cb5d9507774dc9')
version('2.6', '68977789ae64985dddbd1a1a1652642e')
version('2.5', 'f706377fba630b39fa02fd63642b17e5')
- # module swap PrgEnv-intel PrgEnv-$COMP
- # (Can use whatever compiler you want to use)
- # Case statement to change CC and CXX flags
+ def url_for_version(self, version):
+ if version <= Version('2.7'):
+ return 'https://github.com/michaelrsweet/mxml/archive/release-{0}.tar.gz'.format(version)
+ else:
+ return 'https://github.com/michaelrsweet/mxml/releases/download/release-{0}/mxml-{0}.tar.gz'.format(version)
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix, "--disable-shared", 'CFLAGS=-static')
- make()
- make("install")
+ def configure_args(self):
+ return [
+ # ADIOS build with -fPIC, so we need it too (avoid linkage issue)
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ # Default is non-shared, but avoid any future surprises
+ '--disable-shared',
+ ]
diff --git a/var/spack/repos/builtin/packages/mxnet/makefile.patch b/var/spack/repos/builtin/packages/mxnet/makefile.patch
new file mode 100644
index 0000000000..ceebe21447
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mxnet/makefile.patch
@@ -0,0 +1,81 @@
+From 22b64127d7acc9c255b007e120e2a721f4e136d2 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Fri, 18 Aug 2017 23:32:16 +0800
+Subject: [PATCH] Enable customize CUB MSHADOW PSLITE CUDA paths.
+
+---
+ Makefile | 26 +++++++++++++++++++++-----
+ 1 file changed, 21 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index c71cb13..a53d072 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,6 +14,19 @@ ifndef DMLC_CORE
+ DMLC_CORE = $(ROOTDIR)/dmlc-core
+ endif
+
++ifndef MSHADOW_PATH
++ MSHADOW_PATH = $(ROOTDIR)/mshadow
++endif
++ifneq ("$(wildcard $(MSHADOW_PATH)/include/mshadow/base.h)","")
++MSHADOW_INC = $(MSHADOW_PATH)/include
++else
++MSHADOW_INC = $(MSHADOW_PATH)
++endif
++
++ifndef PS_PATH
++ PS_PATH = $(ROOTDIR)/ps-lite
++endif
++
+ ifndef NNVM_PATH
+ NNVM_PATH = $(ROOTDIR)/nnvm
+ endif
+@@ -32,7 +45,7 @@ ifeq ($(USE_MKL2017), 1)
+ export USE_MKLML = $(lastword $(RETURN_STRING))
+ endif
+
+-include mshadow/make/mshadow.mk
++include $(MSHADOW_PATH)/make/mshadow.mk
+ include $(DMLC_CORE)/make/dmlc.mk
+
+ # all tge possible warning tread
+@@ -49,7 +62,7 @@ ifeq ($(DEBUG), 1)
+ else
+ CFLAGS += -O3 -DNDEBUG=1
+ endif
+-CFLAGS += -I$(ROOTDIR)/mshadow/ -I$(ROOTDIR)/dmlc-core/include -fPIC -I$(NNVM_PATH)/include -Iinclude $(MSHADOW_CFLAGS)
++CFLAGS += -I$(MSHADOW_INC) -I$(DMLC_CORE)/include -fPIC -I$(NNVM_PATH)/include -Iinclude $(MSHADOW_CFLAGS)
+ LDFLAGS = -pthread $(MSHADOW_LDFLAGS) $(DMLC_LDFLAGS)
+ ifeq ($(DEBUG), 1)
+ NVCCFLAGS = -std=c++11 -Xcompiler -D_FORCE_INLINES -g -G -O0 -ccbin $(CXX) $(MSHADOW_NVCCFLAGS)
+@@ -125,8 +138,11 @@ ifneq ($(USE_CUDA_PATH), NONE)
+ NVCC=$(USE_CUDA_PATH)/bin/nvcc
+ endif
+
++ifndef CUB_INCLUDE
++ CUB_PATH = $(ROOTDIR)/cub
++endif
++
+ # ps-lite
+-PS_PATH=$(ROOTDIR)/ps-lite
+ DEPS_PATH=$(shell pwd)/deps
+ include $(PS_PATH)/make/ps.mk
+ ifeq ($(USE_DIST_KVSTORE), 1)
+@@ -181,11 +197,11 @@ else
+ endif
+
+ # all dep
+-LIB_DEP += $(DMLC_CORE)/libdmlc.a $(NNVM_PATH)/lib/libnnvm.a
++LIB_DEP += $(DMLC_CORE)/lib/libdmlc.a $(NNVM_PATH)/lib/libnnvm.a
+ ALL_DEP = $(OBJ) $(EXTRA_OBJ) $(PLUGIN_OBJ) $(LIB_DEP)
+
+ ifeq ($(USE_CUDA), 1)
+- CFLAGS += -I$(ROOTDIR)/cub
++ CFLAGS += -I$(CUB_INCLUDE) -I$(USE_CUDA_PATH)/include -I$(CUDNN_PATH)/include
+ ALL_DEP += $(CUOBJ) $(EXTRA_CUOBJ) $(PLUGIN_CUOBJ)
+ LDFLAGS += -lcuda -lcufft
+ SCALA_PKG_PROFILE := $(SCALA_PKG_PROFILE)-gpu
+--
+1.8.3.1
+
diff --git a/var/spack/repos/builtin/packages/mxnet/package.py b/var/spack/repos/builtin/packages/mxnet/package.py
new file mode 100644
index 0000000000..00443ec633
--- /dev/null
+++ b/var/spack/repos/builtin/packages/mxnet/package.py
@@ -0,0 +1,101 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Mxnet(MakefilePackage):
+ """MXNet is a deep learning framework
+ designed for both efficiency and flexibility."""
+
+ homepage = "http://mxnet.io"
+ url = "https://github.com/apache/incubator-mxnet/archive/0.10.0.post2.tar.gz"
+
+ version('0.10.0.post2', '7819d511cf4a6efad681e6662fa966e4',
+ url="https://github.com/apache/incubator-mxnet/archive/0.10.0.post2.tar.gz")
+ version('0.10.0.post1', '16d540f407cd22285555b3ab22040032',
+ url="https://github.com/apache/incubator-mxnet/archive/v0.10.0.post1.tar.gz")
+ version('0.10.0', '2d0c83c33eda729932d620cca3078826',
+ url="https://github.com/apache/incubator-mxnet/archive/v0.10.0.tar.gz")
+
+ variant('cuda', default=False, description='Enable CUDA support')
+ variant('opencv', default=True, description='Enable OpenCV support')
+ variant('openmp', default=False, description='Enable OpenMP support')
+ variant('profiler', default=False, description='Enable Profiler (for verification and debug only).')
+
+ depends_on('dmlc-core@20170508')
+ depends_on('dmlc-core+openmp', when='+openmp')
+ depends_on('dmlc-core~openmp', when='~openmp')
+ depends_on('mshadow@20170721')
+ depends_on('ps-lite@20170328')
+ depends_on('nnvm~shared@20170418')
+ depends_on('openblas')
+ depends_on('cudnn', when='+cuda')
+ depends_on('cudnn', when='+cuda')
+ depends_on('cub', when='+cuda')
+ depends_on('opencv+core+imgproc+highgui+jpeg+png+tiff~eigen~ipp@3.0:', when='+opencv')
+
+ patch('makefile.patch', when='@0.10:0.11')
+
+ def build(self, spec, prefix):
+ filter_file('export CC = gcc', '', 'make/config.mk', string=True)
+ filter_file('export CXX = g++', '', 'make/config.mk', string=True)
+
+ args = [
+ 'CC=%s' % self.compiler.cc,
+ 'CXX=%s' % self.compiler.cxx,
+ 'DMLC_CORE=%s' % spec['dmlc-core'].prefix,
+ 'MSHADOW_PATH=%s' % spec['mshadow'].prefix,
+ 'PS_PATH=%s' % spec['ps-lite'].prefix,
+ 'NNVM_PATH=%s' % spec['nnvm'].prefix,
+ 'USE_OPENMP=%s' % ('1' if '+openmp' in spec else '0'),
+ 'USE_CUDA=%s' % ('1' if '+cuda' in spec else '0'),
+ 'USE_CUDNN=%s' % ('1' if '+cuda' in spec else '0'),
+ 'CUB_INCLUDE=%s' % spec['cub'].prefix.include,
+ 'USE_OPENCV=%s' % ('1' if '+opencv' in spec else '0'),
+ 'USE_PROFILER=%s' % ('1' if '+profiler' in spec else '0'),
+ ]
+
+ if '+opencv' in spec:
+ filter_file('$(shell pkg-config --cflags opencv)',
+ '-I%s' % spec['opencv'].prefix.include,
+ 'Makefile', string=True)
+ filter_file('$(filter-out -lopencv_ts, '
+ '$(shell pkg-config --libs opencv))',
+ '-lopencv_core -lopencv_imgproc -lopencv_imgcodecs',
+ 'Makefile', string=True)
+
+ # TODO: Add more BLAS support
+ args.append('USE_BLAS=openblas')
+
+ if '+cuda' in spec:
+ args.extend(['USE_CUDA_PATH=%s' % spec['cuda'].prefix,
+ 'CUDNN_PATH=%s' % spec['cudnn'].prefix])
+
+ make(*args)
+
+ def install(self, spec, prefix):
+ install_tree('include', prefix.include)
+ install_tree('lib', prefix.lib)
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/nag/package.py b/var/spack/repos/builtin/packages/nag/package.py
index 66cb2a6a54..226cd90353 100644
--- a/var/spack/repos/builtin/packages/nag/package.py
+++ b/var/spack/repos/builtin/packages/nag/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class Nag(Package):
"""The NAG Fortran Compiler."""
homepage = "http://www.nag.com/nagware/np.asp"
- version('6.1', 'f49bd548e0d5e2458b2dabb3ee01341a')
+ version('6.1', '0040d2254258223c78a6a4ab4829d7e0')
version('6.0', '3fa1e7f7b51ef8a23e6c687cdcad9f96')
# Licensing
@@ -54,3 +54,7 @@ class Nag(Package):
# Run install script
os.system('./INSTALLU.sh')
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('F77', join_path(self.prefix.bin, 'nagfor'))
+ run_env.set('FC', join_path(self.prefix.bin, 'nagfor'))
diff --git a/var/spack/repos/builtin/packages/nalu/package.py b/var/spack/repos/builtin/packages/nalu/package.py
new file mode 100644
index 0000000000..36dd317009
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nalu/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nalu(CMakePackage):
+ """Nalu: a generalized unstructured massively parallel low Mach flow code
+ designed to support a variety of energy applications of interest (most
+ notably Wind ECP) built on the Sierra Toolkit and Trilinos solver
+ Tpetra/Epetra stack
+ """
+
+ homepage = "https://github.com/NaluCFD/Nalu"
+ url = "https://github.com/NaluCFD/Nalu.git"
+
+ maintainers = ['jrood-nrel']
+
+ variant('openfast', default=False,
+ description='Compile with OpenFAST support')
+
+ version('master',
+ git='https://github.com/NaluCFD/Nalu.git', branch='master')
+
+ # Currently Nalu only builds static libraries; To be fixed soon
+ depends_on('yaml-cpp+pic~shared@0.5.3:')
+ depends_on('trilinos~shared+exodus+tpetra+muelu+belos+ifpack2+amesos2+zoltan+stk+boost~superlu-dist+superlu+hdf5+zlib+pnetcdf+shards@master,12.12.1:')
+ depends_on('openfast+cxx', when='+openfast')
+
+ def cmake_args(self):
+ spec = self.spec
+ options = []
+
+ options.extend([
+ '-DTrilinos_DIR:PATH=%s' % spec['trilinos'].prefix,
+ '-DYAML_DIR:PATH=%s' % spec['yaml-cpp'].prefix,
+ '-DENABLE_INSTALL:BOOL=ON'
+ ])
+
+ if '+openfast' in spec:
+ options.extend([
+ '-DOpenFAST_DIR:PATH=%s' % spec['openfast'].prefix
+ ])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/namd/package.py b/var/spack/repos/builtin/packages/namd/package.py
new file mode 100644
index 0000000000..54d165525b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/namd/package.py
@@ -0,0 +1,151 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import platform
+import shutil
+import sys
+import os
+from spack import *
+
+
+class Namd(MakefilePackage):
+ """NAMDis a parallel molecular dynamics code designed for
+ high-performance simulation of large biomolecular systems."""
+
+ homepage = "http://www.ks.uiuc.edu/Research/namd/"
+ url = "file://{0}/NAMD_2.12_Source.tar.gz".format(os.getcwd())
+
+ version('2.12', '2a1191909b1ab03bf0205971ad4d8ee9')
+
+ variant('fftw', default='3', values=('none', '2', '3', 'mkl'),
+ description='Enable the use of FFTW/FFTW3/MKL FFT')
+
+ variant('interface', default='none', values=('none', 'tcl', 'python'),
+ description='Enables TCL and/or python interface')
+
+ depends_on('charm')
+
+ depends_on('fftw@:2.99', when="fftw=2")
+ depends_on('fftw@3:', when="fftw=3")
+
+ depends_on('intel-mkl', when="fftw=mkl")
+
+ depends_on('tcl', when='interface=tcl')
+
+ depends_on('tcl', when='interface=python')
+ depends_on('python', when='interface=python')
+
+ def _copy_arch_file(self, lib):
+ config_filename = 'arch/{0}.{1}'.format(self.arch, lib)
+ shutil.copy('arch/Linux-x86_64.{0}'.format(lib),
+ config_filename)
+ if lib == 'tcl':
+ filter_file(r'-ltcl8\.5',
+ '-ltcl{0}'.format(self.spec['tcl'].version.up_to(2)),
+ config_filename)
+
+ def _append_option(self, opts, lib):
+ if lib != 'python':
+ self._copy_arch_file(lib)
+ spec = self.spec
+ opts.extend([
+ '--with-{0}'.format(lib),
+ '--{0}-prefix'.format(lib), spec[lib].prefix
+ ])
+
+ @property
+ def arch(self):
+ plat = sys.platform
+ if plat.startswith("linux"):
+ plat = "linux"
+ march = platform.machine()
+ return '{0}-{1}'.format(plat, march)
+
+ @property
+ def build_directory(self):
+ return '{0}-spack'.format(self.arch)
+
+ def edit(self, spec, prefix):
+ with working_dir('arch'):
+ with open('{0}.arch'.format(self.build_directory), 'w') as fh:
+ # this options are take from the default provided
+ # configuration files
+ optims_opts = {
+ 'gcc': '-m64 -O3 -fexpensive-optimizations -ffast-math',
+ 'intel': '-O2 -ip'
+ }
+
+ optim_opts = optims_opts[self.compiler.name] \
+ if self.compiler.name in optims_opts else ''
+
+ fh.write('\n'.join([
+ 'NAMD_ARCH = {0}'.format(self.arch),
+ 'CHARMARCH = ',
+ 'CXX = {0.cxx} {0.cxx11_flag}'.format(
+ self.compiler),
+ 'CXXOPTS = {0}'.format(optim_opts),
+ 'CC = {0}'.format(self.compiler.cc),
+ 'COPTS = {0}'.format(optim_opts),
+ ''
+ ]))
+
+ self._copy_arch_file('base')
+
+ opts = ['--charm-base', spec['charm'].prefix]
+ fftw_version = spec.variants['fftw'].value
+ if fftw_version == 'none':
+ opts.append('--without-fftw')
+ elif fftw_version == 'mkl':
+ self._append_option(opts, 'mkl')
+ else:
+ _fftw = 'fftw{0}'.format('' if fftw_version == '2' else '3')
+
+ self._copy_arch_file(_fftw)
+ opts.extend(['--with-{0}'.format(_fftw),
+ '--fftw-prefix', spec['fftw'].prefix])
+
+ interface_type = spec.variants['interface'].value
+ if interface_type != 'none':
+ self._append_option(opts, 'tcl')
+
+ if interface_type == 'python':
+ self._append_option(opts, 'python')
+ else:
+ opts.extend([
+ '--without-tcl',
+ '--without-python'
+ ])
+
+ config = Executable('./config')
+
+ config(self.build_directory, *opts)
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ mkdirp(prefix.bin)
+ install('namd2', prefix.bin)
+
+ # I'm not sure this is a good idea or if an autoload of the charm
+ # module would not be better.
+ install('charmrun', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/nano/package.py b/var/spack/repos/builtin/packages/nano/package.py
index 3e87ec8ffe..200c47a7b3 100644
--- a/var/spack/repos/builtin/packages/nano/package.py
+++ b/var/spack/repos/builtin/packages/nano/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Nano(Package):
+class Nano(AutotoolsPackage):
"""Tiny little text editor"""
homepage = "http://www.nano-editor.org"
@@ -34,7 +34,4 @@ class Nano(Package):
version('2.6.3', '1213c7f17916e65afefc95054c1f90f9')
version('2.6.2', '58568a4b8a33841d774c25f285fc11c1')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make('install')
+ depends_on('ncurses')
diff --git a/var/spack/repos/builtin/packages/nanoflann/package.py b/var/spack/repos/builtin/packages/nanoflann/package.py
new file mode 100644
index 0000000000..13c5797d69
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nanoflann/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nanoflann(CMakePackage):
+ """a C++ header-only library for Nearest Neighbor (NN) search wih KD-trees.
+ """
+
+ homepage = "https://github.com/jlblancoc/nanoflann"
+ url = "https://github.com/jlblancoc/nanoflann/archive/v1.2.3.tar.gz"
+
+ version('1.2.3', '92a0f44a631c41aa06f9716c51dcdb11')
+
+ def cmake_args(self):
+ args = ['-DBUILD_SHARED_LIBS=ON']
+ return args
diff --git a/var/spack/repos/builtin/packages/nasm/package.py b/var/spack/repos/builtin/packages/nasm/package.py
index 9faccccaae..2979ad43f5 100644
--- a/var/spack/repos/builtin/packages/nasm/package.py
+++ b/var/spack/repos/builtin/packages/nasm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Nasm(Package):
+class Nasm(AutotoolsPackage):
"""NASM (Netwide Assembler) is an 80x86 assembler designed for
portability and modularity. It includes a disassembler as well."""
homepage = "http://www.nasm.us"
url = "http://www.nasm.us/pub/nasm/releasebuilds/2.11.06/nasm-2.11.06.tar.xz"
version('2.11.06', '2b958e9f5d200641e6fc9564977aecc5')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/nauty/package.py b/var/spack/repos/builtin/packages/nauty/package.py
index 0d5eed251b..ef032ad7c9 100644
--- a/var/spack/repos/builtin/packages/nauty/package.py
+++ b/var/spack/repos/builtin/packages/nauty/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,67 +23,72 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import shutil
+import os
from spack import *
-class Nauty(Package):
+class Nauty(AutotoolsPackage):
"""nauty and Traces are programs for computing automorphism groups of
graphsq and digraphs"""
homepage = "http://pallini.di.uniroma1.it/index.html"
url = "http://pallini.di.uniroma1.it/nauty26r7.tar.gz"
version('2.6r7', 'b2b18e03ea7698db3fbe06c5d76ad8fe')
- version('2.6r5', '91b03a7b069962e94fc9aac8831ce8d2')
- version('2.5r9', 'e8ecd08b0892a1fb13329c147f08de6d')
+
+ # Debian/ Fedora patches for @2.6r7:
+ urls_for_patches = {
+ '@2.6r7': [
+ # Debian patch to fix the gt_numorbits declaration
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-fix-gt_numorbits.patch',
+ 'c8e4546a7b262c92cee226beb1dc71d87d644b115375e9c8550598efcc00254f'),
+ # Debian patch to add explicit extern declarations where needed
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-fix-include-extern.patch',
+ 'c52c62e4dc46532ad89632a3f59a9faf13dd7988e9ef29fc5e5b2a3e17449bb6'),
+ # Debian patch to use zlib instead of invoking zcat through a pipe
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-zlib-blisstog.patch',
+ 'b1210bfb41ddbeb4c956d660266f62e806026a559a4700ce78024a9db2b82168'),
+ # Debian patch to improve usage and help information
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-help2man.patch',
+ 'c11544938446a3eca70d55b0f1084ce56fb1fb415db1ec1b5a69fd310a02b16c'),
+ # Debian patch to add libtool support for building a shared library
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-autotoolization.patch',
+ '7f60ae3d8aeee830306db991c908efae461f103527a7899ce79d936bb15212b5'),
+ # Debian patch to canonicalize header file usage
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-includes.patch',
+ '9a305f0cd3f1136a9885518bd7912c669d1ca4b2b43bd039d6fc5535b9679778'),
+ # Debian patch to prefix "nauty-" to the names of the generic tools
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-tool-prefix.patch',
+ '736266813a62b3151e0b81ded6578bd0f53f03fc8ffbc54c7c2a2c64ac07b25f'),
+ # Fedora patch to detect availability of the popcnt
+ # instruction at runtime
+ ('https://src.fedoraproject.org/rpms/nauty/raw/0f07d01caf84e9d30cb06b11af4860dd3837636a/f/nauty-popcnt.patch',
+ '0dc2e0374491dddf5757f0717d0ea3f949f85b540202385662f10c358b4a08e8')
+ ]
+ }
+ # Iterate over patches
+ for condition, urls in urls_for_patches.items():
+ for url, sha256 in urls:
+ patch(url, when=condition, level=1, sha256=sha256)
+
+ depends_on('m4', type='build', when='@2.6r7')
+ depends_on('autoconf', type='build', when='@2.6r7')
+ depends_on('automake', type='build', when='@2.6r7')
+ depends_on('libtool', type='build', when='@2.6r7')
+ depends_on('pkg-config', type='build')
+ depends_on('help2man', type='build')
+ depends_on('zlib')
+ depends_on('gmp')
+
+ @property
+ def force_autoreconf(self):
+ return self.spec.satisfies('@2.6r7')
def url_for_version(self, version):
url = "http://pallini.di.uniroma1.it/nauty{0}.tar.gz"
return url.format(version.joined)
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
-
- exes = [
- "NRswitchg",
- "addedgeg",
- "amtog",
- "biplabg",
- "catg",
- "complg",
- "converseg",
- "copyg",
- "countg",
- "cubhamg",
- "deledgeg",
- "delptg",
- "directg",
- "dreadnaut",
- "dretodot",
- "dretog",
- "genbg",
- "genbgL",
- "geng",
- "genquarticg",
- "genrang",
- "genspecialg",
- "gentourng",
- "gentreeg",
- "hamheuristic",
- "labelg",
- "linegraphg",
- "listg",
- "multig",
- "newedgeg",
- "pickg",
- "planarg",
- "ranlabg",
- "shortg",
- "subdivideg",
- "twohamg",
- "vcolg",
- "watercluster2"]
- mkdirp(prefix.bin)
- for exe in exes:
- shutil.copyfile(exe, join_path(prefix.bin, exe))
+ def patch(self):
+ os.remove('makefile')
+ ver = str(self.version.dotted).replace('r', '.')
+ if self.spec.satisfies('@2.6r7'):
+ filter_file('@INJECTVER@', ver, "configure.ac")
diff --git a/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
new file mode 100644
index 0000000000..57b918cde8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncbi-rmblastn/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class NcbiRmblastn(AutotoolsPackage):
+ """RMBlast search engine for NCBI"""
+
+ homepage = "https://www.ncbi.nlm.nih.gov/"
+ url = "ftp://ftp.ncbi.nlm.nih.gov/blast/executables/rmblast/LATEST/ncbi-rmblastn-2.2.28-src.tar.gz"
+
+ version('2.2.28', 'fb5f4e2e02ffcb1b17af2e9f206c5c22')
+
+ configure_directory = 'c++'
diff --git a/var/spack/repos/builtin/packages/nccl/package.py b/var/spack/repos/builtin/packages/nccl/package.py
new file mode 100644
index 0000000000..e1ac486e16
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nccl/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nccl(MakefilePackage):
+ """Optimized primitives for collective multi-GPU communication."""
+
+ homepage = "https://github.com/NVIDIA/nccl"
+ url = "https://github.com/NVIDIA/nccl/archive/v1.3.4-1.tar.gz"
+
+ version('1.3.4-1', '5b9ce7fbdce0fde68e0f66318e6ff422')
+ version('1.3.0-1', 'f6fb1d56913a7d212ca0c300e76f01fb')
+
+ depends_on('cuda')
+
+ @property
+ def build_targets(self):
+ return ['CUDA_HOME={0}'.format(self.spec['cuda'].prefix)]
+
+ @property
+ def install_targets(self):
+ return ['PREFIX={0}'.format(self.prefix), 'install']
diff --git a/var/spack/repos/builtin/packages/nccmp/package.py b/var/spack/repos/builtin/packages/nccmp/package.py
index d59ca09381..e710faa034 100644
--- a/var/spack/repos/builtin/packages/nccmp/package.py
+++ b/var/spack/repos/builtin/packages/nccmp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/ncdu/package.py b/var/spack/repos/builtin/packages/ncdu/package.py
index 0842a592cc..a95fc5b1ca 100644
--- a/var/spack/repos/builtin/packages/ncdu/package.py
+++ b/var/spack/repos/builtin/packages/ncdu/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/ncftp/package.py b/var/spack/repos/builtin/packages/ncftp/package.py
new file mode 100644
index 0000000000..704affdad3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncftp/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ncftp(AutotoolsPackage):
+ """NcFTP Client is a set of application programs implementing the
+ File Transfer Protocol."""
+
+ homepage = "http://www.ncftp.com/"
+ url = "ftp://ftp.ncftp.com/ncftp/ncftp-3.2.6-src.tar.gz"
+
+ version('3.2.6', 'e7cce57ef6274d4c7433ffe28ffe0a71')
+
+ depends_on('ncurses')
diff --git a/var/spack/repos/builtin/packages/ncl/hdf5.patch b/var/spack/repos/builtin/packages/ncl/hdf5.patch
new file mode 100644
index 0000000000..ff8b586b4f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncl/hdf5.patch
@@ -0,0 +1,11 @@
+--- a/ni/src/ncl/NclNewHDF5.c 2017-04-05 12:57:52.311104685 +0200
++++ b/ni/src/ncl/NclNewHDF5.c 2017-04-05 12:58:17.634551443 +0200
+@@ -35,6 +35,8 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
++#define H5_USE_18_API
++
+ #include <hdf5.h>
+
+ #ifdef NIO_LIB_ONLY
diff --git a/var/spack/repos/builtin/packages/ncl/package.py b/var/spack/repos/builtin/packages/ncl/package.py
index 7d31c7a8f7..25b903e4c7 100644
--- a/var/spack/repos/builtin/packages/ncl/package.py
+++ b/var/spack/repos/builtin/packages/ncl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import glob
import os
import shutil
import tempfile
@@ -36,11 +37,15 @@ class Ncl(Package):
homepage = "https://www.ncl.ucar.edu"
- version('6.3.0', '4834df63d3b56778441246303ab921c4',
- url='https://www.earthsystemgrid.org/download/fileDownload.html?'
- 'logicalFileId=bec58cb3-cd9b-11e4-bb80-00c0f03d5b7c',
+ version('6.4.0', 'a981848ddcaf1c263279648265f24766',
+ url='https://www.earthsystemgrid.org/download/fileDownload.html?logicalFileId=86b9bec2-fa01-11e6-a976-00c0f03d5b7c',
extension='tar.gz')
+
patch('spack_ncl.patch')
+ # Make ncl compile with hdf5 1.10
+ patch('hdf5.patch')
+ # ymake-filter's buffer may overflow
+ patch('ymake-filter.patch')
# This installation script is implemented according to this manual:
# http://www.ncl.ucar.edu/Download/build_from_src.shtml
@@ -54,17 +59,35 @@ class Ncl(Package):
# Non-optional dependencies according to the manual:
depends_on('jpeg')
depends_on('netcdf')
- depends_on('cairo')
+ depends_on('cairo+X')
+
+ # Extra dependencies that may be missing from build system:
+ depends_on('bison', type='build')
+ depends_on('flex+lex')
+ depends_on('libiconv')
+ depends_on('tcsh')
# Also, the manual says that ncl requires zlib, but that comes as a
# mandatory dependency of libpng, which is a mandatory dependency of cairo.
+ # The following dependencies are required, otherwise several components
+ # fail to compile:
+ depends_on('curl')
+ depends_on('libiconv')
+ depends_on('libx11')
+ depends_on('libxaw')
+ depends_on('libxmu')
+
# In Spack, we do not have an option to compile netcdf without netcdf-4
# support, so we will tell the ncl configuration script that we want
# support for netcdf-4, but the script assumes that hdf5 is compiled with
# szip support. We introduce this restriction with the following dependency
# statement.
- depends_on('hdf5@:1.8+szip')
+ depends_on('hdf5+szip')
+ depends_on('szip')
+
+ # ESMF is only required at runtime (for ESMF_regridding.ncl)
+ depends_on('esmf', type='run')
# In Spack, we also do not have an option to compile netcdf without DAP
# support, so we will tell the ncl configuration script that we have it.
@@ -83,6 +106,23 @@ class Ncl(Package):
placement='triangle_src',
when='+triangle')
+ def patch(self):
+ # Make configure scripts use Spack's tcsh
+ files = ['Configure'] + glob.glob('config/*')
+
+ filter_file('^#!/bin/csh -f', '#!/usr/bin/env csh', *files)
+
+ @run_before('install')
+ def filter_sbang(self):
+ # Filter sbang before install so Spack's sbang hook can fix it up
+ files = glob.glob('ncarg2d/src/bin/scripts/*')
+ files += glob.glob('ncarview/src/bin/scripts/*')
+ files += glob.glob('ni/src/scripts/*')
+
+ csh = join_path(self.spec['tcsh'].prefix.bin, 'csh')
+
+ filter_file('^#!/bin/csh', '#!{0}'.format(csh), *files)
+
def install(self, spec, prefix):
if (self.compiler.fc is None) or (self.compiler.cc is None):
@@ -108,7 +148,7 @@ class Ncl(Package):
if self.compiler.name == 'gcc':
fc_flags.append('-fno-range-check')
- c2f_flags.extend(['-lgfortran'])
+ c2f_flags.extend(['-lgfortran', '-lm'])
elif self.compiler.name == 'intel':
fc_flags.append('-fp-model precise')
cc_flags.append('-fp-model precise')
@@ -149,7 +189,7 @@ class Ncl(Package):
# Parent installation directory :
'\'' + self.spec.prefix + '\'\n',
# System temp space directory :
- '\'' + tempfile.mkdtemp(prefix='ncl_ncar_') + '\'\n',
+ '\'' + tempfile.gettempdir() + '\'\n',
# Build NetCDF4 feature support (optional)?
'y\n'
]
@@ -180,6 +220,8 @@ class Ncl(Package):
'y\n',
# Build GDAL support (optional) into NCL?
'y\n' if '+gdal' in self.spec else 'n\n',
+ # Build EEMD support (optional) into NCL?
+ 'n\n',
# Build Udunits-2 support (optional) into NCL?
'y\n' if '+uduints2' in self.spec else 'n\n',
# Build Vis5d+ support (optional) into NCL?
@@ -228,6 +270,6 @@ class Ncl(Package):
if os.path.exists(filename):
try:
os.remove(filename)
- except OSError, e:
+ except OSError as e:
raise InstallError('Failed to delete file %s: %s' % (
e.filename, e.strerror))
diff --git a/var/spack/repos/builtin/packages/ncl/ymake-filter.patch b/var/spack/repos/builtin/packages/ncl/ymake-filter.patch
new file mode 100644
index 0000000000..915e82035f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncl/ymake-filter.patch
@@ -0,0 +1,33 @@
+--- ncl_ncarg-6.4.0/config/ymake-filter.c.orig 2017-02-23 20:11:55.000000000 +0100
++++ ncl_ncarg-6.4.0/config/ymake-filter.c 2017-09-13 14:52:34.800989229 +0200
+@@ -150,13 +150,29 @@
+ getcppline()
+ {
+ int c;
+- static char buf[2048];
++ static int s = 2048;
++ static char *buf = NULL;
+ char *p;
+
++ if (buf == NULL)
++ {
++ buf = malloc(s);
++ }
++
+ p = buf;
+
+ do
+ {
++ if (p >= buf + s)
++ {
++ char* old = buf;
++
++ /* Need to increase the size of buf. */
++ s += 1024;
++ buf = realloc(buf, s);
++ p = buf + (p - old);
++ }
++
+ switch(c = getchar())
+ {
+ /*
diff --git a/var/spack/repos/builtin/packages/nco/NUL-0-NULL.patch b/var/spack/repos/builtin/packages/nco/NUL-0-NULL.patch
new file mode 100644
index 0000000000..b1d17c0ecc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nco/NUL-0-NULL.patch
@@ -0,0 +1,51 @@
+From fec59e92795bfac5779d09cd5d96f10cd1c3e6af Mon Sep 17 00:00:00 2001
+From: Charlie Zender <zender@uci.edu>
+Date: Thu, 1 Jun 2017 20:18:02 -0700
+Subject: [PATCH] Patch for NUL = '\0' != NULL errors in ncap2 supplied by
+ Manfred Schwarb
+
+---
+ src/nco++/fmc_all_cls.cc | 8 ++++----
+ 2 files changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/src/nco++/fmc_all_cls.cc b/src/nco++/fmc_all_cls.cc
+index 3cccc17..79e3240 100644
+--- a/src/nco++/fmc_all_cls.cc
++++ b/src/nco++/fmc_all_cls.cc
+@@ -4796,14 +4796,14 @@ var_sct *vlist_cls::push_fnd(bool &is_mtd, std::vector<RefAST> &vtr_args, fmc_cl
+ {
+ case PATOI:
+ {
+- char *pend='\0';
++ char *pend=NULL;
+ nco_int iout;
+ iout=0;
+
+ // allows whites space prefix & suffix
+ iout=(nco_int)std::strtol(buffer,&pend,10);
+
+- if( pend !=buffer && (*pend=='\0'|| *pend==' ') )
++ if(pend != buffer && (*pend == '\0'|| *pend == ' '))
+ ierr=0;
+ else
+ ierr=errno;
+@@ -4817,14 +4817,14 @@ var_sct *vlist_cls::push_fnd(bool &is_mtd, std::vector<RefAST> &vtr_args, fmc_cl
+
+ case PATOL:
+ {
+- char *pend='\0';
++ char *pend=NULL;
+ nco_int64 lout;
+ lout=0;
+
+ // allows whites space prefix & suffix
+ lout=(nco_int64)std::strtoll(buffer,&pend,10);
+
+- if( pend !=buffer && (*pend=='\0'|| *pend==' ') )
++ if( pend !=buffer && (*pend == '\0' || *pend == ' '))
+ ierr=0;
+ else
+ ierr=errno;
+--
+2.7.4
+
diff --git a/var/spack/repos/builtin/packages/nco/package.py b/var/spack/repos/builtin/packages/nco/package.py
index acd96f5e9c..2aea5aed2c 100644
--- a/var/spack/repos/builtin/packages/nco/package.py
+++ b/var/spack/repos/builtin/packages/nco/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,13 +30,20 @@ class Nco(AutotoolsPackage):
netCDF-accessible formats"""
homepage = "http://nco.sourceforge.net/"
- url = "https://github.com/nco/nco/archive/4.6.2.tar.gz"
+ url = "https://github.com/nco/nco/archive/4.6.7.tar.gz"
+ version('4.6.7', 'b04c92aa715d3fad3ebebd1fd178ce32')
+ version('4.6.6', 'df6fa47aaf6e41adfc0631912a7a341f')
+ version('4.6.5', '2afd34a6bb5ff6c7ed39cf40c917b6e4')
+ version('4.6.4', '22f4e779d0011a9c0db90fda416c8e45')
version('4.6.3', '0e1d6616c65ed3a30c54cc776da4f987')
version('4.6.2', 'b7471acf0cc100343392f4171fb56113')
version('4.6.1', 'ef43cc989229c2790a9094bd84728fd8')
version('4.5.5', '9f1f1cb149ad6407c5a03c20122223ce')
+ # https://github.com/nco/nco/issues/43
+ patch('NUL-0-NULL.patch')
+
variant('doc', default=False, description='Build/install NCO TexInfo-based documentation')
# See "Compilation Requirements" at:
diff --git a/var/spack/repos/builtin/packages/ncurses/package.py b/var/spack/repos/builtin/packages/ncurses/package.py
index e4fd5bf269..06ffc0b650 100644
--- a/var/spack/repos/builtin/packages/ncurses/package.py
+++ b/var/spack/repos/builtin/packages/ncurses/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,16 +23,18 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from glob import glob
+from os.path import exists, join
+from os import makedirs
+from shutil import copy
-class Ncurses(Package):
+class Ncurses(AutotoolsPackage):
"""The ncurses (new curses) library is a free software emulation of
- curses in System V Release 4.0, and more. It uses terminfo format,
- supports pads and color and multiple highlights and forms
- characters and function-key mapping, and has all the other
- SYSV-curses enhancements over BSD curses.
-
- """
+ curses in System V Release 4.0, and more. It uses terminfo format,
+ supports pads and color and multiple highlights and forms
+ characters and function-key mapping, and has all the other
+ SYSV-curses enhancements over BSD curses."""
homepage = "http://invisible-island.net/ncurses/ncurses.html"
url = "http://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.0.tar.gz"
@@ -40,20 +42,67 @@ class Ncurses(Package):
version('6.0', 'ee13d052e1ead260d7c28071f46eefb1')
version('5.9', '8cb9c412e5f2d96bc6f459aa8c6282a1')
- patch('patch_gcc_5.txt', when='%gcc@5.0:')
+ variant('symlinks', default=False,
+ description='Enables symlinks. Needed on AFS filesystem.')
- def install(self, spec, prefix):
+ depends_on('pkg-config', type='build')
+
+ patch('patch_gcc_5.txt', when='@6.0%gcc@5.0:')
+ patch('sed_pgi.patch', when='@:6.0')
+
+ def configure(self, spec, prefix):
opts = [
- "--prefix=%s" % prefix,
- "--with-shared",
- "--with-cxx-shared",
- "--enable-widec",
- "--enable-overwrite",
- "--disable-lib-suffixes",
- "--without-ada",
- "--enable-pc-files",
- "--with-pkg-config-libdir={0}/lib/pkgconfig".format(prefix)
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ 'CXXFLAGS={0}'.format(self.compiler.pic_flag),
+ '--with-shared',
+ '--with-cxx-shared',
+ '--enable-overwrite',
+ '--without-ada',
+ '--enable-pc-files',
+ '--with-pkg-config-libdir={0}/lib/pkgconfig'.format(self.prefix)
]
- configure(*opts)
- make()
- make("install")
+
+ nwide_opts = ['--disable-widec',
+ '--without-manpages',
+ '--without-tests']
+
+ wide_opts = ['--enable-widec']
+
+ if '+symlinks' in self.spec:
+ opts.append('--enable-symlinks')
+
+ prefix = '--prefix={0}'.format(prefix)
+
+ configure = Executable('../configure')
+
+ with working_dir('build_ncurses', create=True):
+ configure(prefix, *(opts + nwide_opts))
+
+ with working_dir('build_ncursesw', create=True):
+ configure(prefix, *(opts + wide_opts))
+
+ def build(self, spec, prefix):
+ with working_dir('build_ncurses'):
+ make()
+ with working_dir('build_ncursesw'):
+ make()
+
+ def install(self, spec, prefix):
+ with working_dir('build_ncurses'):
+ make('install')
+ with working_dir('build_ncursesw'):
+ make('install')
+
+ # fix for packages like hstr that use "#include <ncurses/ncurses.h>"
+ headers = glob(join(prefix.include, '*'))
+ for p_dir in ['ncurses', 'ncursesw']:
+ path = join(prefix.include, p_dir)
+ if not exists(path):
+ makedirs(path)
+ for header in headers:
+ copy(header, path)
+
+ @property
+ def libs(self):
+ return find_libraries(
+ ['libncurses', 'libncursesw'], root=self.prefix, recurse=True)
diff --git a/var/spack/repos/builtin/packages/ncurses/sed_pgi.patch b/var/spack/repos/builtin/packages/ncurses/sed_pgi.patch
new file mode 100644
index 0000000000..f51b96c521
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ncurses/sed_pgi.patch
@@ -0,0 +1,11 @@
+--- a/ncurses/tty/MKexpanded.sh 2017-02-12 09:09:33.828954282 -0600
++++ b/ncurses/tty/MKexpanded.sh 2017-02-12 09:11:03.430673306 -0600
+@@ -125,7 +125,7 @@
+ EOF
+
+ $preprocessor $TMP 2>/dev/null | \
+- sed -e '1,/^IGNORE$/d' -e 's/^@/#/' -e 's/^#if_/#if /'
++ sed -e '1,/^IGNORE$/d' -e 's/^@/#/' -e 's/^#[ ]*if_/#if /'
+
+ cat <<EOF
+ #else /* ! NCURSES_EXPANDED */
diff --git a/var/spack/repos/builtin/packages/ncview/package.py b/var/spack/repos/builtin/packages/ncview/package.py
index 5c3cf300d2..5dd160e50c 100644
--- a/var/spack/repos/builtin/packages/ncview/package.py
+++ b/var/spack/repos/builtin/packages/ncview/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Ncview(Package):
+class Ncview(AutotoolsPackage):
"""Simple viewer for NetCDF files."""
homepage = "http://meteora.ucsd.edu/~pierce/ncview_home_page.html"
url = "ftp://cirrus.ucsd.edu/pub/ncview/ncview-2.1.7.tar.gz"
@@ -37,8 +37,12 @@ class Ncview(Package):
depends_on('libpng')
depends_on('libxaw')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
+ def configure_args(self):
+ spec = self.spec
- make()
- make('install')
+ config_args = []
+
+ if spec.satisfies('^netcdf+mpi'):
+ config_args.append('CC={0}'.format(spec['mpi'].mpicc))
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/ndiff/package.py b/var/spack/repos/builtin/packages/ndiff/package.py
index dc41add03f..176a3463d3 100644
--- a/var/spack/repos/builtin/packages/ndiff/package.py
+++ b/var/spack/repos/builtin/packages/ndiff/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/nekbone/package.py b/var/spack/repos/builtin/packages/nekbone/package.py
new file mode 100644
index 0000000000..3d419b9156
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nekbone/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Nekbone(Package):
+ """NEK5000 emulation software called NEKbone. Nekbone captures the basic
+ structure and user interface of the extensive Nek5000 software.
+ Nek5000 is a high order, incompressible Navier-Stokes solver based on
+ the spectral element method."""
+
+ homepage = "https://github.com/Nek5000/Nekbone"
+ url = "https://github.com/Nek5000/Nekbone/tarball/v17.0"
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('17.0', 'cc339684547614a0725959e41839fec1')
+ version('develop', git='https://github.com/Nek5000/Nekbone.git')
+
+ depends_on('mpi')
+
+ def install(self, spec, prefix):
+
+ working_dirs = ['example1', 'example2', 'example3', 'nek_comm',
+ 'nek_delay', 'nek_mgrid']
+ mkdir(prefix.bin)
+
+ for wdir in working_dirs:
+ with working_dir('test/' + wdir):
+ makenec = FileFilter('makenek')
+ makenec.filter('CC.*', 'CC=' + self.spec['mpi'].mpicc)
+ makenec.filter('FF77.*', 'FF77=' + self.spec['mpi'].mpif77)
+ makenek = Executable('./makenek')
+ path = join_path(prefix.bin, wdir)
+ makenek('ex1', '../../src')
+ mkdir(path)
+ install('nekbone', path)
+ install('nekpmpi', path)
+ install('data.rea', path)
+ install('SIZE', path)
+ install('README', path)
diff --git a/var/spack/repos/builtin/packages/neovim/package.py b/var/spack/repos/builtin/packages/neovim/package.py
new file mode 100644
index 0000000000..0f26daf83f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/neovim/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Neovim(CMakePackage):
+ """NeoVim: the future of vim"""
+
+ homepage = "http://neovim.io"
+ url = "https://github.com/neovim/neovim/archive/v0.2.0.tar.gz"
+
+ version('0.2.0', '9af7f61f9f0b1a2891147a479d185aa2')
+
+ depends_on('lua@5.1:5.2')
+ depends_on('lua-lpeg')
+ depends_on('lua-mpack')
+ depends_on('lua-bitlib')
+ depends_on('libuv')
+ depends_on('jemalloc')
+ depends_on('libtermkey')
+ depends_on('libvterm')
+ depends_on('unibilium')
+ depends_on('msgpack-c')
+
+ def cmake_args(self):
+ # FIXME: Add arguments other than
+ # FIXME: CMAKE_INSTALL_PREFIX and CMAKE_BUILD_TYPE
+ # FIXME: If not needed delete this function
+ args = []
+ return args
diff --git a/var/spack/repos/builtin/packages/netcdf-cxx/package.py b/var/spack/repos/builtin/packages/netcdf-cxx/package.py
index 2ad710fc45..916c8f301a 100644
--- a/var/spack/repos/builtin/packages/netcdf-cxx/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-cxx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/netcdf-cxx4/package.py b/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
index 2da30c7b0c..0e15d67bc1 100644
--- a/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-cxx4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,8 +34,9 @@ class NetcdfCxx4(AutotoolsPackage):
version('4.2.1', 'd019853802092cf686254aaba165fc81')
depends_on('netcdf')
+
+ depends_on('automake', type='build')
depends_on('autoconf', type='build')
+ depends_on('libtool', type='build')
- def autoreconf(self, spec, prefix):
- # Rebuild to prevent problems of inconsistency in git repo
- which('autoreconf')('-ivf')
+ force_autoreconf = True
diff --git a/var/spack/repos/builtin/packages/netcdf-fortran/package.py b/var/spack/repos/builtin/packages/netcdf-fortran/package.py
index a2556d8783..f62db6eca0 100644
--- a/var/spack/repos/builtin/packages/netcdf-fortran/package.py
+++ b/var/spack/repos/builtin/packages/netcdf-fortran/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,3 +35,16 @@ class NetcdfFortran(AutotoolsPackage):
version('4.4.3', 'bfd4ae23a34635b273d3eb0d91cbde9e')
depends_on('netcdf')
+
+ @property
+ def libs(self):
+ libraries = ['libnetcdff']
+
+ # This package installs both shared and static libraries. Permit
+ # clients to query which one they want.
+ query_parameters = self.spec.last_query.extra_parameters
+ shared = 'shared' in query_parameters
+
+ return find_libraries(
+ libraries, root=self.prefix, shared=shared, recurse=True
+ )
diff --git a/var/spack/repos/builtin/packages/netcdf/package.py b/var/spack/repos/builtin/packages/netcdf/package.py
index 79a1be2090..f12e2941c8 100644
--- a/var/spack/repos/builtin/packages/netcdf/package.py
+++ b/var/spack/repos/builtin/packages/netcdf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,6 +24,16 @@
##############################################################################
from spack import *
+import numbers
+
+
+def is_integral(x):
+ """Any integer value"""
+ try:
+ return isinstance(int(x), numbers.Integral) and not isinstance(x, bool)
+ except ValueError:
+ return False
+
class Netcdf(AutotoolsPackage):
"""NetCDF is a set of software libraries and self-describing,
@@ -31,40 +41,101 @@ class Netcdf(AutotoolsPackage):
and sharing of array-oriented scientific data."""
homepage = "http://www.unidata.ucar.edu/software/netcdf"
- url = "ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.3.tar.gz"
+ url = "http://www.gfd-dennou.org/arch/netcdf/unidata-mirror/netcdf-4.3.3.tar.gz"
+ # Version 4.4.1.1 is having problems in tests
+ # https://github.com/Unidata/netcdf-c/issues/343
+ version('4.4.1.1', '503a2d6b6035d116ed53b1d80c811bda')
+ # netcdf@4.4.1 can crash on you (in real life and in tests). See:
+ # https://github.com/Unidata/netcdf-c/issues/282
version('4.4.1', '7843e35b661c99e1d49e60791d5072d8')
version('4.4.0', 'cffda0cbd97fdb3a06e9274f7aef438e')
version('4.3.3.1', '5c9dad3705a3408d27f696e5b31fb88c')
version('4.3.3', '5fbd0e108a54bd82cb5702a73f56d2ae')
- variant('mpi', default=True, description='Enables MPI parallelism')
- variant('hdf4', default=False, description='Enable HDF4 support')
- variant('shared', default=True, description='Enable shared library')
- variant('parallel-netcdf', default=False, description='Enable PnetCDF support')
- variant('dap', default=False, description='Enable DAP support')
- variant('cdmremote', default=False, description='Enable CDM Remote support')
+ variant('mpi', default=True,
+ description='Enable parallel I/O for netcdf-4')
+ variant('parallel-netcdf', default=False,
+ description='Enable parallel I/O for classic files')
+ variant('hdf4', default=False, description='Enable HDF4 support')
+ variant('shared', default=True, description='Enable shared library')
+ variant('dap', default=False, description='Enable DAP support')
+
+ # It's unclear if cdmremote can be enabled if '--enable-netcdf-4' is passed
+ # to the configure script. Since netcdf-4 support is mandatory we comment
+ # this variant out.
+ # variant('cdmremote', default=False,
+ # description='Enable CDM Remote support')
+
# These variants control the number of dimensions (i.e. coordinates and
# attributes) and variables (e.g. time, entity ID, number of coordinates)
# that can be used in any particular NetCDF file.
- variant('maxdims', default=1024,
- description='Defines the maximum dimensions of NetCDF files.')
- variant('maxvars', default=8192,
- description='Defines the maximum variables of NetCDF files.')
+ variant(
+ 'maxdims',
+ default=1024,
+ description='Defines the maximum dimensions of NetCDF files.',
+ values=is_integral
+ )
+ variant(
+ 'maxvars',
+ default=8192,
+ description='Defines the maximum variables of NetCDF files.',
+ values=is_integral
+ )
depends_on("m4", type='build')
depends_on("hdf", when='+hdf4')
+
+ # curl 7.18.0 or later is required:
+ # http://www.unidata.ucar.edu/software/netcdf/docs/getting_and_building_netcdf.html
depends_on("curl@7.18.0:", when='+dap')
- depends_on("curl@7.18.0:", when='+cdmremote')
- depends_on('parallel-netcdf', when='@4.2.1.1:+parallel-netcdf')
+ # depends_on("curl@7.18.0:", when='+cdmremote')
- # Required for NetCDF-4 support
+ depends_on('parallel-netcdf', when='+parallel-netcdf')
+
+ # We need to build with MPI wrappers if any of the two
+ # parallel I/O features is enabled:
+ # http://www.unidata.ucar.edu/software/netcdf/docs/getting_and_building_netcdf.html#build_parallel
+ depends_on('mpi', when='+mpi')
+ depends_on('mpi', when='+parallel-netcdf')
+
+ # zlib 1.2.5 or later is required for netCDF-4 compression:
+ # http://www.unidata.ucar.edu/software/netcdf/docs/getting_and_building_netcdf.html
depends_on("zlib@1.2.5:")
- depends_on('hdf5')
+
+ # High-level API of HDF5 1.8.9 or later is required for netCDF-4 support:
+ # http://www.unidata.ucar.edu/software/netcdf/docs/getting_and_building_netcdf.html
+ depends_on('hdf5@1.8.9:+hl')
+
+ # Starting version 4.4.0, it became possible to disable parallel I/O even
+ # if HDF5 supports it. For previous versions of the library we need
+ # HDF5 without mpi support to disable parallel I/O.
+ # The following doesn't work if hdf5+mpi by default and netcdf~mpi is
+ # specified in packages.yaml
+ # depends_on('hdf5~mpi', when='@:4.3~mpi')
+ # Thus, we have to introduce a conflict
+ conflicts('~mpi', when='@:4.3^hdf5+mpi',
+ msg='netcdf@:4.3~mpi requires hdf5~mpi')
+
+ # We need HDF5 with mpi support to enable parallel I/O.
+ # The following doesn't work if hdf5~mpi by default and netcdf+mpi is
+ # specified in packages.yaml
+ # depends_on('hdf5+mpi', when='+mpi')
+ # Thus, we have to introduce a conflict
+ conflicts('+mpi', when='^hdf5~mpi',
+ msg='netcdf+mpi requires hdf5+mpi')
# NetCDF 4.4.0 and prior have compatibility issues with HDF5 1.10 and later
# https://github.com/Unidata/netcdf-c/issues/250
- depends_on('hdf5@:1.8', when='@:4.4.0')
+ depends_on('hdf5@:1.8.999', when='@:4.4.0')
+
+ # The feature was introduced in version 4.1.2
+ # and was removed in version 4.4.0
+ # conflicts('+cdmremote', when='@:4.1.1,4.4:')
+
+ # The features were introduced in version 4.1.0
+ conflicts('+parallel-netcdf', when='@:4.0')
+ conflicts('+hdf4', when='@:4.0')
def patch(self):
try:
@@ -81,90 +152,96 @@ class Netcdf(AutotoolsPackage):
r'\1{0}\2'.format(max_vars))
def configure_args(self):
- spec = self.spec
- # Workaround until variant forwarding works properly
- if '+mpi' in spec and spec.satisfies('^hdf5~mpi'):
- raise RuntimeError('Invalid spec. Package netcdf requires '
- 'hdf5+mpi, but spec asked for hdf5~mpi.')
-
- # Environment variables
- CFLAGS = []
+ CFLAGS = []
CPPFLAGS = []
- LDFLAGS = []
- LIBS = []
-
- config_args = [
- "--enable-fsync",
- "--enable-v2",
- "--enable-utilities",
- "--enable-static",
- "--enable-largefile",
- # necessary for HDF5 support
- "--enable-netcdf-4",
- "--enable-dynamic-loading",
- ]
-
- if '+shared' in spec:
- config_args.append('--enable-shared')
- else:
- config_args.append('--disable-shared')
+ LDFLAGS = []
+ LIBS = []
+
+ config_args = ['--enable-v2',
+ '--enable-utilities',
+ '--enable-static',
+ '--enable-largefile',
+ '--enable-netcdf-4']
+
+ # The flag was introduced in version 4.1.0
+ if self.spec.satisfies('@4.1:'):
+ config_args.append('--enable-fsync')
+
+ # The flag was introduced in version 4.3.1
+ if self.spec.satisfies('@4.3.1:'):
+ config_args.append('--enable-dynamic-loading')
+
+ config_args += self.enable_or_disable('shared')
+
+ if '~shared' in self.spec:
# We don't have shared libraries but we still want it to be
# possible to use this library in shared builds
- CFLAGS.append('-fPIC')
+ CFLAGS.append(self.compiler.pic_flag)
- if '+dap' in spec:
- config_args.append('--enable-dap')
- else:
- config_args.append('--disable-dap')
+ config_args += self.enable_or_disable('dap')
+ # config_args += self.enable_or_disable('cdmremote')
- if '+cdmremote' in spec:
- config_args.append('--enable-cdmremote')
- else:
- config_args.append('--disable-cdmremote')
-
- if '+dap' in spec or '+cdmremote' in spec:
+ # if '+dap' in self.spec or '+cdmremote' in self.spec:
+ if '+dap' in self.spec:
# Make sure Netcdf links against Spack's curl, otherwise it may
# pick up system's curl, which can give link errors, e.g.:
- # undefined reference to `SSL_CTX_use_certificate_chain_file`
- LIBS.append("-lcurl")
- CPPFLAGS.append("-I%s" % spec['curl'].prefix.include)
- LDFLAGS.append("-L%s" % spec['curl'].prefix.lib)
-
- if '+mpi' in spec:
- config_args.append('--enable-parallel4')
-
- CPPFLAGS.append("-I%s/include" % spec['hdf5'].prefix)
- LDFLAGS.append("-L%s/lib" % spec['hdf5'].prefix)
-
- # HDF4 support
- # As of NetCDF 4.1.3, "--with-hdf4=..." is no longer a valid option
- # You must use the environment variables CPPFLAGS and LDFLAGS
- if '+hdf4' in spec:
- config_args.append("--enable-hdf4")
- CPPFLAGS.append("-I%s/include" % spec['hdf'].prefix)
- LDFLAGS.append("-L%s/lib" % spec['hdf'].prefix)
- LIBS.append("-l%s" % "jpeg")
-
- if '+szip' in spec:
- CPPFLAGS.append("-I%s/include" % spec['szip'].prefix)
- LDFLAGS.append("-L%s/lib" % spec['szip'].prefix)
- LIBS.append("-l%s" % "sz")
-
- # PnetCDF support
- if '+parallel-netcdf' in spec:
+ # undefined reference to `SSL_CTX_use_certificate_chain_file
+ curl = self.spec['curl']
+ curl_libs = curl.libs
+ LIBS.append(curl_libs.link_flags)
+ LDFLAGS.append(curl_libs.search_flags)
+ # TODO: figure out how to get correct flags via headers.cpp_flags
+ CPPFLAGS.append('-I' + curl.prefix.include)
+
+ if self.spec.satisfies('@4.4:'):
+ if '+mpi' in self.spec:
+ config_args.append('--enable-parallel4')
+ else:
+ config_args.append('--disable-parallel4')
+
+ # Starting version 4.1.3, --with-hdf5= and other such configure options
+ # are removed. Variables CPPFLAGS, LDFLAGS, and LD_LIBRARY_PATH must be
+ # used instead.
+ hdf5_hl = self.spec['hdf5:hl']
+ CPPFLAGS.append(hdf5_hl.headers.cpp_flags)
+ LDFLAGS.append(hdf5_hl.libs.search_flags)
+
+ if '+parallel-netcdf' in self.spec:
config_args.append('--enable-pnetcdf')
- config_args.append('CC=%s' % spec['mpi'].mpicc)
- CPPFLAGS.append("-I%s/include" % spec['parallel-netcdf'].prefix)
- LDFLAGS.append("-L%s/lib" % spec['parallel-netcdf'].prefix)
+ pnetcdf = self.spec['parallel-netcdf']
+ CPPFLAGS.append(pnetcdf.headers.cpp_flags)
+ # TODO: change to pnetcdf.libs.search_flags once 'parallel-netcdf'
+ # package gets custom implementation of 'libs'
+ LDFLAGS.append('-L' + pnetcdf.prefix.lib)
+ else:
+ config_args.append('--disable-pnetcdf')
+
+ if '+mpi' in self.spec or '+parallel-netcdf' in self.spec:
+ config_args.append('CC=%s' % self.spec['mpi'].mpicc)
+
+ config_args += self.enable_or_disable('hdf4')
+ if '+hdf4' in self.spec:
+ hdf4 = self.spec['hdf']
+ CPPFLAGS.append(hdf4.headers.cpp_flags)
+ # TODO: change to hdf4.libs.search_flags once 'hdf'
+ # package gets custom implementation of 'libs' property.
+ LDFLAGS.append('-L' + hdf4.prefix.lib)
+ # TODO: change to self.spec['jpeg'].libs.link_flags once the
+ # implementations of 'jpeg' virtual package get 'jpeg_libs'
+ # property.
+ LIBS.append('-ljpeg')
+ if '+szip' in hdf4:
+ # This should also come from hdf4.libs
+ LIBS.append('-lsz')
# Fortran support
# In version 4.2+, NetCDF-C and NetCDF-Fortran have split.
# Use the netcdf-fortran package to install Fortran support.
- config_args.append('CFLAGS=%s' % ' '.join(CFLAGS))
- config_args.append('CPPFLAGS=%s' % ' '.join(CPPFLAGS))
- config_args.append('LDFLAGS=%s' % ' '.join(LDFLAGS))
- config_args.append('LIBS=%s' % ' '.join(LIBS))
+ config_args.append('CFLAGS=' + ' '.join(CFLAGS))
+ config_args.append('CPPFLAGS=' + ' '.join(CPPFLAGS))
+ config_args.append('LDFLAGS=' + ' '.join(LDFLAGS))
+ config_args.append('LIBS=' + ' '.join(LIBS))
return config_args
diff --git a/var/spack/repos/builtin/packages/netgauge/package.py b/var/spack/repos/builtin/packages/netgauge/package.py
index b57cdbe5f3..f850a22c2c 100644
--- a/var/spack/repos/builtin/packages/netgauge/package.py
+++ b/var/spack/repos/builtin/packages/netgauge/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Netgauge(Package):
+class Netgauge(AutotoolsPackage):
"""Netgauge is a high-precision network parameter measurement
tool. It supports benchmarking of many different network protocols
and communication patterns. The main focus lies on accuracy,
@@ -37,8 +37,3 @@ class Netgauge(Package):
version('2.4.6', 'e0e040ec6452e93ca21ccc54deac1d7f')
depends_on("mpi")
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/netgen/package.py b/var/spack/repos/builtin/packages/netgen/package.py
new file mode 100644
index 0000000000..9d6c4de81a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/netgen/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Netgen(AutotoolsPackage):
+ """NETGEN is an automatic 3d tetrahedral mesh generator. It accepts
+ input from constructive solid geometry (CSG) or boundary
+ representation (BRep) from STL file format. The connection to
+ a geometry kernel allows the handling of IGES and STEP files.
+ NETGEN contains modules for mesh optimization and hierarchical
+ mesh refinement. """
+
+ homepage = "https://ngsolve.org/"
+ url = "https://gigenet.dl.sourceforge.net/project/netgen-mesher/netgen-mesher/5.3/netgen-5.3.1.tar.gz"
+
+ version('5.3.1', 'afd5a9b0b1296c242a9c554f06af6510')
+
+ variant("mpi", default=True, description='enable mpi support')
+ variant("oce", default=False, description='enable oce geometry kernel')
+ variant("gui", default=False, description='enable gui')
+ variant("metis", default=False, description='use metis for partitioning')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('oce+X11', when='+oce')
+ depends_on('metis', when='+metis')
+
+ def url_for_version(self, version):
+ url = "https://gigenet.dl.sourceforge.net/project/netgen-mesher/netgen-mesher/{0}/netgen-{1}.tar.gz"
+ return url.format(version.up_to(2), version)
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if '+mpi' in spec:
+ args.extend([
+ "CC={0}".format(spec['mpi'].mpicc),
+ "CXX={0}".format(spec['mpi'].mpicxx)
+ ])
+ else:
+ args.append("--without-mpi")
+
+ if '+oce' in spec:
+ args.append("--with-occ={0}".format(spec['oce'].prefix))
+ # FIXME
+ # due to a bug in netgen config, when --without-occ is specified
+ # or --with-occ=no, OCC flags is turned true, and build fails
+ # later; so do not specify anything like that
+ # else:
+ # args.append("--without-occ")
+
+ if '~gui' in spec:
+ args.append("--disable-gui")
+ else:
+ args.append("--enable-gui")
+ if '+metis' in spec:
+ args.append('--with-metis=%s' % spec['metis'].prefix)
+ else:
+ args.append("--without-metis")
+
+ return args
diff --git a/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch b/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch
new file mode 100644
index 0000000000..c9598a4e7c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch
@@ -0,0 +1,16 @@
+diff -Naur lapack-3.6.1/CMAKE/CheckLAPACKCompilerFlags.cmake lapack-3.6.1-patched/CMAKE/CheckLAPACKCompilerFlags.cmake
+--- lapack-3.6.1/CMAKE/CheckLAPACKCompilerFlags.cmake 2017-01-27 17:14:37.414854283 -0500
++++ lapack-3.6.1-patched/CMAKE/CheckLAPACKCompilerFlags.cmake 2017-01-27 17:14:24.754719546 -0500
+@@ -43,12 +43,6 @@
+ if( "${CMAKE_Fortran_FLAGS}" MATCHES "-qflttrap=[a-zA-Z:]:enable" )
+ set( FPE_EXIT TRUE )
+ endif()
+-
+- if( NOT ("${CMAKE_Fortran_FLAGS}" MATCHES "-qfixed") )
+- message( STATUS "Enabling fixed format F90/F95 with -qfixed" )
+- set( CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -qfixed"
+- CACHE STRING "Flags for Fortran compiler." FORCE )
+- endif()
+
+ # HP Fortran
+ elseif( CMAKE_Fortran_COMPILER_ID STREQUAL "HP" )
diff --git a/var/spack/repos/builtin/packages/netlib-lapack/package.py b/var/spack/repos/builtin/packages/netlib-lapack/package.py
index 4b03259cbd..8166b75bf5 100644
--- a/var/spack/repos/builtin/packages/netlib-lapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-lapack/package.py
@@ -1,13 +1,13 @@
#############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -52,6 +52,9 @@ class NetlibLapack(Package):
variant('lapacke', default=True,
description='Activates the build of the LAPACKE C interface')
+ patch('ibm-xl.patch', when='@3:6%xl')
+ patch('ibm-xl.patch', when='@3:6%xl_r')
+
# virtual dependency
provides('blas', when='~external-blas')
provides('lapack')
@@ -71,14 +74,14 @@ class NetlibLapack(Package):
def blas_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libblas'], root=self.prefix, shared=shared, recurse=True
+ 'libblas', root=self.prefix, shared=shared, recurse=True
)
@property
def lapack_libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['liblapack'], root=self.prefix, shared=shared, recurse=True
+ 'liblapack', root=self.prefix, shared=shared, recurse=True
)
def install_one(self, spec, prefix, shared):
@@ -96,14 +99,21 @@ class NetlibLapack(Package):
cmake_args.extend(['-DCBLAS=OFF'])
cmake_args.extend(['-DLAPACKE:BOOL=OFF'])
- # deprecated routines are commonly need by, for example, suitesparse
+ if self.compiler.name == 'xl' or self.compiler.name == 'xl_r':
+ # use F77 compiler if IBM XL
+ cmake_args.extend([
+ '-DCMAKE_Fortran_COMPILER=%s' % self.compiler.f77,
+ '-DCMAKE_Fortran_FLAGS=-qzerosize'
+ ])
+
+ # deprecated routines are commonly needed by, for example, suitesparse
# Note that OpenBLAS spack is built with deprecated routines
cmake_args.extend(['-DBUILD_DEPRECATED:BOOL=ON'])
if '+external-blas' in spec:
cmake_args.extend([
'-DUSE_OPTIMIZED_BLAS:BOOL=ON',
- '-DBLAS_LIBRARIES:PATH=%s' % spec['blas'].blas_libs.joined(';')
+ '-DBLAS_LIBRARIES:PATH=%s' % spec['blas'].libs.joined(';')
])
cmake_args.extend(std_cmake_args)
diff --git a/var/spack/repos/builtin/packages/netlib-scalapack/package.py b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
index 578d2d8988..614cbeea4b 100644
--- a/var/spack/repos/builtin/packages/netlib-scalapack/package.py
+++ b/var/spack/repos/builtin/packages/netlib-scalapack/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import sys
-class NetlibScalapack(Package):
+class NetlibScalapack(CMakePackage):
"""ScaLAPACK is a library of high-performance linear algebra routines for
parallel distributed memory machines
"""
@@ -46,9 +46,9 @@ class NetlibScalapack(Package):
description='Build the shared library version'
)
variant(
- 'fpic',
+ 'pic',
default=False,
- description='Build with -fpic compiler option'
+ description='Build position independent code'
)
provides('scalapack')
@@ -60,12 +60,16 @@ class NetlibScalapack(Package):
@property
def scalapack_libs(self):
+ # Note that the default will be to search
+ # for 'libnetlib-scalapack.<suffix>'
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libscalapack'], root=self.prefix, shared=shared, recurse=True
+ 'libscalapack', root=self.prefix, shared=shared, recurse=True
)
- def install(self, spec, prefix):
+ def cmake_args(self):
+ spec = self.spec
+
options = [
"-DBUILD_SHARED_LIBS:BOOL=%s" % ('ON' if '+shared' in spec else
'OFF'),
@@ -74,8 +78,8 @@ class NetlibScalapack(Package):
]
# Make sure we use Spack's Lapack:
- blas = spec['blas'].blas_libs
- lapack = spec['lapack'].lapack_libs
+ blas = spec['blas'].libs
+ lapack = spec['lapack'].libs
options.extend([
'-DLAPACK_FOUND=true',
'-DLAPACK_INCLUDE_DIRS=%s' % spec['lapack'].prefix.include,
@@ -83,19 +87,16 @@ class NetlibScalapack(Package):
'-DBLAS_LIBRARIES=%s' % (blas.joined(';'))
])
- if '+fpic' in spec:
+ if '+pic' in spec:
options.extend([
- "-DCMAKE_C_FLAGS=-fPIC",
- "-DCMAKE_Fortran_FLAGS=-fPIC"
+ "-DCMAKE_C_FLAGS=%s" % self.compiler.pic_flag,
+ "-DCMAKE_Fortran_FLAGS=%s" % self.compiler.pic_flag
])
- options.extend(std_cmake_args)
-
- with working_dir('spack-build', create=True):
- cmake('..', *options)
- make()
- make("install")
+ return options
+ @run_after('install')
+ def fix_darwin_install(self):
# The shared libraries are not installed correctly on Darwin:
- if (sys.platform == 'darwin') and ('+shared' in spec):
- fix_darwin_install_name(prefix.lib)
+ if (sys.platform == 'darwin') and ('+shared' in self.spec):
+ fix_darwin_install_name(self.spec.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/nettle/package.py b/var/spack/repos/builtin/packages/nettle/package.py
index 7e2b758bc0..591483b2f9 100644
--- a/var/spack/repos/builtin/packages/nettle/package.py
+++ b/var/spack/repos/builtin/packages/nettle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,23 +25,17 @@
from spack import *
-class Nettle(Package):
+class Nettle(AutotoolsPackage):
"""The Nettle package contains the low-level cryptographic library
that is designed to fit easily in many contexts."""
homepage = "https://www.lysator.liu.se/~nisse/nettle/"
- url = "http://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz"
+ url = "http://ftp.gnu.org/gnu/nettle/nettle-3.3.tar.gz"
- version('3.2', 'afb15b4764ebf1b4e6d06c62bd4d29e4')
- version('2.7', '2caa1bd667c35db71becb93c5d89737f')
+ version('3.3', '10f969f78a463704ae73529978148dbe')
+ version('3.2', 'afb15b4764ebf1b4e6d06c62bd4d29e4')
+ version('2.7.1', '003d5147911317931dd453520eb234a5')
+ version('2.7', '2caa1bd667c35db71becb93c5d89737f')
depends_on('gmp')
depends_on('m4', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- if self.run_tests:
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/nextflow/package.py b/var/spack/repos/builtin/packages/nextflow/package.py
index 54f3dbf915..715964bdc1 100644
--- a/var/spack/repos/builtin/packages/nextflow/package.py
+++ b/var/spack/repos/builtin/packages/nextflow/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,12 +29,20 @@ class Nextflow(Package):
"""Data-driven computational pipelines"""
homepage = "http://www.nextflow.io"
+ url = "https://github.com/nextflow-io/nextflow/releases/download/v0.24.1/nextflow"
+ version('0.25.6', '29d739b6caf8ceb5aa9997310ee8d0e7',
+ expand=False)
+ version('0.24.1', '80ec8c4fe8e766e0bdd1371a50410d1d',
+ expand=False)
+ version('0.23.3', '71fb69275b6788af1c6f1165f40d362e',
+ expand=False)
version('0.20.1', '0e4e0e3eca1c2c97f9b4bffd944b923a',
- url='https://github.com/nextflow-io/nextflow/releases/download/v0.20.1/nextflow',
+ expand=False)
+ version('0.17.3', '5df00105fb1ce6fd0ba019ae735d9617',
expand=False)
- depends_on('jdk')
+ depends_on('java')
def install(self, spec, prefix):
mkdirp(prefix.bin)
diff --git a/var/spack/repos/builtin/packages/nfft/package.py b/var/spack/repos/builtin/packages/nfft/package.py
index 4c1ce2b03d..415ddcf0eb 100644
--- a/var/spack/repos/builtin/packages/nfft/package.py
+++ b/var/spack/repos/builtin/packages/nfft/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,24 +37,51 @@ class Nfft(AutotoolsPackage):
depends_on('fftw')
- def install(self, spec, prefix):
+ def configure(self, spec, prefix):
options = ['--prefix={0}'.format(prefix)]
- configure(*options)
- make()
- if self.run_tests:
- make("check")
- make("install")
+ configure = Executable('../configure')
+
+ if '+double' in spec['fftw']:
+ with working_dir('double', create=True):
+ configure(*options)
+ if '+float' in spec['fftw']:
+ with working_dir('float', create=True):
+ configure('--enable-float', *options)
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double', create=True):
+ configure('--enable-long-double', *options)
+
+ def build(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make()
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make()
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make()
+ def check(self):
+ spec = self.spec
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("check")
if '+float' in spec['fftw']:
- configure('--enable-float', *options)
- make()
- if self.run_tests:
+ with working_dir('float'):
make("check")
- make("install")
if '+long_double' in spec['fftw']:
- configure('--enable-long-double', *options)
- make()
- if self.run_tests:
+ with working_dir('long-double'):
make("check")
- make("install")
+
+ def install(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("install")
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make("install")
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make("install")
diff --git a/var/spack/repos/builtin/packages/nghttp2/package.py b/var/spack/repos/builtin/packages/nghttp2/package.py
new file mode 100644
index 0000000000..62b936e054
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nghttp2/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nghttp2(AutotoolsPackage):
+ """nghttp2 is an implementation of HTTP/2 and its header compression
+ algorithm HPACK in C."""
+
+ homepage = "https://nghttp2.org/"
+ url = "https://github.com/nghttp2/nghttp2/releases/download/v1.26.0/nghttp2-1.26.0.tar.gz"
+
+ version('1.26.0', '83fa813b22bacbc6ea80dfb24847569f')
+
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-cython@0.19:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build'))
+
+ def setup_environment(self, spack_env, run_env):
+ site_packages_dir = '/'.join(
+ [self.spec.prefix.lib,
+ ('python' + str(self.spec['python'].version.up_to(2))),
+ 'site-packages'])
+ spack_env.prepend_path('PYTHONPATH', site_packages_dir)
+
+ @run_before('install')
+ def ensure_install_dir_exists(self):
+ site_packages_dir = '/'.join(
+ [self.spec.prefix.lib,
+ ('python' + str(self.spec['python'].version.up_to(2))),
+ 'site-packages'])
+ mkdirp(site_packages_dir)
diff --git a/var/spack/repos/builtin/packages/nginx/package.py b/var/spack/repos/builtin/packages/nginx/package.py
new file mode 100644
index 0000000000..a9b5e93bfb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nginx/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nginx(AutotoolsPackage):
+ """nginx [engine x] is an HTTP and reverse proxy server, a mail proxy
+ server, and a generic TCP/UDP proxy server, originally written by Igor
+ Sysoev."""
+
+ homepage = "https://nginx.org/en/"
+ url = "https://nginx.org/download/nginx-1.12.0.tar.gz"
+
+ version('1.12.0', '995eb0a140455cf0cfc497e5bd7f94b3')
+
+ depends_on('openssl')
+ depends_on('pcre')
+ depends_on('zlib')
+
+ def configure_args(self):
+ args = ['--with-http_ssl_module']
+ return args
+
+ def setup_environment(self, spack_env, run_env):
+ """Prepend the sbin directory to PATH."""
+ run_env.prepend_path('PATH', join_path(self.prefix, 'sbin'))
diff --git a/var/spack/repos/builtin/packages/ngmlr/package.py b/var/spack/repos/builtin/packages/ngmlr/package.py
new file mode 100644
index 0000000000..e1dbbe709e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ngmlr/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ngmlr(CMakePackage):
+ """Ngmlr is a long-read mapper designed to align PacBilo or Oxford
+ Nanopore to a reference genome with a focus on reads that span
+ structural variations."""
+
+ homepage = "https://github.com/philres/ngmlr"
+ url = "https://github.com/philres/ngmlr/archive/v0.2.5.tar.gz"
+
+ version('0.2.5', '1b2b1aaeb6a3accc8b9f3e5c29e77037')
diff --git a/var/spack/repos/builtin/packages/ninja-fortran/package.py b/var/spack/repos/builtin/packages/ninja-fortran/package.py
new file mode 100644
index 0000000000..57903928be
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ninja-fortran/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class NinjaFortran(Package):
+ """A Fortran capable fork of ninja."""
+
+ homepage = "https://github.com/Kitware/ninja"
+ url = "https://github.com/Kitware/ninja/archive/v1.7.2.gaad58.kitware.dyndep-1.tar.gz"
+
+ # Each version is a fork off of a specific commit of ninja
+ # Hashes don't sort properly, so manually set newest version
+ version('1.7.2.gaad58', 'eb51b042b9dbaf8ecd79a6fb24de1320', preferred=True)
+ version('1.7.2.gcc0ea', '3982f508c415c0abaca34cb5e92e711a')
+ version('1.7.1.g7ca7f', '187a8d15c1e20e5e9b00c5c3f227ca8a')
+
+ depends_on('python', type=('build', 'run'))
+
+ phases = ['configure', 'install']
+
+ def url_for_version(self, version):
+ url = 'https://github.com/Kitware/ninja/archive/v{0}.kitware.dyndep-1.tar.gz'
+ return url.format(version)
+
+ def configure(self, spec, prefix):
+ python('configure.py', '--bootstrap')
+
+ @run_after('configure')
+ @on_package_attributes(run_tests=True)
+ def test(self):
+ ninja = Executable('./ninja')
+ ninja('-j{0}'.format(make_jobs), 'ninja_test')
+ ninja_test = Executable('./ninja_test')
+ ninja_test()
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('ninja', prefix.bin)
+ install_tree('misc', prefix.misc)
+
+ # Some distros like Fedora install a 'ninja-build' executable
+ # instead of 'ninja'. Install both for uniformity.
+ with working_dir(prefix.bin):
+ symlink('ninja', 'ninja-build')
diff --git a/var/spack/repos/builtin/packages/ninja/package.py b/var/spack/repos/builtin/packages/ninja/package.py
index dcd00576dd..11c46cb81e 100644
--- a/var/spack/repos/builtin/packages/ninja/package.py
+++ b/var/spack/repos/builtin/packages/ninja/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,24 +23,42 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
class Ninja(Package):
- """ A small, fast Make alternative """
- homepage = "https://martine.github.io/ninja/"
- url = "https://github.com/martine/ninja/archive/v1.6.0.tar.gz"
+ """Ninja is a small build system with a focus on speed. It differs from
+ other build systems in two major respects: it is designed to have its input
+ files generated by a higher-level build system, and it is designed to run
+ builds as fast as possible."""
+ homepage = "https://ninja-build.org/"
+ url = "https://github.com/ninja-build/ninja/archive/v1.7.2.tar.gz"
+
+ version('1.8.2', '5fdb04461cc7f5d02536b3bfc0300166')
+ version('1.7.2', '7b482218757acbaeac4d4d54a3cd94e1')
version('1.6.0', '254133059f2da79d8727f654d7198f43')
- extends('python')
+ depends_on('python', type=('build', 'run'))
- def install(self, spec, prefix):
+ phases = ['configure', 'install']
+
+ def configure(self, spec, prefix):
python('configure.py', '--bootstrap')
- cp = which('cp')
+ @run_after('configure')
+ @on_package_attributes(run_tests=True)
+ def test(self):
+ ninja = Executable('./ninja')
+ ninja('-j{0}'.format(make_jobs), 'ninja_test')
+ ninja_test = Executable('./ninja_test')
+ ninja_test()
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('ninja', prefix.bin)
+ install_tree('misc', prefix.misc)
- bindir = os.path.join(prefix, 'bin/')
- mkdir(bindir)
- cp('-a', 'ninja', bindir)
- cp('-a', 'misc', prefix)
+ # Some distros like Fedora install a 'ninja-build' executable
+ # instead of 'ninja'. Install both for uniformity.
+ with working_dir(prefix.bin):
+ symlink('ninja', 'ninja-build')
diff --git a/var/spack/repos/builtin/packages/nmap/package.py b/var/spack/repos/builtin/packages/nmap/package.py
index f4576cde53..e4da0fbdcf 100644
--- a/var/spack/repos/builtin/packages/nmap/package.py
+++ b/var/spack/repos/builtin/packages/nmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,8 +26,8 @@ from spack import *
class Nmap(AutotoolsPackage):
- """Nmap ("Network Mapper") is a free and open source (license)
- utility for network discovery and security auditing.
+ """Nmap ("Network Mapper") is a free and open source (license)
+ utility for network discovery and security auditing.
It also provides ncat an updated nc"""
homepage = "https://nmap.org"
diff --git a/var/spack/repos/builtin/packages/nnvm/cmake.patch b/var/spack/repos/builtin/packages/nnvm/cmake.patch
new file mode 100644
index 0000000000..814a45c83d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nnvm/cmake.patch
@@ -0,0 +1,63 @@
+From e75004208ea98cea0bb2ad9b5f18a59cf6814333 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Mon, 11 Sep 2017 00:26:24 +0800
+Subject: [PATCH] Install nnvm lib and haders. Offer choice to build static or
+ shared lib.
+
+---
+ CMakeLists.txt | 25 +++++++++++++++++++++++--
+ 1 file changed, 23 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d40deb5..aac0531 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -17,6 +17,10 @@ set(nnvm_LINKER_LIBS "")
+
+ add_definitions(-DNNVM_EXPORTS)
+
++# Build a shared lib (libnnvm.so) by default
++option(USE_SHARED_NNVM "Build a shared nnvm lib" ON)
++option(USE_STATIC_NNVM "Build a static nnvm lib" OFF)
++
+ # compile
+ if(MSVC)
+ add_definitions(-DDMLC_USE_CXX11)
+@@ -61,8 +65,15 @@ elseif(DMLC_CORE_PATH)
+ include_directories(${DMLC_CORE_PATH}/include)
+ endif()
+
+-add_library(nnvm SHARED ${SOURCE})
+-target_link_libraries(nnvm ${nnvm_LINKER_LIBS})
++if(USE_SHARED_NNVM)
++ add_library(nnvm SHARED ${SOURCE})
++ target_link_libraries(nnvm ${nnvm_LINKER_LIBS})
++endif()
++if(USE_STATIC_NNVM)
++ add_library(nnvm_static STATIC ${SOURCE})
++ target_link_libraries(nnvm_static ${nnvm_LINKER_LIBS})
++ set_target_properties(nnvm_static PROPERTIES OUTPUT_NAME "nnvm")
++endif()
+
+ if(INSTALL_INCLUDE_DIR)
+ add_custom_command(TARGET nnvm POST_BUILD
+@@ -71,6 +82,16 @@ if(INSTALL_INCLUDE_DIR)
+ )
+ endif()
+
++# ---[ Install lib, header and docs
++if(USE_SHARED_NNVM)
++ install(TARGETS nnvm LIBRARY DESTINATION lib)
++endif()
++if(USE_STATIC_NNVM)
++ install(TARGETS nnvm_static ARCHIVE DESTINATION lib)
++endif()
++install(DIRECTORY include DESTINATION .)
++install(DIRECTORY docs DESTINATION .)
++
+ # ---[ Linter target
+ if(MSVC)
+ find_package(PythonInterp 2)
+--
+1.8.3.1
+
diff --git a/var/spack/repos/builtin/packages/nnvm/package.py b/var/spack/repos/builtin/packages/nnvm/package.py
new file mode 100644
index 0000000000..0650df273d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nnvm/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nnvm(CMakePackage):
+ """nnvm is a modular, decentralized and lightweight
+ part to help build deep learning libraries."""
+
+ homepage = "https://github.com/dmlc/nnvm"
+ url = "https://github.com/dmlc/nnvm.git"
+
+ version('master', git='https://github.com/dmlc/nnvm.git', branch='master')
+ version('20170418', git='https://github.com/dmlc/nnvm.git',
+ commit='b279286304ac954098d94a2695bca599e832effb')
+
+ variant('shared', default=True, description='Build a shared NNVM lib.')
+
+ depends_on('dmlc-core')
+
+ patch('cmake.patch')
+
+ def cmake_args(self):
+ spec = self.spec
+ return [
+ '-DUSE_SHARED_NNVM=%s' % ('ON' if '+shared' in spec else 'OFF'),
+ '-DUSE_STATIC_NNVM=%s' % ('ON' if '~shared' in spec else 'OFF'),
+ ]
diff --git a/var/spack/repos/builtin/packages/node-js/package.py b/var/spack/repos/builtin/packages/node-js/package.py
index 8f129bd3e0..0b7e942400 100644
--- a/var/spack/repos/builtin/packages/node-js/package.py
+++ b/var/spack/repos/builtin/packages/node-js/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -47,10 +47,10 @@ class NodeJs(Package):
depends_on('libtool', type='build', when=sys.platform != 'darwin')
depends_on('pkg-config', type='build')
- depends_on('python@2.7:2.7.999', type='build')
+ depends_on('python@2.7:2.8', type='build')
# depends_on('bash-completion', when="+bash-completion")
depends_on('icu4c', when='+icu4c')
- depends_on('openssl', when='+openssl')
+ depends_on('openssl@1.0.2d:', when='+openssl')
def install(self, spec, prefix):
options = []
@@ -63,10 +63,10 @@ class NodeJs(Package):
# On OSX, the system libtool must be used
# So, we ensure that this is the case by...
if sys.platform == 'darwin':
- process_pipe = subprocess.Popen(["which", "libtool"],
+ process_pipe = subprocess.Popen(["which", "libtool"],
stdout=subprocess.PIPE)
result_which = process_pipe.communicate()[0]
- process_pipe = subprocess.Popen(["whereis", "libtool"],
+ process_pipe = subprocess.Popen(["whereis", "libtool"],
stdout=subprocess.PIPE)
result_whereis = process_pipe.communicate()[0]
assert result_which == result_whereis, (
diff --git a/var/spack/repos/builtin/packages/notmuch/package.py b/var/spack/repos/builtin/packages/notmuch/package.py
new file mode 100644
index 0000000000..11ff488d77
--- /dev/null
+++ b/var/spack/repos/builtin/packages/notmuch/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Notmuch(AutotoolsPackage):
+ """Notmuch is a mail indexer.
+
+ Essentially, is a very thin front end on top of xapian.
+ """
+
+ homepage = "https://notmuchmail.org/"
+ url = "https://notmuchmail.org/releases/notmuch-0.23.7.tar.gz"
+
+ version('0.23.7', '1ad339b6d0c03548140434c7bcdf0624')
+
+ depends_on('zlib')
+ depends_on('talloc')
+ depends_on('gmime@2.6:')
+ depends_on('xapian-core')
diff --git a/var/spack/repos/builtin/packages/npb/package.py b/var/spack/repos/builtin/packages/npb/package.py
new file mode 100644
index 0000000000..65e5294524
--- /dev/null
+++ b/var/spack/repos/builtin/packages/npb/package.py
@@ -0,0 +1,231 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import numbers
+
+from spack import *
+
+
+def is_integral(x):
+ """Any integer value"""
+ try:
+ return isinstance(int(x), numbers.Integral) and not isinstance(x, bool)
+ except ValueError:
+ return False
+
+
+class Npb(MakefilePackage):
+ """The NAS Parallel Benchmarks (NPB) are a small set of programs
+ designed to help evaluate the performance of parallel supercomputers.
+ The benchmarks are derived from computational fluid dynamics (CFD)
+ applications and consist of five kernels and three pseudo-applications
+ in the original "pencil-and-paper" specification (NPB 1). The benchmark
+ suite has been extended to include new benchmarks for unstructured
+ adaptive mesh, parallel I/O, multi-zone applications, and computational
+ grids. Problem sizes in NPB are predefined and indicated as different
+ classes. Reference implementations of NPB are available in commonly-used
+ programming models like MPI and OpenMP (NPB 2 and NPB 3)."""
+
+ homepage = "https://www.nas.nasa.gov/publications/npb.html"
+ url = "https://www.nas.nasa.gov/assets/npb/NPB3.3.1.tar.gz"
+
+ version('3.3.1', '8e5ec2c819480759725df67833619911')
+
+ # Valid Benchmark Names
+ valid_names = (
+ 'is', # Integer Sort, random memory access
+ 'ep', # Embarrassingly Parallel
+ 'cg', # Conjugate Gradient, irregular memory access and communication
+ 'mg', # Multi-Grid on a sequence of meshes, long- and short-distance
+ # communication, memory intensive
+ 'ft', # discrete 3D fast Fourier Transform, all-to-all communication
+ 'bt', # Block Tri-diagonal solver
+ 'sp', # Scalar Penta-diagonal solver
+ 'lu', # Lower-Upper Gauss-Seidel solver
+ )
+
+ # Valid Benchmark Classes
+ valid_classes = (
+ 'S', # Small for quick test purposes
+ 'W', # Workstation size
+ 'A', 'B', 'C', # standard test problems
+ # ~4X size increase going from one class to the next
+ 'D', 'E', # large test problems
+ # ~16X size increase from each of the previous classes
+ )
+
+ # TODO: Combine these into a single mutually exclusive variant
+ variant(
+ 'implementation',
+ default='mpi',
+ values=('serial', 'mpi', 'openmp'),
+ description='Selects one among the available implementations'
+ )
+
+ variant(
+ 'names',
+ default=','.join(valid_names),
+ values=valid_names,
+ multi=True,
+ description='Benchmark names (comma separated list)'
+ )
+
+ variant(
+ 'classes',
+ default=','.join(valid_classes),
+ values=valid_classes,
+ multi=True,
+ description='Benchmark classes (comma separated list)'
+ )
+
+ # This variant only applies to the MPI implementation
+ variant(
+ 'nprocs',
+ default='1,2,4,8,16,32,64,128',
+ values=is_integral,
+ multi=True,
+ description='Number of processes (comma separated list)'
+ )
+
+ depends_on('mpi@2:', when='implementation=mpi')
+
+ phases = ['edit', 'install']
+
+ # Cannot be built in parallel
+ parallel = False
+
+ @property
+ def build_directory(self):
+ if 'implementation=mpi' in self.spec:
+ implementation = 'MPI'
+ elif 'implementation=openmp' in self.spec:
+ implementation = 'OMP'
+ elif 'implementation=serial' in self.spec:
+ implementation = 'SER'
+ else:
+ raise RuntimeError('You must choose an implementation to build')
+
+ return 'NPB{0}-{1}'.format(self.version.up_to(2), implementation)
+
+ def edit(self, spec, prefix):
+ names = spec.variants['names'].value
+ classes = spec.variants['classes'].value
+ nprocs = spec.variants['nprocs'].value
+
+ if 'implementation=mpi' in spec:
+ definitions = {
+ # Parallel Fortran
+ 'MPIF77': spec['mpi'].mpif77,
+ 'FLINK': spec['mpi'].mpif77,
+ 'FMPI_LIB': spec['mpi'].libs.ld_flags,
+ 'FMPI_INC': '-I' + spec['mpi'].prefix.include,
+ 'FFLAGS': '-O3',
+ 'FLINKFLAGS': '-O3',
+ # Parallel C
+ 'MPICC': spec['mpi'].mpicc,
+ 'CLINK': spec['mpi'].mpicc,
+ 'CMPI_LIB': spec['mpi'].libs.ld_flags,
+ 'CMPI_INC': '-I' + spec['mpi'].prefix.include,
+ 'CFLAGS': '-O3',
+ 'CLINKFLAGS': '-O3',
+ # Utilities C
+ 'CC': spack_cc + ' -g',
+ 'BINDIR': prefix.bin,
+ 'RAND': 'randi8',
+ }
+ elif 'implementation=openmp' in spec:
+ definitions = {
+ # Parallel Fortran
+ 'F77': spack_f77,
+ 'FLINK': spack_f77,
+ 'F_LIB': '',
+ 'F_INC': '',
+ 'FFLAGS': '-O3 ' + self.compiler.openmp_flag,
+ 'FLINKFLAGS': '-O3 ' + self.compiler.openmp_flag,
+ # Parallel C
+ 'CC': spack_cc,
+ 'CLINK': spack_cc,
+ 'C_LIB': '-lm',
+ 'C_INC': '',
+ 'CFLAGS': '-O3 ' + self.compiler.openmp_flag,
+ 'CLINKFLAGS': '-O3 ' + self.compiler.openmp_flag,
+ # Utilities C
+ 'UCC': spack_cc,
+ 'BINDIR': prefix.bin,
+ 'RAND': 'randi8',
+ 'WTIME': 'wtime.c',
+ }
+ elif 'implementation=serial' in spec:
+ definitions = {
+ # Parallel Fortran
+ 'F77': spack_f77,
+ 'FLINK': spack_f77,
+ 'F_LIB': '',
+ 'F_INC': '',
+ 'FFLAGS': '-O3',
+ 'FLINKFLAGS': '-O3',
+ # Parallel C
+ 'CC': spack_cc,
+ 'CLINK': spack_cc,
+ 'C_LIB': '-lm',
+ 'C_INC': '',
+ 'CFLAGS': '-O3',
+ 'CLINKFLAGS': '-O3',
+ # Utilities C
+ 'UCC': spack_cc,
+ 'BINDIR': prefix.bin,
+ 'RAND': 'randi8',
+ 'WTIME': 'wtime.c',
+ }
+
+ with working_dir(self.build_directory):
+ with open('config/make.def', 'w') as make_def:
+ for key in definitions:
+ make_def.write('{0} = {1}\n'.format(
+ key, definitions[key]))
+
+ with open('config/suite.def', 'w') as suite_def:
+ for name in names:
+ for classname in classes:
+ # Classes C, D and E are not available for DT
+ if name == 'dt' and classname in ('C', 'D', 'E'):
+ continue
+
+ # Class E is not available for IS
+ if name == 'is' and classname == 'E':
+ continue
+
+ if 'implementation=mpi' in spec:
+ for nproc in nprocs:
+ suite_def.write('{0}\t{1}\t{2}\n'.format(
+ name, classname, nproc))
+ else:
+ suite_def.write('{0}\t{1}\n'.format(
+ name, classname))
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+
+ with working_dir(self.build_directory):
+ make('suite')
diff --git a/var/spack/repos/builtin/packages/npm/package.py b/var/spack/repos/builtin/packages/npm/package.py
index 7910a8af9b..89a46bc19b 100644
--- a/var/spack/repos/builtin/packages/npm/package.py
+++ b/var/spack/repos/builtin/packages/npm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ import os
from spack import *
-class Npm(Package):
+class Npm(AutotoolsPackage):
"""npm: A package manager for javascript."""
homepage = "https://github.com/npm/npm"
@@ -36,19 +36,11 @@ class Npm(Package):
version('3.10.9', 'ec1eb22b466ce87cdd0b90182acce07f')
version('3.10.5', '46002413f4a71de9b0da5b506bf1d992')
- depends_on('node-js')
-
+ depends_on('node-js', type=('build', 'run'))
+
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
npm_config_cache_dir = "%s/npm-cache" % dependent_spec.prefix
if not os.path.isdir(npm_config_cache_dir):
mkdir(npm_config_cache_dir)
run_env.set('npm_config_cache', npm_config_cache_dir)
spack_env.set('npm_config_cache', npm_config_cache_dir)
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- if self.run_tests:
- make('test')
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/npth/package.py b/var/spack/repos/builtin/packages/npth/package.py
new file mode 100644
index 0000000000..c99c01ebb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/npth/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Npth(AutotoolsPackage):
+ """nPth is a library to provide the GNU Pth API and thus a
+ non-preemptive threads implementation."""
+
+ homepage = "https://gnupg.org/software/npth/index.html"
+ url = "https://gnupg.org/ftp/gcrypt/npth/npth-1.4.tar.bz2"
+
+ version('1.4', '76cef5542e0db6a339cf960641ed86f8')
diff --git a/var/spack/repos/builtin/packages/nspr/package.py b/var/spack/repos/builtin/packages/nspr/package.py
new file mode 100644
index 0000000000..cddcdb16a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nspr/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nspr(AutotoolsPackage):
+ """Netscape Portable Runtime (NSPR) provides a platform-neutral API
+ for system level and libc-like functions."""
+
+ homepage = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR"
+ url = "http://ftp.mozilla.org/pub/nspr/releases/v4.13.1/src/nspr-4.13.1.tar.gz"
+
+ version('4.13.1', '9c44298a6fc478b3c0a4e98f4f9981ed')
+
+ depends_on('perl', type='build')
+
+ configure_directory = 'nspr'
+
+ def configure_args(self):
+ return [
+ '--with-mozilla',
+ '--enable-64bit' # without this, fails when 32-bit glibc not found
+ ]
diff --git a/var/spack/repos/builtin/packages/numactl/package.py b/var/spack/repos/builtin/packages/numactl/package.py
new file mode 100644
index 0000000000..26df59c85a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/numactl/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Numactl(AutotoolsPackage):
+ """NUMA support for Linux"""
+
+ homepage = "http://oss.sgi.com/projects/libnuma/"
+ url = "https://github.com/numactl/numactl/archive/v2.0.11.tar.gz"
+
+ version('2.0.11', 'b56d2367217cde390b4d8087e00773b8')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/numdiff/package.py b/var/spack/repos/builtin/packages/numdiff/package.py
index 0a912d3db9..b584d1156c 100644
--- a/var/spack/repos/builtin/packages/numdiff/package.py
+++ b/var/spack/repos/builtin/packages/numdiff/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,6 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import sys
class Numdiff(AutotoolsPackage):
@@ -34,6 +33,38 @@ class Numdiff(AutotoolsPackage):
homepage = 'https://www.nongnu.org/numdiff'
url = 'http://nongnu.askapache.com/numdiff/numdiff-5.8.1.tar.gz'
- version('5.8.1', 'a295eb391f6cb1578209fc6b4f9d994e')
+ maintainers = ['davydden']
- depends_on('gettext', when=sys.platform == 'darwin')
+ version('5.9.0', '794461a7285d8b9b1f2c4a8149889ea6')
+ version('5.8.1', 'a295eb391f6cb1578209fc6b4f9d994e')
+
+ variant('nls', default=False,
+ description="Enable Natural Language Support")
+ variant('gmp', default=False,
+ description="Use GNU Multiple Precision Arithmetic Library")
+
+ depends_on('gettext', when='+nls')
+ depends_on('gmp', when='+gmp')
+
+ def configure_args(self):
+ spec = self.spec
+ args = []
+ if '+nls' in spec:
+ args.append('--enable-nls')
+ else:
+ args.append('--disable-nls')
+
+ if '+gmp' in spec:
+ # compile with -O0 as per upstream known issue with optimization
+ # and GMP; https://launchpad.net/ubuntu/+source/numdiff/+changelog
+ # http://www.nongnu.org/numdiff/#issues
+ # keep this variant off by default as one still encounter
+ # GNU MP: Cannot allocate memory (size=2305843009206983184)
+ args.extend([
+ '--enable-gmp',
+ 'CFLAGS=-O0'
+ ])
+ else:
+ args.append('--disable-gmp')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/nut/package.py b/var/spack/repos/builtin/packages/nut/package.py
new file mode 100644
index 0000000000..2ff9f77c9c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/nut/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Nut(CMakePackage):
+ """NuT is Monte Carlo code for neutrino transport and
+ is a C++ analog to the Haskell McPhD code.
+ NuT is principally aimed at exploring on-node parallelism
+ and performance issues."""
+
+ homepage = "https://github.com/lanl/NuT"
+ url = "https://github.com/lanl/NuT.git"
+ tags = ['proxy-app']
+
+ version(
+ 'serial', git='https://github.com/lanl/NuT.git',
+ branch='master')
+ version(
+ 'openmp', git='https://github.com/lanl/NuT.git',
+ branch='openmp')
+
+ depends_on('random123')
+
+ # serial must be built with clang
+ conflicts('%gcc', when='@serial')
+ conflicts('%intel', when='@serial')
+ conflicts('%pgi', when='@serial')
+ conflicts('%xl', when='@serial')
+ conflicts('%nag', when='@serial')
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('RANDOM123_DIR', self.spec['random123'].prefix)
+
+ build_targets = ['VERBOSE=on']
+
+ def install(self, spec, prefix):
+ install('README.md', prefix)
+ mkdirp(prefix.bin)
+ install('spack-build/test/nut_unittests', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/nwchem/package.py b/var/spack/repos/builtin/packages/nwchem/package.py
index 556dba34c2..10262be6a8 100644
--- a/var/spack/repos/builtin/packages/nwchem/package.py
+++ b/var/spack/repos/builtin/packages/nwchem/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -43,39 +43,41 @@ class Nwchem(Package):
depends_on('python@2.7:2.8', type=('build', 'run'))
+ # first hash is sha256 of the patch (required for URL patches),
+ # second is sha256 for the archive.
# patches for 6.6-27746:
urls_for_patches = {
'@6.6': [
- ('http://www.nwchem-sw.org/images/Tddft_mxvec20.patch.gz', 'f91c6a04df56e228fe946291d2f38c9a'),
- ('http://www.nwchem-sw.org/images/Tools_lib64.patch.gz', 'b71e8dbad27f1c97b60a53ec34d3f6e0'),
- ('http://www.nwchem-sw.org/images/Config_libs66.patch.gz', 'cc4be792e7b5128c3f9b7b1167ade2cf'),
- ('http://www.nwchem-sw.org/images/Cosmo_meminit.patch.gz', '1d94685bf3b72d8ecd40c46334348ca7'),
- ('http://www.nwchem-sw.org/images/Sym_abelian.patch.gz', 'b19cade61c787916a73a4aaf6e2445d6'),
- ('http://www.nwchem-sw.org/images/Xccvs98.patch.gz', 'b9aecc516a3551dcf871cb2f066598cb'),
- ('http://www.nwchem-sw.org/images/Dplot_tolrho.patch.gz', '0a5bdad63d2d0ffe46b28db7ad6d9cec'),
- ('http://www.nwchem-sw.org/images/Driver_smalleig.patch.gz', 'c3f609947220c0adb524b02c316b5564'),
- ('http://www.nwchem-sw.org/images/Ga_argv.patch.gz', '7a665c981cfc17187455e1826f095f6f'),
- ('http://www.nwchem-sw.org/images/Raman_displ.patch.gz', 'ed334ca0b2fe81ce103ef8cada990c4c'),
- ('http://www.nwchem-sw.org/images/Ga_defs.patch.gz', '0c3cab4d5cbef5acac16ffc5e6f869ef'),
- ('http://www.nwchem-sw.org/images/Zgesvd.patch.gz', '8fd5a11622968ef4351bd3d5cddce8f2'),
- ('http://www.nwchem-sw.org/images/Cosmo_dftprint.patch.gz', '64dcf27f3c6ced2cadfb504fa66e9d08'),
- ('http://www.nwchem-sw.org/images/Txs_gcc6.patch.gz', '56595a7252da051da13f94edc54fe059'),
- ('http://www.nwchem-sw.org/images/Gcc6_optfix.patch.gz', 'c6642c21363c09223784b47b8636047d'),
- ('http://www.nwchem-sw.org/images/Util_gnumakefile.patch.gz', 'af74ea2e32088030137001ce5cb047c5'),
- ('http://www.nwchem-sw.org/images/Util_getppn.patch.gz', '8dec8ee198bf5ec4c3a22a6dbf31683c'),
- ('http://www.nwchem-sw.org/images/Gcc6_macs_optfix.patch.gz', 'a891a2713aac8b0423c8096461c243eb'),
- ('http://www.nwchem-sw.org/images/Notdir_fc.patch.gz', '2dc997d4ab3719ac7964201adbc6fd79')
+ ('http://www.nwchem-sw.org/images/Tddft_mxvec20.patch.gz', 'ae04d4754c25fc324329dab085d4cc64148c94118ee702a7e14fce6152b4a0c5', 'cdfa8a5ae7d6ee09999407573b171beb91e37e1558a3bfb2d651982a85f0bc8f'),
+ ('http://www.nwchem-sw.org/images/Tools_lib64.patch.gz', 'ef2eadef89c055c4651ea807079577bd90e1bc99ef6c89f112f1f0e7560ec9b4', '76b8d3e1b77829b683234c8307fde55bc9249b87410914b605a76586c8f32dae'),
+ ('http://www.nwchem-sw.org/images/Config_libs66.patch.gz', '56f9c4bab362d82fb30d97564469e77819985a38e15ccaf04f647402c1ee248e', 'aa17f03cbb22ad7d883e799e0fddad1b5957f5f30b09f14a1a2caeeb9663cc07'),
+ ('http://www.nwchem-sw.org/images/Cosmo_meminit.patch.gz', 'f05f09ca235ad222fe47d880bfd05a1b88d0148b990ca8c7437fa231924be04b', '569c5ee528f3922ee60ca831eb20ec6591633a36f80efa76cbbe41cabeb9b624'),
+ ('http://www.nwchem-sw.org/images/Sym_abelian.patch.gz', 'e3470fb5786ab30bf2eda3bb4acc1e4c48fb5e640a09554abecf7d22b315c8fd', 'aa693e645a98dbafbb990e26145d65b100d6075254933f36326cf00bac3c29e0'),
+ ('http://www.nwchem-sw.org/images/Xccvs98.patch.gz', '75540e0436c12e193ed0b644cff41f5036d78c101f14141846083f03ad157afa', '1c0b0f1293e3b9b05e9e51e7d5b99977ccf1edb4b072872c8316452f6cea6f13'),
+ ('http://www.nwchem-sw.org/images/Dplot_tolrho.patch.gz', '8c30f92730d15f923ec8a623e3b311291eb2ba8b9d5a9884716db69a18d14f24', '2ebb1a5575c44eef4139da91f0e1e60057b2eccdba7f57a8fb577e840c326cbb'),
+ ('http://www.nwchem-sw.org/images/Driver_smalleig.patch.gz', 'a040df6f1d807402ce552ba6d35c9610d5efea7a9d6342bbfbf03c8d380a4058', 'dd65bfbae6b472b94c8ee81d74f6c3ece37c8fc8766ff7a3551d8005d44815b8'),
+ ('http://www.nwchem-sw.org/images/Ga_argv.patch.gz', '6fcd3920978ab95083483d5ed538cd9a6f2a80c2cafa0c5c7450fa5621f0a314', '8a78cb2af14314b92be9d241b801e9b9fed5527b9cb47a083134c7becdfa7cf1'),
+ ('http://www.nwchem-sw.org/images/Raman_displ.patch.gz', 'ca4312cd3ed1ceacdc3a7d258bb05b7824c393bf44f44c28a789ebeb29a8dba4', '6a16f0f589a5cbb8d316f68bd2e6a0d46cd47f1c699a4b256a3973130061f6c3'),
+ ('http://www.nwchem-sw.org/images/Ga_defs.patch.gz', 'f8ac827fbc11f7d2a9d8ec840c6f79d4759ef782bd4d291f2e88ec81b1b230aa', 'c6f1a48338d196e1db22bcfc6087e2b2e6eea50a34d3a2b2d3e90cccf43742a9'),
+ ('http://www.nwchem-sw.org/images/Zgesvd.patch.gz', 'c333a94ceb2c35a490f24b007485ac6e334e153b03cfc1d093b6037221a03517', '4af592c047dc3e0bc4962376ae2c6ca868eb7a0b40a347ed9b88e887016ad9ed'),
+ ('http://www.nwchem-sw.org/images/Cosmo_dftprint.patch.gz', '449d59983dc68c23b34e6581370b2fb3d5ea425b05c3182f0973e5b0e1a62651', 'd3b73431a68d6733eb7b669d471e18a83e03fa8e40c48e536fe8edecd99250ff'),
+ ('http://www.nwchem-sw.org/images/Txs_gcc6.patch.gz', '1dab87f23b210e941c765f7dd7cc2bed06d292a2621419dede73f10ba1ca1bcd', '139692215718cd7414896470c0cc8b7817a73ece1e4ca93bf752cf1081a195af'),
+ ('http://www.nwchem-sw.org/images/Gcc6_optfix.patch.gz', '8f8a5f8246bc1e42ef0137049acab4448a2e560339f44308703589adf753c148', '15cff43ab0509e0b0e83c49890032a848d6b7116bd6c8e5678e6c933f2d051ab'),
+ ('http://www.nwchem-sw.org/images/Util_gnumakefile.patch.gz', '173e17206a9099c3512b87e3f42441f5b089db82be1d2b306fe2a0070e5c8fad', '5dd82b9bd55583152295c999a0e4d72dd9d5c6ab7aa91117c2aae57a95a14ba1'),
+ ('http://www.nwchem-sw.org/images/Util_getppn.patch.gz', 'c4a23592fdcfb1fb6b65bc6c1906ac36f9966eec4899c4329bc8ce12015d2495', '8be418e1f8750778a31056f1fdf2a693fa4a12ea86a531f1ddf6f3620421027e'),
+ ('http://www.nwchem-sw.org/images/Gcc6_macs_optfix.patch.gz', 'ff33d5f1ccd33385ffbe6ce7a18ec1506d55652be6e7434dc8065af64c879aaa', 'fade16098a1f54983040cdeb807e4e310425d7f66358807554e08392685a7164'),
+ ('http://www.nwchem-sw.org/images/Notdir_fc.patch.gz', '54c722fa807671d6bf1a056586f0923593319d09c654338e7dd461dcd29ff118', 'a6a233951eb254d8aff5b243ca648def21fa491807a66c442f59c437f040ee69')
]
}
# Iterate over patches
- for condition, urls in urls_for_patches.iteritems():
- for url, md5 in urls:
- patch(url, when=condition, level=0, md5=md5)
+ for condition, urls in urls_for_patches.items():
+ for url, sha256, archive_sha256 in urls:
+ patch(url, when=condition, level=0, sha256=sha256, archive_sha256=archive_sha256)
def install(self, spec, prefix):
- scalapack = spec['scalapack'].scalapack_libs
- lapack = spec['lapack'].lapack_libs
- blas = spec['blas'].blas_libs
+ scalapack = spec['scalapack'].libs
+ lapack = spec['lapack'].libs
+ blas = spec['blas'].libs
# see http://www.nwchem-sw.org/index.php/Compiling_NWChem
args = []
args.extend([
@@ -88,7 +90,7 @@ class Nwchem(Package):
'MPI_LOC=%s' % spec['mpi'].prefix,
'USE_PYTHONCONFIG=y',
'PYTHONVERSION=%s' % spec['python'].version.up_to(2),
- 'PYTHONHOME=%s' % spec['python'].prefix,
+ 'PYTHONHOME=%s' % spec['python'].home,
'BLASOPT=%s' % ((lapack + blas).ld_flags),
'BLAS_LIB=%s' % blas.ld_flags,
'LAPACK_LIB=%s' % lapack.ld_flags,
diff --git a/var/spack/repos/builtin/packages/ocaml/package.py b/var/spack/repos/builtin/packages/ocaml/package.py
index 9488d3b7a6..e93d811f06 100644
--- a/var/spack/repos/builtin/packages/ocaml/package.py
+++ b/var/spack/repos/builtin/packages/ocaml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/oce/package.py b/var/spack/repos/builtin/packages/oce/package.py
index 2d518d83c3..6fc6183e40 100644
--- a/var/spack/repos/builtin/packages/oce/package.py
+++ b/var/spack/repos/builtin/packages/oce/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from spack.operating_systems.mac_os import macOS_version
import platform
@@ -32,8 +33,11 @@ class Oce(Package):
Open CASCADE library.
"""
homepage = "https://github.com/tpaviot/oce"
- url = "https://github.com/tpaviot/oce/archive/OCE-0.17.tar.gz"
+ url = "https://github.com/tpaviot/oce/archive/OCE-0.18.tar.gz"
+ version('0.18.2', '6dfd68e459e2c62387579888a867281f')
+ version('0.18.1', '2a7597f4243ee1f03245aeeb02d00956')
+ version('0.18', '226e45e77c16a4a6e127c71fefcd171410703960ae75c7ecc7eb68895446a993')
version('0.17.2', 'bf2226be4cd192606af677cf178088e5')
version('0.17.1', '36c67b87093c675698b483454258af91')
version('0.17', 'f1a89395c4b0d199bea3db62b85f818d')
@@ -42,6 +46,8 @@ class Oce(Package):
variant('tbb', default=True,
description='Build with Intel Threading Building Blocks')
+ variant('X11', default=False,
+ description='Build with X11 enabled')
depends_on('cmake@2.8:', type='build')
depends_on('tbb', when='+tbb')
@@ -54,10 +60,15 @@ class Oce(Package):
# https://github.com/tpaviot/oce/commit/61cb965b9ffeca419005bc15e635e67589c421dd.patch
patch('null.patch', when='@0.16:0.17.1')
+ # OCE depends on xlocale.h from glibc-headers but it was removed in 2.26,
+ # see https://github.com/tpaviot/oce/issues/675
+ patch('xlocale.patch', level=0, when='@0.18.1:')
+
# fix build with Xcode 8 "previous definition of CLOCK_REALTIME"
# reported 27 Sep 2016 https://github.com/tpaviot/oce/issues/643
- if (platform.system() == "Darwin") and (platform.mac_ver()[0] == '10.12'):
- patch('sierra.patch')
+ if (platform.system() == "Darwin") and (
+ macOS_version() == Version('10.12')):
+ patch('sierra.patch', when='@0.17.2:0.18.0')
def install(self, spec, prefix):
options = []
@@ -67,7 +78,8 @@ class Oce(Package):
'-DOCE_BUILD_SHARED_LIB:BOOL=ON',
'-DCMAKE_BUILD_TYPE:STRING=Release',
'-DOCE_DATAEXCHANGE:BOOL=ON',
- '-DOCE_DISABLE_X11:BOOL=ON',
+ '-DOCE_DISABLE_X11:BOOL=%s' % (
+ 'OFF' if '+X11' in spec else 'ON'),
'-DOCE_DRAW:BOOL=OFF',
'-DOCE_MODEL:BOOL=ON',
'-DOCE_MULTITHREAD_LIBRARY:STRING=%s' % (
@@ -85,8 +97,14 @@ class Oce(Package):
'-DOCE_OSX_USE_COCOA:BOOL=ON',
])
- options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % prefix)
+ if platform.system() == 'Darwin' and (
+ macOS_version() >= Version('10.12')):
+ # use @rpath on Sierra due to limit of dynamic loader
+ options.append('-DCMAKE_MACOSX_RPATH=ON')
+ else:
+ options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % prefix)
cmake('.', *options)
make("install/strip")
- make("test")
+ if self.run_tests:
+ make("test")
diff --git a/var/spack/repos/builtin/packages/oce/sierra.patch b/var/spack/repos/builtin/packages/oce/sierra.patch
index 8db3af5e37..1c0c86569b 100644
--- a/var/spack/repos/builtin/packages/oce/sierra.patch
+++ b/var/spack/repos/builtin/packages/oce/sierra.patch
@@ -1,45 +1,12 @@
-diff --git a/adm/cmake/TKernel/CMakeLists.txt b/adm/cmake/TKernel/CMakeLists.txt
-index 54e241e..72873c6 100644
---- a/adm/cmake/TKernel/CMakeLists.txt
-+++ b/adm/cmake/TKernel/CMakeLists.txt
-@@ -29,7 +29,7 @@ if(WIN32)
- set(TOOLKIT_LIBS ${TOOLKIT_LIBS} ${CSF_SOCKETLibs_LIB} ${CSF_advapi32_LIB} ${CSF_gdi32_LIB} ${CSF_user32_LIB} ${CSF_kernel32_LIB} ${CSF_psapi_LIB})
- else(WIN32)
- #  An implementation for Mac OS X has been added in src/OSD/gettime_osx.h
-- if(NOT APPLE)
-+ if(APPLE)
- include( CheckFunctionExists )
- check_function_exists( clock_gettime CLOCK_GETTIME_IN_LIBC )
- if(NOT CLOCK_GETTIME_IN_LIBC)
-@@ -40,7 +40,7 @@ else(WIN32)
- endif(NOT CLOCK_GETTIME_IN_LIBRT)
- set(TOOLKIT_LIBS ${TOOLKIT_LIBS} rt)
- endif(NOT CLOCK_GETTIME_IN_LIBC)
-- endif(NOT APPLE)
-+ endif(APPLE)
- endif(WIN32)
-
- # Adde-DHAVE_TBB in TKernel in order to benefit from Standard_MMgrTBBalloc
-@@ -70,4 +70,3 @@ if (OCE_BUILD_TKERNEL_WITH_INSTALL_RPATH)
- set_target_properties_install_rpath(${TOOLKIT} "${OCE_INSTALL_LIB_DIR_RPATH};${OCE_INSTALL_PACKAGE_LIB_DIR_RPATH}")
- set_target_properties(${TOOLKIT} PROPERTIES BUILD_WITH_INSTALL_RPATH ON)
- endif ()
--
diff --git a/src/OSD/OSD_Chronometer.cxx b/src/OSD/OSD_Chronometer.cxx
-index 444f844..25970d0 100644
---- a/src/OSD/OSD_Chronometer.cxx
+index f7374fb..63ac140 100644
+--- a/src/OSD/OSD_Chronometer.cxx.old
+++ b/src/OSD/OSD_Chronometer.cxx
@@ -51,7 +51,7 @@
#include <mach/mach.h>
#endif
-#if defined(__APPLE__) && defined(__MACH__)
-+#if defined(__OOOOPPLE__) && defined(__MACH__)
++#if defined(__APPLE__) && !defined(__MAC_10_12)
#include "gettime_osx.h"
#endif
-
-@@ -283,4 +283,3 @@ void OSD_Chronometer::Show (Standard_Real& user,
- system = Cumul_sys;
- if (!StopSav) Start();
- }
--
diff --git a/var/spack/repos/builtin/packages/oce/xlocale.patch b/var/spack/repos/builtin/packages/oce/xlocale.patch
new file mode 100644
index 0000000000..2c4ba59958
--- /dev/null
+++ b/var/spack/repos/builtin/packages/oce/xlocale.patch
@@ -0,0 +1,13 @@
+--- src/Standard/Standard_CLocaleSentry.hxx.ORIG 2017-08-11 07:51:11.000000000 +0200
++++ src/Standard/Standard_CLocaleSentry.hxx 2017-08-18 01:07:11.639206272 +0200
+@@ -30,7 +30,9 @@
+ #endif
+
+ //! We check _GNU_SOURCE for glibc extensions here and it is always defined by g++ compiler.
+- #if defined(_GNU_SOURCE) && !defined(__ANDROID__)
++ //! Musl libc does not provide xlocale.h
++ //! glibc 2.26+ does not provide xlocale.h (anymore)
++ #if defined(_GNU_SOURCE) && defined(__GLIBC__) && __GLIBC__ <= 2 && __GLIBC_MINOR__ < 26 && !defined(__ANDROID__)
+ #define HAVE_XLOCALE_H
+ #endif
+ #endif // ifndef HAVE_LOCALE_H
diff --git a/var/spack/repos/builtin/packages/oclock/package.py b/var/spack/repos/builtin/packages/oclock/package.py
index 84da93c36e..2d3a40457f 100644
--- a/var/spack/repos/builtin/packages/oclock/package.py
+++ b/var/spack/repos/builtin/packages/oclock/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Oclock(Package):
+class Oclock(AutotoolsPackage):
"""oclock is a simple analog clock using the SHAPE extension to make
a round (possibly transparent) window."""
@@ -42,9 +42,3 @@ class Oclock(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/octave-splines/package.py b/var/spack/repos/builtin/packages/octave-splines/package.py
index 11c9cc5ba7..c9a5f7b01d 100644
--- a/var/spack/repos/builtin/packages/octave-splines/package.py
+++ b/var/spack/repos/builtin/packages/octave-splines/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/octave/package.py b/var/spack/repos/builtin/packages/octave/package.py
index df144c8bbb..79dc74b518 100644
--- a/var/spack/repos/builtin/packages/octave/package.py
+++ b/var/spack/repos/builtin/packages/octave/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import sys
-class Octave(Package):
+class Octave(AutotoolsPackage):
"""GNU Octave is a high-level language, primarily intended for numerical
computations. It provides a convenient command line interface for solving
linear and nonlinear problems numerically, and for performing other
@@ -34,13 +34,19 @@ class Octave(Package):
Matlab. It may also be used as a batch-oriented language."""
homepage = "https://www.gnu.org/software/octave/"
- url = "ftp://ftp.gnu.org/gnu/octave/octave-4.0.0.tar.gz"
+ url = "https://ftp.gnu.org/gnu/octave/octave-4.0.0.tar.gz"
extendable = True
+ version('4.2.1', '80c28f6398576b50faca0e602defb9598d6f7308b0903724442c2a35a605333b')
+ version('4.2.0', '443ba73782f3531c94bcf016f2f0362a58e186ddb8269af7dcce973562795567')
version('4.0.2', 'c2a5cacc6e4c52f924739cdf22c2c687')
version('4.0.0', 'a69f8320a4f20a8480c1b278b1adb799')
+ # patches
+ # see https://savannah.gnu.org/bugs/?50234
+ patch('patch_4.2.1_inline.diff', when='@4.2.1')
+
# Variants
variant('readline', default=True)
variant('arpack', default=False)
@@ -76,7 +82,7 @@ class Octave(Package):
depends_on('readline', when='+readline')
# Optional dependencies
- depends_on('arpack', when='+arpack')
+ depends_on('arpack-ng', when='+arpack')
depends_on('curl', when='+curl')
depends_on('fftw', when='+fftw')
depends_on('fltk', when='+fltk')
@@ -87,7 +93,7 @@ class Octave(Package):
depends_on('gnuplot', when='+gnuplot')
depends_on('image-magick', when='+magick')
depends_on('hdf5', when='+hdf5')
- depends_on('jdk', when='+jdk')
+ depends_on('java', when='+jdk') # TODO: requires Java 6 ?
depends_on('llvm', when='+llvm')
# depends_on('opengl', when='+opengl') # TODO: add package
depends_on('qhull', when='+qhull')
@@ -97,15 +103,18 @@ class Octave(Package):
depends_on('suite-sparse', when='+suitesparse')
depends_on('zlib', when='+zlib')
- def install(self, spec, prefix):
- config_args = [
- "--prefix=%s" % prefix
- ]
+ def configure_args(self):
+ # See
+ # https://github.com/macports/macports-ports/blob/master/math/octave/
+ # https://github.com/Homebrew/homebrew-science/blob/master/octave.rb
+
+ spec = self.spec
+ config_args = []
# Required dependencies
config_args.extend([
- "--with-blas=%s" % spec['blas'].prefix.lib,
- "--with-lapack=%s" % spec['lapack'].prefix.lib
+ "--with-blas=%s" % spec['blas'].libs.ld_flags,
+ "--with-lapack=%s" % spec['lapack'].libs.ld_flags
])
# Strongly recommended dependencies
@@ -116,9 +125,10 @@ class Octave(Package):
# Optional dependencies
if '+arpack' in spec:
+ sa = spec['arpack-ng']
config_args.extend([
- "--with-arpack-includedir=%s" % spec['arpack'].prefix.include,
- "--with-arpack-libdir=%s" % spec['arpack'].prefix.lib
+ "--with-arpack-includedir=%s" % sa.prefix.include,
+ "--with-arpack-libdir=%s" % sa.prefix.lib
])
else:
config_args.append("--without-arpack")
@@ -163,6 +173,8 @@ class Octave(Package):
if '+magick' in spec:
config_args.append("--with-magick=%s"
% spec['image-magick'].prefix.lib)
+ else:
+ config_args.append("--without-magick")
if '+hdf5' in spec:
config_args.extend([
@@ -174,16 +186,19 @@ class Octave(Package):
if '+jdk' in spec:
config_args.extend([
- "--with-java-homedir=%s" % spec['jdk'].prefix,
- "--with-java-includedir=%s" % spec['jdk'].prefix.include,
- "--with-java-libdir=%s" % spec['jdk'].prefix.lib
+ "--with-java-homedir=%s" % spec['java'].prefix,
+ "--with-java-includedir=%s" % spec['java'].prefix.include,
+ "--with-java-libdir=%s" % spec['java'].prefix.lib
])
+ else:
+ config_args.append("--disable-java")
if '~opengl' in spec:
config_args.extend([
"--without-opengl",
"--without-framework-opengl"
])
+ # TODO: opengl dependency and package is missing?
if '+qhull' in spec:
config_args.extend([
@@ -210,16 +225,13 @@ class Octave(Package):
else:
config_args.append("--without-z")
- configure(*config_args)
-
- make()
- make("install")
+ return config_args
# ========================================================================
# Set up environment to make install easy for Octave extensions.
# ========================================================================
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""Called before Octave modules' install() methods.
In most cases, extensions will only need to have one line:
diff --git a/var/spack/repos/builtin/packages/octave/patch_4.2.1_inline.diff b/var/spack/repos/builtin/packages/octave/patch_4.2.1_inline.diff
new file mode 100644
index 0000000000..880818fbce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/octave/patch_4.2.1_inline.diff
@@ -0,0 +1,12 @@
+diff -r 73f7ef7169ac liboctave/system/file-stat.cc
+--- a/liboctave/system/file-stat.cc Thu Feb 23 16:08:44 2017 -0800
++++ b/liboctave/system/file-stat.cc Fri Feb 24 11:02:36 2017 -0800
+@@ -174,7 +174,7 @@ namespace octave
+ update_internal ();
+ }
+
+- inline file_stat::~file_stat () { }
++ file_stat::~file_stat () { }
+
+ void
+ file_stat::update_internal (bool force)
diff --git a/var/spack/repos/builtin/packages/octopus/package.py b/var/spack/repos/builtin/packages/octopus/package.py
index b74befbe35..c450cf6020 100644
--- a/var/spack/repos/builtin/packages/octopus/package.py
+++ b/var/spack/repos/builtin/packages/octopus/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,17 +30,11 @@ class Octopus(Package):
theory code."""
homepage = "http://www.tddft.org/programs/octopus/"
- base_url = "http://www.tddft.org/programs/octopus/down.php?file="
+ url = "http://www.tddft.org/programs/octopus/down.php?file=6.0/octopus-6.0.tar.gz"
version('6.0', '5d1168c2a8d7fd9cb9492eaebaa7182e')
version('5.0.1', '2b6392ab67b843f9d4ca7413fc07e822')
- # Sample url is:
- # "http://www.tddft.org/programs/octopus/down.php?file=5.0.1/octopus-5.0.1.tar.gz"
- def url_for_version(self, version):
- return '{0}/{1}/octopus-{1}.tar.gz'.format(Octopus.base_url,
- version.dotted)
-
variant('scalapack', default=False,
description='Compile with Scalapack')
variant('metis', default=True,
@@ -49,8 +43,8 @@ class Octopus(Package):
description='Compile with ParMETIS')
variant('netcdf', default=False,
description='Compile with Netcdf')
- variant('arpack-ng', default=False,
- description='Compile with ARPACK-ng')
+ variant('arpack', default=False,
+ description='Compile with ARPACK')
depends_on('blas')
depends_on('gsl')
@@ -62,17 +56,15 @@ class Octopus(Package):
depends_on('parmetis', when='+parmetis')
depends_on('scalapack', when='+scalapack')
depends_on('netcdf-fortran', when='+netcdf')
- depends_on('arpack-ng', when='+arpack-ng')
+ depends_on('arpack-ng', when='+arpack')
# optional dependencies:
# TODO: parmetis, etsf-io, sparskit,
# feast, libfm, pfft, isf, pnfft
def install(self, spec, prefix):
- arpack = find_libraries(['libarpack'], root=spec[
- 'arpack-ng'].prefix.lib, shared=True)
- lapack = spec['lapack'].lapack_libs
- blas = spec['blas'].blas_libs
+ lapack = spec['lapack'].libs
+ blas = spec['blas'].libs
args = []
args.extend([
'--prefix=%s' % prefix,
@@ -96,23 +88,28 @@ class Octopus(Package):
if '+netcdf' in spec:
args.extend([
'--with-netcdf-prefix=%s' % spec['netcdf-fortran'].prefix,
- '--with-netcdf-include=%s' %
+ '--with-netcdf-include=%s' %
spec['netcdf-fortran'].prefix.include,
])
- if '+arpack-ng' in spec:
+ if '+arpack' in spec:
+ arpack_libs = spec['arpack-ng'].libs.joined()
args.extend([
- '--with-arpack={0}'.format(arpack.joined()),
+ '--with-arpack={0}'.format(arpack_libs),
])
+ if '+mpi' in spec['arpack-ng']:
+ args.extend([
+ '--with-parpack={0}'.format(arpack_libs),
+ ])
+
if '+scalapack' in spec:
args.extend([
- '--with-blacs=%s' % spec['scalapack'].scalapack_libs,
- '--with-scalapack=%s' % spec['scalapack'].scalapack_libs,
+ '--with-blacs=%s' % spec['scalapack'].libs,
+ '--with-scalapack=%s' % spec['scalapack'].libs
])
+
# --with-etsf-io-prefix=
# --with-sparskit=${prefix}/lib/libskit.a
# --with-pfft-prefix=${prefix} --with-mpifftw-prefix=${prefix}
- # --with-parpack=${prefix}/lib/libparpack.dylib
- # --with-parmetis-prefix=${prefix}
# --with-berkeleygw-prefix=${prefix}
# When preprocessor expands macros (i.e. CFLAGS) defined as quoted
diff --git a/var/spack/repos/builtin/packages/of-adios-write/package.py b/var/spack/repos/builtin/packages/of-adios-write/package.py
new file mode 100644
index 0000000000..0c56f0286c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/of-adios-write/package.py
@@ -0,0 +1,136 @@
+##############################################################################
+# Copyright (c) 2017 Mark Olesen, OpenCFD Ltd.
+#
+# This file was authored by Mark Olesen <mark.olesen@esi-group.com>
+# and is released as part of spack under the LGPL license.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for the LLNL notice and LGPL.
+#
+# License
+# -------
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# Legal Notice
+# ------------
+# OPENFOAM is a trademark owned by OpenCFD Ltd
+# (producer and distributor of the OpenFOAM software via www.openfoam.com).
+# The trademark information must remain visible and unadulterated in this
+# file and via the "spack info" and comply with the term set by
+# http://openfoam.com/legal/trademark-policy.php
+#
+# This file is not part of OpenFOAM, nor does it constitute a component of an
+# OpenFOAM distribution.
+#
+##############################################################################
+import os
+
+import llnl.util.tty as tty
+
+from spack import *
+from spack.pkg.builtin.openfoam_com import add_extra_files
+
+
+class OfAdiosWrite(Package):
+ """adios-write supplies additional libraries and function objects
+ for reading/writing OpenFOAM data with ADIOS.
+ This offering is part of the community repository supported by OpenCFD Ltd,
+ producer and distributor of the OpenFOAM software via www.openfoam.com,
+ and owner of the OPENFOAM trademark.
+ OpenCFD Ltd has been developing and releasing OpenFOAM since its debut
+ in 2004.
+ """
+
+ # Currently only via git, but with some branches corresponding to main
+ # OpenFOAM releases.
+ homepage = "https://develop.openfoam.com/Community/feature-adiosWrite/"
+ gitrepo = "https://develop.openfoam.com/Community/feature-adiosWrite.git"
+
+ version('develop', branch='develop', git=gitrepo)
+ version('1706', branch='v1706', git=gitrepo)
+ version('1612', branch='v1612', git=gitrepo)
+
+ variant('source', default=True, description='Install library source')
+
+ depends_on('openfoam-com@develop+source', when='@develop')
+ depends_on('openfoam-com@1706+source', when='@1706')
+ depends_on('openfoam-com@1612+source', when='@1612')
+ depends_on('adios')
+
+ # General patches
+ common = ['change-userdir.sh', 'spack-derived-Allwmake']
+ assets = []
+
+ build_script = './spack-derived-Allwmake'
+ build_userdir = 'spack-userdir' # Build user APPBIN, LIBBIN into here
+
+ phases = ['configure', 'build', 'install']
+
+ #
+ # - End of definitions / setup -
+ #
+
+ def patch(self):
+ """Copy additional files or other patching."""
+ add_extra_files(self, self.common, self.assets)
+ # Emit openfoam version immediately, if we resolved the wrong version
+ # it takes a very long time to rebuild!
+ tty.info('Build for ' + self.spec['openfoam'].format('$_$@$%@+$+'))
+
+ def configure(self, spec, prefix):
+ """Generate spack-config.sh file."""
+ # Local tweaks
+ config = join_path(self.stage.source_path, 'spack-config.sh')
+ with open(config, 'w') as out:
+ out.write(
+ """# Local tweaks for building
+# Location of adios from spack
+export ADIOS_ARCH_PATH={adios_dir}
+
+# Local build (for user appbin, libbin)
+. ./change-userdir.sh $PWD/{user_dir}
+#
+"""
+ .format(
+ adios_dir=spec['adios'].prefix,
+ user_dir=self.build_userdir))
+
+ def build(self, spec, prefix):
+ """Build with Allwmake script, wrapped to source environment first."""
+ args = []
+ if self.parallel: # Parallel build? - pass via environment
+ os.environ['WM_NCOMPPROCS'] = str(make_jobs)
+ builder = Executable(self.build_script)
+ builder(*args)
+
+ def install(self, spec, prefix):
+ """Install under the prefix directory"""
+
+ for f in ['README.md', 'Issues.txt']:
+ if os.path.isfile(f):
+ install(f, join_path(self.prefix, f))
+
+ dirs = ['doc', 'etc', 'tutorials']
+ if '+source' in spec:
+ dirs.append('src')
+
+ for d in dirs:
+ install_tree(d, join_path(self.prefix, d))
+
+ # Place directly under 'lib' (no bin)
+ for d in ['lib']:
+ install_tree(
+ join_path(self.build_userdir, d),
+ join_path(self.prefix, d))
diff --git a/var/spack/repos/builtin/packages/ompss/package.py b/var/spack/repos/builtin/packages/ompss/package.py
index 02925974ea..f3cea1597d 100644
--- a/var/spack/repos/builtin/packages/ompss/package.py
+++ b/var/spack/repos/builtin/packages/ompss/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/ompt-openmp/package.py b/var/spack/repos/builtin/packages/ompt-openmp/package.py
index 40159e4c6c..803f70c7c2 100644
--- a/var/spack/repos/builtin/packages/ompt-openmp/package.py
+++ b/var/spack/repos/builtin/packages/ompt-openmp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class OmptOpenmp(Package):
+class OmptOpenmp(CMakePackage):
"""LLVM/Clang OpenMP runtime with OMPT support. This is a fork of the
OpenMPToolsInterface/LLVM-openmp fork of the official LLVM OpenMP
mirror. This library provides a drop-in replacement of the OpenMP
@@ -35,15 +35,10 @@ class OmptOpenmp(Package):
homepage = "https://github.com/OpenMPToolsInterface/LLVM-openmp"
url = "http://github.com/khuck/LLVM-openmp/archive/v0.1.tar.gz"
- version('0.1', '2334e6a84b52da41b27afd9831ed5370')
+ version('0.1', '59d6933a2e9b7d1423fb9c7c77d5663f')
- depends_on('cmake', type='build')
+ depends_on('cmake@2.8:', type='build')
- def install(self, spec, prefix):
- with working_dir("runtime/build", create=True):
- cmake('-DCMAKE_C_COMPILER=%s' % self.compiler.cc,
- '-DCMAKE_CXX_COMPILER=%s' % self.compiler.cxx,
- '-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '..', *std_cmake_args)
- make()
- make("install")
+ conflicts('%gcc@:4.7')
+
+ root_cmakelists_dir = 'runtime'
diff --git a/var/spack/repos/builtin/packages/oniguruma/package.py b/var/spack/repos/builtin/packages/oniguruma/package.py
new file mode 100644
index 0000000000..28fb33590c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/oniguruma/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Oniguruma(AutotoolsPackage):
+ """Regular expression library."""
+
+ homepage = "https://github.com/kkos/oniguruma"
+ url = "https://github.com/kkos/oniguruma/releases/download/v6.1.3/onig-6.1.3.tar.gz"
+
+ version('6.1.3', '2d105d352c3f852d662414f639e7e859')
diff --git a/var/spack/repos/builtin/packages/ont-albacore/package.py b/var/spack/repos/builtin/packages/ont-albacore/package.py
new file mode 100644
index 0000000000..882b6f6925
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ont-albacore/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class OntAlbacore(Package):
+ """Albacore is a software project that provides an entry point to the Oxford
+ Nanopore basecalling algorithms. It can be run from the command line on
+ Windows and multiple Linux platforms. A selection of configuration files
+ allow basecalling DNA libraries made with our current range of sequencing
+ kits and Flow Cells."""
+
+ homepage = "https://nanoporetech.com"
+ url = "https://mirror.oxfordnanoportal.com/software/analysis/ont_albacore-1.2.4-cp35-cp35m-manylinux1_x86_64.whl"
+
+ version('1.2.4', '559640bec4693af12e4d923e8d77adf6', expand=False)
+ version('1.1.0', 'fab4502ea1bad99d813aa2629e03e83d', expand=False)
+ extends('python')
+
+ depends_on('python@3.5.0:3.5.999', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-numpy@1.13.0', type=('build', 'run'))
+ depends_on('py-dateutil', type=('build', 'run'))
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-ont-fast5-api', type=('build', 'run'))
+ depends_on('py-pip', type=('build'))
+
+ def install(self, spec, prefix):
+ pip = which('pip')
+ pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/opari2/package.py b/var/spack/repos/builtin/packages/opari2/package.py
index 20c67716a4..9b0a4e9c47 100644
--- a/var/spack/repos/builtin/packages/opari2/package.py
+++ b/var/spack/repos/builtin/packages/opari2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Opari2(Package):
+class Opari2(AutotoolsPackage):
"""OPARI2 is a source-to-source instrumentation tool for OpenMP and hybrid
codes. It surrounds OpenMP directives and runtime library calls with calls
to the POMP2 measurement interface. OPARI2 will provide you with a new
@@ -39,14 +39,10 @@ class Opari2(Package):
homepage = "http://www.vi-hps.org/projects/score-p"
url = "http://www.vi-hps.org/upload/packages/opari2/opari2-1.1.2.tar.gz"
- version('2.0', '72350dbdb6139f2e68a5055a4f0ba16c',
- url='http://www.vi-hps.org/upload/packages/opari2/opari2-2.0.tar.gz')
- version('1.1.4', '245d3d11147a06de77909b0805f530c0',
- url='http://www.vi-hps.org/upload/packages/opari2/opari2-1.1.4.tar.gz')
+ version('2.0.1', '74af78f1f27b8caaa4271e0b97fb0fba')
+ version('2.0', '72350dbdb6139f2e68a5055a4f0ba16c')
+ version('1.1.4', '245d3d11147a06de77909b0805f530c0')
version('1.1.2', '9a262c7ca05ff0ab5f7775ae96f3539e')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--enable-shared")
- make()
- make("install")
+ def configure_args(self):
+ return ["--enable-shared"]
diff --git a/var/spack/repos/builtin/packages/openbabel/package.py b/var/spack/repos/builtin/packages/openbabel/package.py
new file mode 100644
index 0000000000..b88693d531
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openbabel/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Openbabel(CMakePackage):
+ """Open Babel is a chemical toolbox designed to speak the many languages
+ of chemical data. It's an open, collaborative project allowing anyone to
+ search, convert, analyze, or store data from molecular modeling, chemistry,
+ solid-state materials, biochemistry, or related areas."""
+
+ homepage = "http://openbabel.org/wiki/Main_Page"
+ url = "https://sourceforge.net/projects/openbabel/files/openbabel/2.4.1/openbabel-2.4.1.tar.gz"
+
+ version('2.4.1', 'd9defcd7830b0592fece4fe54a137b99')
+
+ variant('python', default=True, description='Build Python bindings')
+
+ extends('python', when='+python')
+
+ depends_on('python', type=('build', 'run'), when='+python')
+ depends_on('cmake@2.4.8:', type='build')
+ depends_on('pkg-config', type='build')
+ depends_on('cairo') # required to support PNG depiction
+ depends_on('eigen@3.0:') # required if using the language bindings
+ depends_on('libxml2') # required to read/write CML files, XML formats
+ depends_on('zlib') # required to support reading gzipped files
+
+ # Needed for Python 3.6 support
+ patch('python-3.6-rtld-global.patch', when='@:2.4.1+python')
+
+ # Convert tabs to spaces. Allows unit tests to pass
+ patch('testpdbformat-tabs-to-spaces.patch', when='@:2.4.1')
+
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+
+ if '+python' in spec:
+ args.extend([
+ '-DPYTHON_BINDINGS=ON',
+ '-DPYTHON_EXECUTABLE={0}'.format(spec['python'].command.path),
+ ])
+ else:
+ args.append('-DPYTHON_BINDINGS=OFF')
+
+ return args
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ obabel = Executable(join_path(self.prefix.bin, 'obabel'))
+ obabel('-:C1=CC=CC=C1Br', '-omol')
+
+ if '+python' in self.spec:
+ # Attempt to import the Python modules
+ for module in ['openbabel', 'pybel']:
+ python('-c', 'import {0}'.format(module))
diff --git a/var/spack/repos/builtin/packages/openbabel/python-3.6-rtld-global.patch b/var/spack/repos/builtin/packages/openbabel/python-3.6-rtld-global.patch
new file mode 100644
index 0000000000..68cd56a1f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openbabel/python-3.6-rtld-global.patch
@@ -0,0 +1,42 @@
+The DLFCN module has been removed from python 3.6, as it is not
+documented. Same funtionality can be achive with the os module
+that makes available the os.RTLD_GLOBAL variable for dlopen()
+
+See https://github.com/openbabel/openbabel/pull/372 for the
+source of this patch. The original patch only affects the CMake
+file that SWIG uses to generate openbabel.py. This patch also
+includes changes to openbabel.py.
+
+diff -Nuar a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
+--- a/scripts/CMakeLists.txt 2017-05-17 10:02:54.408527942 -0500
++++ b/scripts/CMakeLists.txt 2017-05-17 10:04:09.701598715 -0500
+@@ -81,11 +81,8 @@
+ COMMAND ${SWIG_EXECUTABLE} -python -c++ -small -O -templatereduce -naturalvar -I${openbabel_SOURCE_DIR}/include -I${openbabel_BINARY_DIR}/include -o ${openbabel_SOURCE_DIR}/scripts/python/openbabel-python.cpp ${eigen_define} -outdir ${openbabel_SOURCE_DIR}/scripts/python ${openbabel_SOURCE_DIR}/scripts/openbabel-python.i
+ COMMAND ${CMAKE_COMMAND} -E echo "import sys" > ob.py
+ COMMAND ${CMAKE_COMMAND} -E echo "if sys.platform.find('linux'\) != -1:" >> ob.py
+- COMMAND ${CMAKE_COMMAND} -E echo " try:" >> ob.py
+- COMMAND ${CMAKE_COMMAND} -E echo " import dl" >> ob.py
+- COMMAND ${CMAKE_COMMAND} -E echo " except ImportError:" >> ob.py
+- COMMAND ${CMAKE_COMMAND} -E echo " import DLFCN as dl" >> ob.py
+- COMMAND ${CMAKE_COMMAND} -E echo " sys.setdlopenflags(sys.getdlopenflags() | dl.RTLD_GLOBAL)" >> ob.py
++ COMMAND ${CMAKE_COMMAND} -E echo " import os" >> ob.py
++ COMMAND ${CMAKE_COMMAND} -E echo " sys.setdlopenflags(sys.getdlopenflags() | os.RTLD_GLOBAL)" >> ob.py
+ COMMAND cat ${openbabel_SOURCE_DIR}/scripts/python/openbabel.py >> ob.py
+ COMMAND ${CMAKE_COMMAND} -E copy ob.py ${openbabel_SOURCE_DIR}/scripts/python/openbabel.py
+ COMMAND ${CMAKE_COMMAND} -E remove ob.py
+diff -Nuar a/scripts/python/openbabel.py b/scripts/python/openbabel.py
+--- a/scripts/python/openbabel.py 2017-05-17 10:02:54.398527534 -0500
++++ b/scripts/python/openbabel.py 2017-05-17 10:04:26.705292138 -0500
+@@ -1,10 +1,7 @@
+ import sys
+ if sys.platform.find('linux') != -1:
+- try:
+- import dl
+- except ImportError:
+- import DLFCN as dl
+- sys.setdlopenflags(sys.getdlopenflags() | dl.RTLD_GLOBAL)
++ import os
++ sys.setdlopenflags(sys.getdlopenflags() | os.RTLD_GLOBAL)
+ # This file was automatically generated by SWIG (http://www.swig.org).
+ # Version 3.0.10
+ #
diff --git a/var/spack/repos/builtin/packages/openbabel/testpdbformat-tabs-to-spaces.patch b/var/spack/repos/builtin/packages/openbabel/testpdbformat-tabs-to-spaces.patch
new file mode 100644
index 0000000000..0a71a72e01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openbabel/testpdbformat-tabs-to-spaces.patch
@@ -0,0 +1,47 @@
+From 08cd38485d4cf1df8802da540f3018921dbc735e Mon Sep 17 00:00:00 2001
+From: "Adam J. Stewart" <ajstewart426@gmail.com>
+Date: Wed, 17 May 2017 10:56:23 -0500
+Subject: [PATCH] Convert tabs to spaces in testpdbformat.py
+
+See https://github.com/openbabel/openbabel/pull/1568
+
+---
+ test/testpdbformat.py | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/test/testpdbformat.py b/test/testpdbformat.py
+index 40bd316..ceb8496 100644
+--- a/test/testpdbformat.py
++++ b/test/testpdbformat.py
+@@ -24,12 +24,12 @@ class TestPDBFormat(BaseTest):
+
+ def testInsertionCodes(self):
+ """
+- Testing a PDB entry with insertion codes to distinguish residues
+- upon conversion to FASTA.
++ Testing a PDB entry with insertion codes to distinguish residues
++ upon conversion to FASTA.
+ """
+ self.canFindExecutable("babel")
+
+- self.entryPDBwithInsertioncodes="""ATOM 406 N VAL L 29 58.041 17.797 48.254 1.00 0.00 N
++ self.entryPDBwithInsertioncodes="""ATOM 406 N VAL L 29 58.041 17.797 48.254 1.00 0.00 N
+ ATOM 407 CA VAL L 29 57.124 18.088 47.170 1.00 0.00 C
+ ATOM 408 C VAL L 29 55.739 17.571 47.538 1.00 0.00 C
+ ATOM 409 O VAL L 29 55.535 16.362 47.550 1.00 0.00 O
+@@ -100,9 +100,9 @@ ATOM 473 HE1 TYR L 32 48.512 15.775 42.066 1.00 0.00 H
+ ATOM 474 HE2 TYR L 32 48.145 19.172 44.648 1.00 0.00 H
+ ATOM 475 HH TYR L 32 46.462 17.658 44.280 1.00 0.00 H
+ """
+- output, error = run_exec(self.entryPDBwithInsertioncodes,
+- "babel -ipdb -ofasta")
+- self.assertEqual(output.rstrip().rsplit("\n",1)[1], "VSSSY")
++ output, error = run_exec(self.entryPDBwithInsertioncodes,
++ "babel -ipdb -ofasta")
++ self.assertEqual(output.rstrip().rsplit("\n",1)[1], "VSSSY")
+
+ if __name__ == "__main__":
+ testsuite = []
+--
+2.9.4
+
diff --git a/var/spack/repos/builtin/packages/openblas/openblas0.2.19.diff b/var/spack/repos/builtin/packages/openblas/openblas0.2.19.diff
new file mode 100644
index 0000000000..442612d5cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openblas/openblas0.2.19.diff
@@ -0,0 +1,847 @@
+diff --git a/cpuid_x86.c b/cpuid_x86.c
+index bbd377f..dff1507 100644
+--- a/cpuid_x86.c
++++ b/cpuid_x86.c
+@@ -1110,6 +1110,9 @@ int get_cpuname(void){
+ break;
+ case 3:
+ switch (model) {
++ case 7:
++ // Bay Trail
++ return CPUTYPE_ATOM;
+ case 10:
+ case 14:
+ // Ivy Bridge
+diff --git a/driver/others/dynamic.c b/driver/others/dynamic.c
+index 18f85c3..a09660f 100644
+--- a/driver/others/dynamic.c
++++ b/driver/others/dynamic.c
+@@ -232,6 +232,7 @@ static gotoblas_t *get_coretype(void){
+ return &gotoblas_NEHALEM; //OS doesn't support AVX. Use old kernels.
+ }
+ }
++ if (model == 7) return &gotoblas_ATOM; //Bay Trail
+ return NULL;
+ case 4:
+ //Intel Haswell
+diff --git a/kernel/x86_64/dgemm_kernel_4x8_sandy.S b/kernel/x86_64/dgemm_kernel_4x8_sandy.S
+index a52bb07..926395c 100644
+--- a/kernel/x86_64/dgemm_kernel_4x8_sandy.S
++++ b/kernel/x86_64/dgemm_kernel_4x8_sandy.S
+@@ -277,7 +277,7 @@ LEAQ (, %rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 8), ptrba;
+ LEAQ (ptrbb, %rax, 4), ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ PREFETCH2 0*SIZE(prebb);
+ XOR_DY yvec15, yvec15, yvec15;
+ PREFETCH2 8*SIZE(prebb);
+@@ -317,7 +317,7 @@ ALIGN_5;
+ .L2_bodyB:;
+ # Computing kernel
+
+-#### Unroll times 1 ####
++//#### Unroll times 1 ####
+ LD_DY 4*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ SHUF_DY $0x03, yvec2, yvec2, yvec4;
+@@ -345,7 +345,7 @@ MUL_DY yvec1, yvec5, yvec7;
+ ADD_DY yvec10, yvec6, yvec10;
+ ADD_DY yvec8, yvec7, yvec8;
+
+-#### Unroll times 2 ####
++//#### Unroll times 2 ####
+ LD_DY 12*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ SHUF_DY $0x03, yvec2, yvec2, yvec4;
+@@ -373,7 +373,7 @@ MUL_DY yvec1, yvec5, yvec7;
+ ADD_DY yvec10, yvec6, yvec10;
+ ADD_DY yvec8, yvec7, yvec8;
+
+-#### Unroll times 3 ####
++//#### Unroll times 3 ####
+ LD_DY 20*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ SHUF_DY $0x03, yvec2, yvec2, yvec4;
+@@ -402,7 +402,7 @@ MUL_DY yvec1, yvec5, yvec7;
+ ADD_DY yvec10, yvec6, yvec10;
+ ADD_DY yvec8, yvec7, yvec8;
+
+-#### Unroll times 4 ####
++//#### Unroll times 4 ####
+ LD_DY 28*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ SHUF_DY $0x03, yvec2, yvec2, yvec4;
+@@ -446,7 +446,7 @@ TEST $2, %rax;
+ JLE .L3_loopE;
+ ALIGN_5
+ .L3_bodyB:
+-#### Unroll times 1 ####
++//#### Unroll times 1 ####
+ PREFETCH0 64*SIZE(ptrba)
+ LD_DY 4*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+@@ -475,7 +475,7 @@ MUL_DY yvec1, yvec5, yvec7;
+ ADD_DY yvec10, yvec6, yvec10;
+ ADD_DY yvec8, yvec7, yvec8;
+
+-#### Unroll times 2 ####
++//#### Unroll times 2 ####
+ PREFETCH0 72*SIZE(ptrba)
+ LD_DY 12*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+@@ -516,7 +516,7 @@ TEST $1, %rax;
+ JLE .L4_loopE;
+ ALIGN_5
+ .L4_bodyB:;
+-#### Unroll times 1 ####
++//#### Unroll times 1 ####
+ PREFETCH0 64*SIZE(ptrba)
+ LD_DY 4*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+@@ -544,9 +544,9 @@ ADD_DY yvec10, yvec6, yvec10;
+ ADD_DY yvec8, yvec7, yvec8;
+
+ .L4_loopE:;
+-#### Load Alpha ####
++//#### Load Alpha ####
+ BROAD_DY MEMALPHA,yvec7;
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ MUL_DY yvec7,yvec15,yvec15;
+ MUL_DY yvec7,yvec14,yvec14;
+ MUL_DY yvec7,yvec13,yvec13;
+@@ -555,7 +555,7 @@ MUL_DY yvec7,yvec11,yvec11;
+ MUL_DY yvec7,yvec10,yvec10;
+ MUL_DY yvec7,yvec9,yvec9;
+ MUL_DY yvec7,yvec8,yvec8;
+-#### Reverse the Results ####
++//#### Reverse the Results ####
+ MOV_DY yvec15,yvec7;
+ REVS_DY $0x0a,yvec13,yvec15,yvec15;
+ REVS_DY $0x0a,yvec7,yvec13,yvec13;
+@@ -568,13 +568,13 @@ REVS_DY $0x0a,yvec7,yvec9,yvec9;
+ MOV_DY yvec10,yvec7;
+ REVS_DY $0x0a,yvec8,yvec10,yvec10;
+ REVS_DY $0x0a,yvec7,yvec8,yvec8;
+-#### Testing alignment ####
++//#### Testing alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L4_loopEx; # Unalign part write back
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1,yvec15,xvec7;
+ EXTRA_DY $1,yvec14,xvec6;
+ EXTRA_DY $1,yvec13,xvec5;
+@@ -776,7 +776,7 @@ LEAQ (, %rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 4), ptrba;
+ LEAQ (ptrbb, %rax, 4), ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ XOR_DY yvec13, yvec13, yvec13;
+ LD_DY 0*SIZE(ptrbb), yvec2;
+@@ -805,7 +805,7 @@ ALIGN_5;
+ .L6_bodyB:;
+ # Computing kernel
+
+-#### Untoll time 1 ####
++//#### Untoll time 1 ####
+ LD_DY 4*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -821,7 +821,7 @@ VPERMILP_DY $0x05, yvec2, yvec3;
+ MUL_DY yvec0, yvec5, yvec7;
+ ADD_DY yvec9, yvec7, yvec9;
+
+-#### Untoll time 2 ####
++//#### Untoll time 2 ####
+ LD_DY 8*SIZE(ptrba), yvec0;
+ MUL_DY yvec1, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -837,7 +837,7 @@ VPERMILP_DY $0x05, yvec2, yvec3;
+ MUL_DY yvec1, yvec5, yvec7;
+ ADD_DY yvec9, yvec7, yvec9;
+
+-#### Untoll time 3 ####
++//#### Untoll time 3 ####
+ LD_DY 12*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -855,7 +855,7 @@ ADDQ $16*SIZE, ptrbb;
+ MUL_DY yvec0, yvec5, yvec7;
+ ADD_DY yvec9, yvec7, yvec9;
+
+-#### Untoll time 4 ####
++//#### Untoll time 4 ####
+ LD_DY 0*SIZE(ptrba), yvec0;
+ MUL_DY yvec1, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -883,7 +883,7 @@ TEST $2, %rax;
+ JLE .L7_loopE;
+ ALIGN_5
+ .L7_bodyB:;
+-#### Untoll time 1 ####
++//#### Untoll time 1 ####
+ LD_DY 4*SIZE(ptrba), yvec1;
+ MUL_DY yvec0, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -901,7 +901,7 @@ ADDQ $8*SIZE, ptrbb;
+ MUL_DY yvec0, yvec5, yvec7;
+ ADD_DY yvec9, yvec7, yvec9;
+
+-#### Untoll time 2 ####
++//#### Untoll time 2 ####
+ LD_DY 0*SIZE(ptrba), yvec0;
+ MUL_DY yvec1, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+@@ -927,7 +927,7 @@ TEST $1, %rax;
+ JLE .L8_loopE;
+ ALIGN_5
+ .L8_bodyB:;
+-#### Untoll time 1 ####
++//#### Untoll time 1 ####
+ MUL_DY yvec0, yvec2, yvec6;
+ ADD_DY yvec15, yvec6, yvec15;
+ SHUF_DY $0x03, yvec2, yvec2, yvec4;
+@@ -943,27 +943,27 @@ MUL_DY yvec0, yvec5, yvec7;
+ ADD_DY yvec9, yvec7, yvec9;
+
+ .L8_loopE:;
+-#### Load Alpha ####
++//#### Load Alpha ####
+ BROAD_DY MEMALPHA, yvec7;
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ MUL_DY yvec7,yvec15,yvec15;
+ MUL_DY yvec7,yvec13,yvec13;
+ MUL_DY yvec7,yvec11,yvec11;
+ MUL_DY yvec7,yvec9,yvec9;
+-#### Reverse the Results ####
++//#### Reverse the Results ####
+ MOV_DY yvec15, yvec7;
+ REVS_DY $0x0a,yvec13,yvec15,yvec15;
+ REVS_DY $0x0a,yvec7,yvec13,yvec13;
+ MOV_DY yvec11,yvec7;
+ REVS_DY $0x0a,yvec9,yvec11,yvec11;
+ REVS_DY $0x0a,yvec7,yvec9,yvec9;
+-#### Testing alignment ####
++//#### Testing alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L8_loopEx; # Unalign part write back
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1,yvec15,xvec7;
+ EXTRA_DY $1,yvec13,xvec5;
+ EXTRA_DY $1,yvec11,xvec3;
+@@ -1076,7 +1076,7 @@ LEAQ (, %rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 2), ptrba;
+ LEAQ (ptrbb, %rax, 4), ptrbb
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ LD_DX 0*SIZE(ptrbb), xvec2;
+ XOR_DY yvec15, yvec15, yvec15;
+ LD_DX 2*SIZE(ptrbb), xvec3;
+@@ -1106,7 +1106,7 @@ ALIGN_5;
+ .L10_bodyB:;
+ # Computing kernel
+
+-##### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 4*SIZE(ptrbb), xvec6;
+ SHUF_DX $0x4e, xvec3, xvec5;
+ MUL_DX xvec0, xvec2, xvec2;
+@@ -1123,7 +1123,7 @@ SHUF_DX $0x4e, xvec6, xvec4;
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec9, xvec9;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 8*SIZE(ptrbb), xvec2;
+ SHUF_DX $0x4e, xvec7, xvec5;
+ MUL_DX xvec1, xvec6, xvec6;
+@@ -1140,7 +1140,7 @@ SHUF_DX $0x4e, xvec2, xvec4;
+ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec9, xvec9;
+
+-##### Unroll time 3 ####
++//#### Unroll time 3 ####
+ LD_DX 12*SIZE(ptrbb), xvec6;
+ SHUF_DX $0x4e, xvec3, xvec5;
+ MUL_DX xvec0, xvec2, xvec2;
+@@ -1159,7 +1159,7 @@ ADDQ $8*SIZE, ptrba;
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec9, xvec9;
+
+-#### Unroll time 4 ####
++//#### Unroll time 4 ####
+ LD_DX 0*SIZE(ptrbb), xvec2;
+ SHUF_DX $0x4e, xvec7, xvec5;
+ MUL_DX xvec1, xvec6, xvec6;
+@@ -1188,7 +1188,7 @@ TEST $2, %rax;
+ JLE .L11_loopE;
+ ALIGN_5
+ .L11_bodyB:;
+-##### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 4*SIZE(ptrbb), xvec6;
+ SHUF_DX $0x4e, xvec3, xvec5;
+ MUL_DX xvec0, xvec2, xvec2;
+@@ -1208,7 +1208,7 @@ ADDQ $4*SIZE, ptrba;
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec9, xvec9;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 0*SIZE(ptrbb), xvec2;
+ SHUF_DX $0x4e, xvec7, xvec5;
+ MUL_DX xvec1, xvec6, xvec6;
+@@ -1251,27 +1251,27 @@ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec9, xvec9;
+
+ .L12_loopE:;
+-#### Load Alpha ####
++//#### Load Alpha ####
+ BROAD_DX MEMALPHA, xvec7;
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ MUL_DX xvec7, xvec15, xvec15;
+ MUL_DX xvec7, xvec13, xvec13;
+ MUL_DX xvec7, xvec11, xvec11;
+ MUL_DX xvec7, xvec9, xvec9;
+-#### Reverse the Results ####
++//#### Reverse the Results ####
+ MOV_DX xvec15, xvec6;
+ REVS_DX xvec13, xvec15, xvec15;
+ REVS_DX xvec6, xvec13, xvec13;
+ MOV_DX xvec11, xvec6;
+ REVS_DX xvec9, xvec11, xvec11;
+ REVS_DX xvec6, xvec9, xvec9;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L12_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ #ifndef TRMMKERNEL
+ ADD_DX 0*SIZE(C0), xvec13, xvec13;
+ ADD_DX 0*SIZE(C0, ldc, 1), xvec15, xvec15;
+@@ -1345,7 +1345,7 @@ LEAQ (,%rax, SIZE), %rax;
+ ADDQ %rax, ptrba;
+ LEAQ (ptrbb, %rax, 4), ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ #ifndef TRMMKERNEL
+ MOVQ bk, k;
+@@ -1429,11 +1429,11 @@ ADDQ $1*SIZE, ptrba;
+ ADDQ $4*SIZE, ptrbb;
+
+ .L16_loopE:
+-#### Load Alpha ####
++//#### Load Alpha ####
+ BROAD_DY MEMALPHA, yvec7;
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ MUL_DY yvec15, yvec7, yvec15;
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1, yvec15, xvec7;
+ #ifndef TRMMKERNEL
+ LDL_DX 0*SIZE(C0), xvec0, xvec0;
+@@ -1497,7 +1497,7 @@ LEAQ (, %rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 8), ptrba;
+ LEAQ (ptrbb, %rax, 2), ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ XOR_DY yvec14, yvec14, yvec14;
+ XOR_DY yvec13, yvec13, yvec13;
+@@ -1526,7 +1526,7 @@ JLE .L211_loopE;
+ ALIGN_5;
+ .L211_bodyB:
+ # Computing kernel
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1563,7 +1563,7 @@ ADD_DX xvec6, xvec9, xvec9;
+ MUL_DX xvec3, xvec7, xvec7;
+ ADD_DX xvec7, xvec8, xvec8;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 8*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1600,7 +1600,7 @@ ADD_DX xvec6, xvec9, xvec9;
+ MUL_DX xvec3, xvec7, xvec7;
+ ADD_DX xvec7, xvec8, xvec8;
+
+-#### Unroll time 3 ####
++//#### Unroll time 3 ####
+ LD_DX 16*SIZE(ptrba), xvec0;
+ LD_DX 4*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1637,7 +1637,7 @@ ADD_DX xvec6, xvec9, xvec9;
+ MUL_DX xvec3, xvec7, xvec7;
+ ADD_DX xvec7, xvec8, xvec8;
+
+-#### Unroll time 4 ####
++//#### Unroll time 4 ####
+ LD_DX 24*SIZE(ptrba), xvec0;
+ LD_DX 6*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1689,7 +1689,7 @@ JLE .L212_loopE;
+ ALIGN_5;
+ .L212_bodyB:
+ # Computing kernel
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1726,7 +1726,7 @@ ADD_DX xvec6, xvec9, xvec9;
+ MUL_DX xvec3, xvec7, xvec7;
+ ADD_DX xvec7, xvec8, xvec8;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 8*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1775,7 +1775,7 @@ TEST $1, %rax;
+ JLE .L213_loopE;
+ ALIGN_5
+ .L213_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1815,7 +1815,7 @@ MUL_DX xvec3, xvec7, xvec7;
+ ADD_DX xvec7, xvec8, xvec8;
+
+ .L213_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DX MEMALPHA, xvec7;
+ MUL_DX xvec7, xvec15, xvec15;
+ MUL_DX xvec7, xvec14, xvec14;
+@@ -1825,7 +1825,7 @@ MUL_DX xvec7, xvec11, xvec11;
+ MUL_DX xvec7, xvec10, xvec10;
+ MUL_DX xvec7, xvec9, xvec9;
+ MUL_DX xvec7, xvec8, xvec8;
+-#### Reverse #####
++//#### Reverse ####
+ MOV_DX xvec15, xvec6;
+ REVS_DX xvec11, xvec15, xvec15;
+ REVS_DX xvec6, xvec11, xvec11;
+@@ -1838,13 +1838,13 @@ REVS_DX xvec6, xvec9, xvec9;
+ MOV_DX xvec12, xvec6;
+ REVS_DX xvec8, xvec12, xvec12;
+ REVS_DX xvec6, xvec8, xvec8;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L213_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ #ifndef TRMMKERNEL
+ ADD_DX 0*SIZE(C0), xvec11, xvec11;
+ ADD_DX 2*SIZE(C0), xvec10, xvec10;
+@@ -1952,7 +1952,7 @@ LEAQ (,%rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 4), ptrba;
+ LEAQ (ptrbb, %rax, 2), ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ XOR_DY yvec14, yvec14, yvec14;
+ XOR_DY yvec11, yvec11, yvec11;
+@@ -1977,7 +1977,7 @@ JLE .L221_loopE;
+ ALIGN_5
+ .L221_bodyB:;
+ # Computing kernel
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -1996,7 +1996,7 @@ ADD_DX xvec4, xvec11, xvec11;
+ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec10, xvec10;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 4*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2015,7 +2015,7 @@ ADD_DX xvec4, xvec11, xvec11;
+ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec10, xvec10;
+
+-#### Unroll time 3 ####
++//#### Unroll time 3 ####
+ LD_DX 8*SIZE(ptrba), xvec0;
+ LD_DX 4*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2034,7 +2034,7 @@ ADD_DX xvec4, xvec11, xvec11;
+ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec10, xvec10;
+
+-#### Unroll time 4 ####
++//#### Unroll time 4 ####
+ LD_DX 12*SIZE(ptrba), xvec0;
+ LD_DX 6*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2067,7 +2067,7 @@ TEST $2, %rax;
+ JLE .L222_loopE;
+ ALIGN_5
+ .L222_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2086,7 +2086,7 @@ ADD_DX xvec4, xvec11, xvec11;
+ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec10, xvec10;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 4*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2116,7 +2116,7 @@ TEST $1, %rax;
+ JLE .L223_loopE;
+ ALIGN_5
+ .L223_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ MOV_DX xvec4, xvec5;
+@@ -2138,26 +2138,26 @@ MUL_DX xvec1, xvec5, xvec5;
+ ADD_DX xvec5, xvec10, xvec10;
+
+ .L223_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DX MEMALPHA, xvec7;
+ MUL_DX xvec7, xvec15, xvec15;
+ MUL_DX xvec7, xvec14, xvec14;
+ MUL_DX xvec7, xvec11, xvec11;
+ MUL_DX xvec7, xvec10, xvec10;
+-#### Reverse #####
++//#### Reverse ####
+ MOV_DX xvec15, xvec6;
+ REVS_DX xvec11, xvec15, xvec15;
+ REVS_DX xvec6, xvec11, xvec11;
+ MOV_DX xvec14, xvec6;
+ REVS_DX xvec10, xvec14, xvec14;
+ REVS_DX xvec6, xvec10, xvec10;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L223_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ #ifndef TRMMKERNEL
+ ADD_DX 0*SIZE(C0), xvec11, xvec11;
+ ADD_DX 2*SIZE(C0), xvec10, xvec10;
+@@ -2220,7 +2220,7 @@ ADDQ $4, kk
+ ADDQ $4*SIZE, C0;
+ ADDQ $4*SIZE, C1;
+ .L22_loopE:;
+-TEST $2, bm; # Rm = 2
++TEST $2, bm; // Rm = 2
+ JLE .L23_loopE;
+ ALIGN_5;
+ .L23_bodyB:
+@@ -2255,7 +2255,7 @@ JLE .L231_loopE;
+ ALIGN_5
+ .L231_bodyB:
+ # Computing kernel
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2264,7 +2264,7 @@ ADD_DX xvec4, xvec15, xvec15;
+
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec11, xvec11;
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 2*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2273,7 +2273,7 @@ ADD_DX xvec4, xvec15, xvec15;
+
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec11, xvec11;
+-#### Unroll time 3 ####
++//#### Unroll time 3 ####
+ LD_DX 4*SIZE(ptrba), xvec0;
+ LD_DX 4*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2282,7 +2282,7 @@ ADD_DX xvec4, xvec15, xvec15;
+
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec11, xvec11;
+-#### Unroll time 4 ####
++//#### Unroll time 4 ####
+ LD_DX 6*SIZE(ptrba), xvec0;
+ LD_DX 6*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2305,7 +2305,7 @@ TEST $2, %rax;
+ JLE .L232_loopE;
+ ALIGN_5
+ .L232_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2314,7 +2314,7 @@ ADD_DX xvec4, xvec15, xvec15;
+
+ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec11, xvec11;
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DX 2*SIZE(ptrba), xvec0;
+ LD_DX 2*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2334,7 +2334,7 @@ TEST $1, %rax;
+ JLE .L233_loopE;
+ ALIGN_5
+ .L233_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DX 0*SIZE(ptrba), xvec0;
+ LD_DX 0*SIZE(ptrbb), xvec4;
+ SHUF_DX $0x4e, xvec4, xvec5;
+@@ -2345,21 +2345,21 @@ MUL_DX xvec0, xvec5, xvec5;
+ ADD_DX xvec5, xvec11, xvec11;
+ ADDQ $2*SIZE, ptrbb;
+ .L233_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DX MEMALPHA, xvec7;
+ MUL_DX xvec7, xvec15, xvec15;
+ MUL_DX xvec7, xvec11, xvec11;
+-#### Reverse #####
++//#### Reverse ####
+ MOV_DX xvec15, xvec6;
+ REVS_DX xvec11, xvec15, xvec15;
+ REVS_DX xvec6, xvec11, xvec11;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L233_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ #ifndef TRMMKERNEL
+ ADD_DX 0*SIZE(C0), xvec11, xvec11;
+ ADD_DX 0*SIZE(C1), xvec15, xvec15;
+@@ -2408,7 +2408,7 @@ ADDQ $2, kk;
+ ADDQ $2*SIZE, C0;
+ ADDQ $2*SIZE, C1;
+ .L23_loopE:
+-TEST $1, bm; # Rm = 1
++TEST $1, bm; // Rm = 1
+ JLE .L24_loopE;
+ ALIGN_5;
+ .L24_bodyB:
+@@ -2534,7 +2534,7 @@ SALQ $4, k;
+ ADDQ k, bb;
+ LEAQ (C, ldc, 2), C;
+ .L20_loopE:;
+-TEST $1, bn; # Rn = 1
++TEST $1, bn; // Rn = 1
+ JLE .L30_loopE;
+ ALIGN_5
+ .L30_bodyB:
+@@ -2558,7 +2558,7 @@ LEAQ (, %rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 8), ptrba;
+ ADDQ %rax, ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ XOR_DY yvec14, yvec14, yvec14;
+ #ifndef TRMMKERNEL
+@@ -2580,7 +2580,7 @@ SARQ $2, k;
+ JLE .L311_loopE;
+ ALIGN_5
+ .L311_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DY 0*SIZE(ptrba), yvec0;
+ LD_DY 4*SIZE(ptrba), yvec1;
+ BROAD_DY 0*SIZE(ptrbb), yvec2;
+@@ -2589,7 +2589,7 @@ ADD_DY yvec0, yvec15, yvec15;
+ MUL_DY yvec2, yvec1, yvec1;
+ ADD_DY yvec1, yvec14, yvec14;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DY 8*SIZE(ptrba), yvec3;
+ LD_DY 12*SIZE(ptrba), yvec4;
+ BROAD_DY 1*SIZE(ptrbb), yvec5;
+@@ -2598,7 +2598,7 @@ ADD_DY yvec3, yvec15, yvec15;
+ MUL_DY yvec5, yvec4, yvec4
+ ADD_DY yvec4, yvec14, yvec14;
+
+-#### Unroll time 3 ####
++//#### Unroll time 3 ####
+ LD_DY 16*SIZE(ptrba), yvec0;
+ LD_DY 20*SIZE(ptrba), yvec1;
+ BROAD_DY 2*SIZE(ptrbb), yvec2;
+@@ -2607,7 +2607,7 @@ ADD_DY yvec0, yvec15, yvec15;
+ MUL_DY yvec2, yvec1, yvec1;
+ ADD_DY yvec1, yvec14, yvec14;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DY 24*SIZE(ptrba), yvec3;
+ LD_DY 28*SIZE(ptrba), yvec4;
+ BROAD_DY 3*SIZE(ptrbb), yvec5;
+@@ -2630,7 +2630,7 @@ TEST $2, %rax;
+ JLE .L312_loopE;
+ ALIGN_5
+ .L312_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DY 0*SIZE(ptrba), yvec0;
+ LD_DY 4*SIZE(ptrba), yvec1;
+ BROAD_DY 0*SIZE(ptrbb), yvec2;
+@@ -2639,7 +2639,7 @@ ADD_DY yvec0, yvec15, yvec15;
+ MUL_DY yvec2, yvec1, yvec1;
+ ADD_DY yvec1, yvec14, yvec14;
+
+-#### Unroll time 2 ####
++//#### Unroll time 2 ####
+ LD_DY 8*SIZE(ptrba), yvec3;
+ LD_DY 12*SIZE(ptrba), yvec4;
+ BROAD_DY 1*SIZE(ptrbb), yvec5;
+@@ -2660,7 +2660,7 @@ TEST $1, %rax;
+ JLE .L313_loopE;
+ ALIGN_5
+ .L313_bodyB:
+-#### Unroll time 1 ####
++//#### Unroll time 1 ####
+ LD_DY 0*SIZE(ptrba), yvec0;
+ LD_DY 4*SIZE(ptrba), yvec1;
+ BROAD_DY 0*SIZE(ptrbb), yvec2;
+@@ -2672,17 +2672,17 @@ ADD_DY yvec1, yvec14, yvec14;
+ ADDQ $1*SIZE, ptrbb;
+
+ .L313_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DY MEMALPHA, yvec7;
+ MUL_DY yvec7, yvec15, yvec15;
+ MUL_DY yvec7, yvec14, yvec14;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L313_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1, yvec15, xvec13;
+ EXTRA_DY $1, yvec14, xvec12;
+ #ifndef TRMMKERNEL
+@@ -2762,7 +2762,7 @@ LEAQ (,%rax, SIZE), %rax;
+ LEAQ (ptrba, %rax, 4), ptrba;
+ ADDQ %rax, ptrbb;
+ #endif
+-#### Initial Results Register ####
++//#### Initial Results Register ####
+ XOR_DY yvec15, yvec15, yvec15;
+ #ifndef TRMMKERNEL
+ MOVQ bk, k;
+@@ -2847,16 +2847,16 @@ ADDQ $4*SIZE, ptrba;
+ ADDQ $1*SIZE, ptrbb;
+
+ .L323_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DY MEMALPHA, yvec7;
+ MUL_DY yvec7, yvec15, yvec15;
+-#### Testing Alignment ####
++//#### Testing Alignment ####
+ MOVQ C0, %rax;
+ OR ldc, %rax;
+ TEST $15, %rax;
+ JNE .L323_loopEx;
+ ALIGN_5
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1, yvec15, xvec14;
+ #ifndef TRMMKERNEL
+ ADD_DX 0*SIZE(C0), xvec15, xvec15;
+@@ -2878,7 +2878,7 @@ ADDQ $4*SIZE, C0;
+ JMP .L32_loopE;
+ ALIGN_5
+ .L323_loopEx:
+-#### Writing Back ####
++//#### Writing Back ####
+ EXTRA_DY $1, yvec15, xvec14;
+ #ifndef TRMMKERNEL
+ LDL_DX 0*SIZE(C0), xvec13, xvec13;
+@@ -2917,7 +2917,7 @@ LEAQ (, %rax, SIZE), %rax
+ LEAQ (ptrba, %rax, 2), ptrba
+ ADDQ %rax, ptrbb;
+ #endif
+-#### Initial Result ####
++//#### Initial Result ####
+ XOR_DY yvec15, yvec15, yvec15;
+ #ifndef TRMMKERNEL
+ MOVQ bk, k;
+@@ -3000,7 +3000,7 @@ ADD_DX xvec2, xvec15, xvec15;
+ ADDQ $2*SIZE, ptrba;
+ ADDQ $1*SIZE, ptrbb;
+ .L333_loopE:
+-#### Multiply Alpha ####
++//#### Multiply Alpha ####
+ BROAD_DX MEMALPHA, xvec7;
+ MUL_DX xvec7, xvec15, xvec15;
+ #ifndef TRMMKERNEL
+@@ -3119,7 +3119,7 @@ addq $1*SIZE, ptrba;
+ addq $1*SIZE, ptrbb;
+
+ .L343_loopE:
+-#### Writing Back ####
++//#### Writing Back ####
+ vmovsd MEMALPHA, xvec7;
+ vmulsd xvec7, xvec15, xvec15;
+ #ifndef TRMMKERNEL
diff --git a/var/spack/repos/builtin/packages/openblas/openblas_icc_fortran.patch b/var/spack/repos/builtin/packages/openblas/openblas_icc_fortran.patch
new file mode 100644
index 0000000000..54b38a297e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openblas/openblas_icc_fortran.patch
@@ -0,0 +1,12 @@
+diff -Naur a/f_check b/f_check
+--- a/f_check 2017-04-27 23:16:41.496684722 -0700
++++ b/f_check 2017-04-27 23:22:38.330563534 -0700
+@@ -322,7 +322,7 @@
+ }
+
+ if ($vendor eq "INTEL"){
+- $linker_a .= "-lgfortran"
++ $linker_a .= "-lifcore"
+ }
+
+ open(MAKEFILE, ">> $makefile") || die "Can't append $makefile";
diff --git a/var/spack/repos/builtin/packages/openblas/openblas_icc_openmp.patch b/var/spack/repos/builtin/packages/openblas/openblas_icc_openmp.patch
new file mode 100644
index 0000000000..f4f436c38e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openblas/openblas_icc_openmp.patch
@@ -0,0 +1,27 @@
+diff -Naur a/Makefile.system b/Makefile.system
+--- a/Makefile.system 2017-04-27 23:11:09.226514927 -0700
++++ b/Makefile.system 2017-04-28 00:00:27.020649577 -0700
+@@ -415,7 +415,7 @@
+ endif
+
+ ifeq ($(C_COMPILER), INTEL)
+-CCOMMON_OPT += -openmp
++CCOMMON_OPT += -qopenmp
+ endif
+
+ ifeq ($(C_COMPILER), PGI)
+@@ -639,13 +639,14 @@
+
+ ifeq ($(F_COMPILER), INTEL)
+ CCOMMON_OPT += -DF_INTERFACE_INTEL
++EXTRALIB += -lifcore
+ ifdef INTERFACE64
+ ifneq ($(INTERFACE64), 0)
+ FCOMMON_OPT += -i8
+ endif
+ endif
+ ifeq ($(USE_OPENMP), 1)
+-FCOMMON_OPT += -openmp
++FCOMMON_OPT += -qopenmp
+ endif
+ endif
diff --git a/var/spack/repos/builtin/packages/openblas/package.py b/var/spack/repos/builtin/packages/openblas/package.py
index d5a70f077b..f85d0e2a02 100644
--- a/var/spack/repos/builtin/packages/openblas/package.py
+++ b/var/spack/repos/builtin/packages/openblas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,53 +22,70 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
-from spack.package_test import *
import os
+from spack import *
+from spack.package_test import compare_output_file, compile_c_and_execute
+import spack.architecture
+
class Openblas(MakefilePackage):
"""OpenBLAS: An optimized BLAS library"""
homepage = 'http://www.openblas.net'
- url = 'http://github.com/xianyi/OpenBLAS/archive/v0.2.15.tar.gz'
+ url = 'http://github.com/xianyi/OpenBLAS/archive/v0.2.19.tar.gz'
+ version('0.2.20', '48637eb29f5b492b91459175dcc574b1')
version('0.2.19', '28c998054fd377279741c6f0b9ea7941')
version('0.2.18', '805e7f660877d588ea7e3792cda2ee65')
version('0.2.17', '664a12807f2a2a7cda4781e3ab2ae0e1')
version('0.2.16', 'fef46ab92463bdbb1479dcec594ef6dc')
version('0.2.15', 'b1190f3d3471685f17cfd1ec1d252ac9')
+ version('develop', git='https://github.com/xianyi/OpenBLAS.git', branch='develop')
variant(
'shared',
default=True,
description='Build shared libraries as well as static libs.'
)
- variant('openmp', default=False, description="Enable OpenMP support.")
+ variant('ilp64', default=False, description='64 bit integers')
variant('pic', default=True, description='Build position independent code')
+ variant('cpu_target', default='',
+ description='Set CPU target architecture (leave empty for '
+ 'autodetection; GENERIC, SSE_GENERIC, NEHALEM, ...)')
+
+ variant(
+ 'threads', default='none',
+ description='Multithreading support',
+ values=('pthreads', 'openmp', 'none'),
+ multi=False
+ )
+
# virtual dependency
provides('blas')
provides('lapack')
- patch('make.patch')
+ patch('make.patch', when='@0.2.16:')
# This patch is in a pull request to OpenBLAS that has not been handled
# https://github.com/xianyi/OpenBLAS/pull/915
- patch('openblas_icc.patch', when='%intel')
+ # UPD: the patch has been merged starting version 0.2.20
+ patch('openblas_icc.patch', when='@:0.2.19%intel')
+ patch('openblas_icc_openmp.patch', when='%intel@16.0:')
+ patch('openblas_icc_fortran.patch', when='%intel@16.0:')
- parallel = False
+ # Fixes compilation error on POWER8 with GCC 7
+ # https://github.com/xianyi/OpenBLAS/pull/1098
+ patch('power8.patch', when='@0.2.18:0.2.19 %gcc@7.1.0: target=ppc64')
- @property
- def blas_libs(self):
- shared = True if '+shared' in self.spec else False
- return find_libraries(
- ['libopenblas'], root=self.prefix, shared=shared, recurse=True
- )
+ # Change file comments to work around clang 3.9 assembler bug
+ # https://github.com/xianyi/OpenBLAS/pull/982
+ patch('openblas0.2.19.diff', when='@0.2.19')
- @property
- def lapack_libs(self):
- return self.blas_libs
+ parallel = False
+
+ conflicts('%intel@16', when='@0.2.15:0.2.19')
- @MakefilePackage.precondition('edit')
+ @run_before('edit')
def check_compilers(self):
# As of 06/2016 there is no mechanism to specify that packages which
# depends on Blas/Lapack need C or/and Fortran symbols. For now
@@ -78,12 +95,16 @@ class Openblas(MakefilePackage):
'OpenBLAS requires both C and Fortran compilers!'
)
# Add support for OpenMP
- if '+openmp' in self.spec and self.spec.satisfies('%clang'):
- # Openblas (as of 0.2.18) hardcoded that OpenMP cannot
- # be used with any (!) compiler named clang, bummer.
- raise InstallError(
- 'OpenBLAS does not support OpenMP with clang!'
- )
+ if (self.spec.satisfies('threads=openmp') and
+ self.spec.satisfies('%clang')):
+ if str(self.spec.compiler.version).endswith('-apple'):
+ raise InstallError("Apple's clang does not support OpenMP")
+ if '@:0.2.19' in self.spec:
+ # Openblas (as of 0.2.19) hardcoded that OpenMP cannot
+ # be used with any (!) compiler named clang, bummer.
+ raise InstallError(
+ 'OpenBLAS @:0.2.19 does not support OpenMP with clang!'
+ )
@property
def make_defs(self):
@@ -98,6 +119,16 @@ class Openblas(MakefilePackage):
'FC={0}'.format(spack_f77),
'MAKE_NO_J=1'
]
+ if self.spec.variants['cpu_target'].value:
+ make_defs += [
+ 'TARGET={0}'.format(self.spec.variants['cpu_target'].value)
+ ]
+ # invoke make with the correct TARGET for aarch64
+ elif 'aarch64' in spack.architecture.sys_type():
+ make_defs += [
+ 'TARGET=PILEDRIVER',
+ 'TARGET=ARMV8'
+ ]
if self.spec.satisfies('%gcc@:4.8.4'):
make_defs += ['NO_AVX2=1']
if '~shared' in self.spec:
@@ -110,9 +141,18 @@ class Openblas(MakefilePackage):
# fix missing _dggsvd_ and _sggsvd_
if self.spec.satisfies('@0.2.16'):
make_defs += ['BUILD_LAPACK_DEPRECATED=1']
- # Add support for OpenMP
- if '+openmp' in self.spec:
- make_defs += ['USE_OPENMP=1']
+
+ # Add support for multithreading
+ if self.spec.satisfies('threads=openmp'):
+ make_defs += ['USE_OPENMP=1', 'USE_THREAD=1']
+ elif self.spec.satisfies('threads=pthreads'):
+ make_defs += ['USE_OPENMP=0', 'USE_THREAD=1']
+ else:
+ make_defs += ['USE_OPENMP=0', 'USE_THREAD=0']
+
+ # 64bit ints
+ if '+ilp64' in self.spec:
+ make_defs += ['INTERFACE64=1']
return make_defs
@@ -126,7 +166,8 @@ class Openblas(MakefilePackage):
return self.make_defs + targets
- @MakefilePackage.sanity_check('build')
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
def check_build(self):
make('tests', *self.make_defs)
@@ -138,7 +179,8 @@ class Openblas(MakefilePackage):
]
return make_args + self.make_defs
- @MakefilePackage.sanity_check('install')
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def check_install(self):
spec = self.spec
# Openblas may pass its own test but still fail to compile Lapack
@@ -149,13 +191,16 @@ class Openblas(MakefilePackage):
blessed_file = join_path(os.path.dirname(self.module.__file__),
'test_cblas_dgemm.output')
- include_flags = ["-I%s" % join_path(spec.prefix, "include")]
- link_flags = self.lapack_libs.ld_flags.split()
+ include_flags = spec['openblas'].headers.cpp_flags
+ link_flags = spec['openblas'].libs.ld_flags
if self.compiler.name == 'intel':
- link_flags.extend(["-lifcore"])
- link_flags.extend(["-lpthread"])
- if '+openmp' in spec:
- link_flags.extend([self.compiler.openmp_flag])
-
- output = compile_c_and_execute(source_file, include_flags, link_flags)
+ link_flags += ' -lifcore'
+ if self.spec.satisfies('threads=pthreads'):
+ link_flags += ' -lpthread'
+ if spec.satisfies('threads=openmp'):
+ link_flags += ' -lpthread ' + self.compiler.openmp_flag
+
+ output = compile_c_and_execute(
+ source_file, [include_flags], link_flags.split()
+ )
compare_output_file(output, blessed_file)
diff --git a/var/spack/repos/builtin/packages/openblas/power8.patch b/var/spack/repos/builtin/packages/openblas/power8.patch
new file mode 100644
index 0000000000..b89c044c1b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openblas/power8.patch
@@ -0,0 +1,7809 @@
+diff --git a/kernel/power/casum.c b/kernel/power/casum.c
+index aeed0ca78..d1108581d 100644
+--- a/kernel/power/casum.c
++++ b/kernel/power/casum.c
+@@ -53,7 +53,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_16
+
+-static void casum_kernel_16(BLASLONG n, FLOAT *x1, FLOAT *svec)
++static FLOAT casum_kernel_16(BLASLONG n, FLOAT *x1)
+ {
+
+ BLASLONG i=0;
+@@ -92,11 +92,7 @@ static void casum_kernel_16(BLASLONG n, FLOAT *x1, FLOAT *svec)
+
+ }
+
+- svec[0] = sum0+sum1+sum2+sum3;
+- svec[1] = 0.0;
+- svec[2] = 0.0;
+- svec[3] = 0.0;
+-
++ return sum0+sum1+sum2+sum3;
+ }
+
+ #endif
+@@ -106,7 +102,6 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ BLASLONG i=0;
+ BLASLONG ip=0;
+ FLOAT sumf = 0.0;
+- FLOAT svec[4] __attribute__ ((aligned (16)));;
+ BLASLONG n1;
+ BLASLONG inc_x2;
+
+@@ -119,8 +114,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ if ( n1 > 0 )
+ {
+
+- casum_kernel_16(n1, x, svec);
+- sumf = svec[0] + svec[1]+svec[2]+svec[3];
++ sumf = casum_kernel_16(n1, x);
+ i=n1;
+ ip = 2 * n1;
+ }
+diff --git a/kernel/power/casum_microk_power8.c b/kernel/power/casum_microk_power8.c
+index cb50234ce..38a114326 100644
+--- a/kernel/power/casum_microk_power8.c
++++ b/kernel/power/casum_microk_power8.c
+@@ -34,144 +34,145 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_16 1
+-static void casum_kernel_16( BLASLONG n, FLOAT *x, FLOAT *svec) __attribute__ ((noinline));
+
+-static void casum_kernel_16( BLASLONG n, FLOAT *x, FLOAT *svec)
++static float casum_kernel_16 (long n, float *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xvabssp 48, 40 \n\t"
+- "xvabssp 49, 41 \n\t"
+- "xvabssp 50, 42 \n\t"
+- "xvabssp 51, 43 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+-
+- "xvabssp 52, 44 \n\t"
+- "xvabssp 53, 45 \n\t"
+-
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+-
+- "xvabssp 54, 46 \n\t"
+- "xvabssp 55, 47 \n\t"
+-
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+-
+- "xvaddsp 32, 32, 48 \n\t"
+- "xvaddsp 33, 33, 49 \n\t"
+-
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "xvaddsp 34, 34, 50 \n\t"
+- "xvaddsp 35, 35, 51 \n\t"
+- "addi %2, %2, 128 \n\t"
+- "xvaddsp 36, 36, 52 \n\t"
+- "xvaddsp 37, 37, 53 \n\t"
+- "addic. %0 , %0 , -16 \n\t"
+- "xvaddsp 38, 38, 54 \n\t"
+- "xvaddsp 39, 39, 55 \n\t"
+-
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+-
+- "xvabssp 48, 40 \n\t"
+- "xvabssp 49, 41 \n\t"
+- "xvabssp 50, 42 \n\t"
+- "xvabssp 51, 43 \n\t"
+- "xvabssp 52, 44 \n\t"
+- "xvabssp 53, 45 \n\t"
+- "xvabssp 54, 46 \n\t"
+- "xvabssp 55, 47 \n\t"
+-
+- "xvaddsp 32, 32, 48 \n\t"
+- "xvaddsp 33, 33, 49 \n\t"
+- "xvaddsp 34, 34, 50 \n\t"
+- "xvaddsp 35, 35, 51 \n\t"
+- "xvaddsp 36, 36, 52 \n\t"
+- "xvaddsp 37, 37, 53 \n\t"
+- "xvaddsp 38, 38, 54 \n\t"
+- "xvaddsp 39, 39, 55 \n\t"
+-
+- "xvaddsp 32, 32, 33 \n\t"
+- "xvaddsp 34, 34, 35 \n\t"
+- "xvaddsp 36, 36, 37 \n\t"
+- "xvaddsp 38, 38, 39 \n\t"
+-
+- "xvaddsp 32, 32, 34 \n\t"
+- "xvaddsp 36, 36, 38 \n\t"
+-
+- "xvaddsp 32, 32, 36 \n\t"
+-
+-
+- "stxvw4x 32, 0, %3 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (svec), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2", "memory"
+- );
+-
+-}
+-
+-
++ float sum;
++ __vector float t0;
++ __vector float t1;
++ __vector float t2;
++ __vector float t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %8, %2 \n\t"
++ "lxvw4x 42, %9, %2 \n\t"
++ "lxvw4x 43, %10, %2 \n\t"
++ "lxvw4x 44, %11, %2 \n\t"
++ "lxvw4x 45, %12, %2 \n\t"
++ "lxvw4x 46, %13, %2 \n\t"
++ "lxvw4x 47, %14, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvabssp 48, 40 \n\t"
++ "xvabssp 49, 41 \n\t"
++ "xvabssp 50, 42 \n\t"
++ "xvabssp 51, 43 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %8, %2 \n\t"
++
++ "xvabssp %x3, 44 \n\t"
++ "xvabssp %x4, 45 \n\t"
++
++ "lxvw4x 42, %9, %2 \n\t"
++ "lxvw4x 43, %10, %2 \n\t"
++
++ "xvabssp %x5, 46 \n\t"
++ "xvabssp %x6, 47 \n\t"
++
++ "lxvw4x 44, %11, %2 \n\t"
++ "lxvw4x 45, %12, %2 \n\t"
++
++ "xvaddsp 32, 32, 48 \n\t"
++ "xvaddsp 33, 33, 49 \n\t"
++
++ "lxvw4x 46, %13, %2 \n\t"
++ "lxvw4x 47, %14, %2 \n\t"
++
++ "xvaddsp 34, 34, 50 \n\t"
++ "xvaddsp 35, 35, 51 \n\t"
++ "addi %2, %2, 128 \n\t"
++ "xvaddsp 36, 36, %x3 \n\t"
++ "xvaddsp 37, 37, %x4 \n\t"
++ "addic. %1, %1, -16 \n\t"
++ "xvaddsp 38, 38, %x5 \n\t"
++ "xvaddsp 39, 39, %x6 \n\t"
++
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvabssp 48, 40 \n\t"
++ "xvabssp 49, 41 \n\t"
++ "xvabssp 50, 42 \n\t"
++ "xvabssp 51, 43 \n\t"
++ "xvabssp %x3, 44 \n\t"
++ "xvabssp %x4, 45 \n\t"
++ "xvabssp %x5, 46 \n\t"
++ "xvabssp %x6, 47 \n\t"
++
++ "xvaddsp 32, 32, 48 \n\t"
++ "xvaddsp 33, 33, 49 \n\t"
++ "xvaddsp 34, 34, 50 \n\t"
++ "xvaddsp 35, 35, 51 \n\t"
++ "xvaddsp 36, 36, %x3 \n\t"
++ "xvaddsp 37, 37, %x4 \n\t"
++ "xvaddsp 38, 38, %x5 \n\t"
++ "xvaddsp 39, 39, %x6 \n\t"
++
++ "xvaddsp 32, 32, 33 \n\t"
++ "xvaddsp 34, 34, 35 \n\t"
++ "xvaddsp 36, 36, 37 \n\t"
++ "xvaddsp 38, 38, 39 \n\t"
++
++ "xvaddsp 32, 32, 34 \n\t"
++ "xvaddsp 36, 36, 38 \n\t"
++
++ "xvaddsp 32, 32, 36 \n\t"
++
++ "xxsldwi 33, 32, 32, 2 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xxsldwi 33, 32, 32, 1 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xscvspdp %0, 32 \n"
++
++ "#n=%1 x=%3=%2 sum=%0 o16=%8 o32=%9 o48=%10 o64=%11 o80=%12 o96=%13 o112=%14\n"
++ "#t0=%x3 t1=%x4 t2=%x5 t3=%x6"
++ :
++ "=f" (sum), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0), // 3
++ "=wa" (t1), // 4
++ "=wa" (t2), // 5
++ "=wa" (t3) // 6
++ :
++ "m" (*x),
++ "b" (16), // 8
++ "b" (32), // 9
++ "b" (48), // 10
++ "b" (64), // 11
++ "b" (80), // 12
++ "b" (96), // 13
++ "b" (112) // 14
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return sum;
++}
+diff --git a/kernel/power/ccopy_microk_power8.c b/kernel/power/ccopy_microk_power8.c
+index 95b3559ba..b2b1bead1 100644
+--- a/kernel/power/ccopy_microk_power8.c
++++ b/kernel/power/ccopy_microk_power8.c
+@@ -35,140 +35,121 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void ccopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void ccopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void ccopy_kernel_32 (long n, float *x, float *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvw4x 50, 0, %2 \n\t"
+- "lxvw4x 51, %5, %2 \n\t"
+- "lxvw4x 52, %6, %2 \n\t"
+- "lxvw4x 53, %7, %2 \n\t"
+- "lxvw4x 54, %8, %2 \n\t"
+- "lxvw4x 55, %9, %2 \n\t"
+- "lxvw4x 56, %10, %2 \n\t"
+- "lxvw4x 57, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvw4x 40, 0, %1 \n\t"
+- "stxvw4x 41, %5, %1 \n\t"
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "stxvw4x 42, %6, %1 \n\t"
+- "stxvw4x 43, %7, %1 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "stxvw4x 44, %8, %1 \n\t"
+- "stxvw4x 45, %9, %1 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "stxvw4x 46, %10, %1 \n\t"
+- "stxvw4x 47, %11, %1 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "stxvw4x 50, 0, %1 \n\t"
+- "stxvw4x 51, %5, %1 \n\t"
+- "lxvw4x 50, 0, %2 \n\t"
+- "lxvw4x 51, %5, %2 \n\t"
+- "stxvw4x 52, %6, %1 \n\t"
+- "stxvw4x 53, %7, %1 \n\t"
+- "lxvw4x 52, %6, %2 \n\t"
+- "lxvw4x 53, %7, %2 \n\t"
+- "stxvw4x 54, %8, %1 \n\t"
+- "stxvw4x 55, %9, %1 \n\t"
+- "lxvw4x 54, %8, %2 \n\t"
+- "lxvw4x 55, %9, %2 \n\t"
+- "stxvw4x 56, %10, %1 \n\t"
+- "stxvw4x 57, %11, %1 \n\t"
+- "lxvw4x 56, %10, %2 \n\t"
+- "lxvw4x 57, %11, %2 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "stxvw4x 40, 0, %1 \n\t"
+- "stxvw4x 41, %5, %1 \n\t"
+- "stxvw4x 42, %6, %1 \n\t"
+- "stxvw4x 43, %7, %1 \n\t"
+- "stxvw4x 44, %8, %1 \n\t"
+- "stxvw4x 45, %9, %1 \n\t"
+- "stxvw4x 46, %10, %1 \n\t"
+- "stxvw4x 47, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvw4x 50, 0, %1 \n\t"
+- "stxvw4x 51, %5, %1 \n\t"
+- "stxvw4x 52, %6, %1 \n\t"
+- "stxvw4x 53, %7, %1 \n\t"
+- "stxvw4x 54, %8, %1 \n\t"
+- "stxvw4x 55, %9, %1 \n\t"
+- "stxvw4x 56, %10, %1 \n\t"
+- "stxvw4x 57, %11, %1 \n\t"
+-
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ "lxvw4x 32, 0, %2 \n\t"
++ "lxvw4x 33, %5, %2 \n\t"
++ "lxvw4x 34, %6, %2 \n\t"
++ "lxvw4x 35, %7, %2 \n\t"
++ "lxvw4x 36, %8, %2 \n\t"
++ "lxvw4x 37, %9, %2 \n\t"
++ "lxvw4x 38, %10, %2 \n\t"
++ "lxvw4x 39, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %5, %2 \n\t"
++ "lxvw4x 42, %6, %2 \n\t"
++ "lxvw4x 43, %7, %2 \n\t"
++ "lxvw4x 44, %8, %2 \n\t"
++ "lxvw4x 45, %9, %2 \n\t"
++ "lxvw4x 46, %10, %2 \n\t"
++ "lxvw4x 47, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvw4x 32, 0, %3 \n\t"
++ "stxvw4x 33, %5, %3 \n\t"
++ "lxvw4x 32, 0, %2 \n\t"
++ "lxvw4x 33, %5, %2 \n\t"
++ "stxvw4x 34, %6, %3 \n\t"
++ "stxvw4x 35, %7, %3 \n\t"
++ "lxvw4x 34, %6, %2 \n\t"
++ "lxvw4x 35, %7, %2 \n\t"
++ "stxvw4x 36, %8, %3 \n\t"
++ "stxvw4x 37, %9, %3 \n\t"
++ "lxvw4x 36, %8, %2 \n\t"
++ "lxvw4x 37, %9, %2 \n\t"
++ "stxvw4x 38, %10, %3 \n\t"
++ "stxvw4x 39, %11, %3 \n\t"
++ "lxvw4x 38, %10, %2 \n\t"
++ "lxvw4x 39, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "stxvw4x 40, 0, %3 \n\t"
++ "stxvw4x 41, %5, %3 \n\t"
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %5, %2 \n\t"
++ "stxvw4x 42, %6, %3 \n\t"
++ "stxvw4x 43, %7, %3 \n\t"
++ "lxvw4x 42, %6, %2 \n\t"
++ "lxvw4x 43, %7, %2 \n\t"
++ "stxvw4x 44, %8, %3 \n\t"
++ "stxvw4x 45, %9, %3 \n\t"
++ "lxvw4x 44, %8, %2 \n\t"
++ "lxvw4x 45, %9, %2 \n\t"
++ "stxvw4x 46, %10, %3 \n\t"
++ "stxvw4x 47, %11, %3 \n\t"
++ "lxvw4x 46, %10, %2 \n\t"
++ "lxvw4x 47, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "stxvw4x 32, 0, %3 \n\t"
++ "stxvw4x 33, %5, %3 \n\t"
++ "stxvw4x 34, %6, %3 \n\t"
++ "stxvw4x 35, %7, %3 \n\t"
++ "stxvw4x 36, %8, %3 \n\t"
++ "stxvw4x 37, %9, %3 \n\t"
++ "stxvw4x 38, %10, %3 \n\t"
++ "stxvw4x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvw4x 40, 0, %3 \n\t"
++ "stxvw4x 41, %5, %3 \n\t"
++ "stxvw4x 42, %6, %3 \n\t"
++ "stxvw4x 43, %7, %3 \n\t"
++ "stxvw4x 44, %8, %3 \n\t"
++ "stxvw4x 45, %9, %3 \n\t"
++ "stxvw4x 46, %10, %3 \n\t"
++ "stxvw4x 47, %11, %3 \n"
++
++ "#n=%1 x=%4=%2 y=%0=%3 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "=m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y) // 3
++ :
++ "m" (*x),
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/cswap_microk_power8.c b/kernel/power/cswap_microk_power8.c
+index 90ab59c54..1dd03dc88 100644
+--- a/kernel/power/cswap_microk_power8.c
++++ b/kernel/power/cswap_microk_power8.c
+@@ -35,146 +35,124 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void cswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void cswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void cswap_kernel_32 (long n, float *x, float *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "addi %3, %3, -4 \n\t"
+- "addi %4, %4, -4 \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "lxvw4x 32, 0, %2 \n\t"
+- "lxvw4x 33, %5, %2 \n\t"
+- "lxvw4x 34, %6, %2 \n\t"
+- "lxvw4x 35, %7, %2 \n\t"
+- "lxvw4x 36, %8, %2 \n\t"
+- "lxvw4x 37, %9, %2 \n\t"
+- "lxvw4x 38, %10, %2 \n\t"
+- "lxvw4x 39, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvw4x 48, 0, %1 \n\t"
+- "lxvw4x 49, %5, %1 \n\t"
+- "lxvw4x 50, %6, %1 \n\t"
+- "lxvw4x 51, %7, %1 \n\t"
+- "lxvw4x 52, %8, %1 \n\t"
+- "lxvw4x 53, %9, %1 \n\t"
+- "lxvw4x 54, %10, %1 \n\t"
+- "lxvw4x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "lxvw4x 56, 0, %1 \n\t"
+- "lxvw4x 57, %5, %1 \n\t"
+- "lxvw4x 58, %6, %1 \n\t"
+- "lxvw4x 59, %7, %1 \n\t"
+- "lxvw4x 60, %8, %1 \n\t"
+- "lxvw4x 61, %9, %1 \n\t"
+- "lxvw4x 62, %10, %1 \n\t"
+- "lxvw4x 63, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvw4x 32, 0, %3 \n\t"
+- "stxvw4x 33, %5, %3 \n\t"
+- "stxvw4x 34, %6, %3 \n\t"
+- "stxvw4x 35, %7, %3 \n\t"
+- "stxvw4x 36, %8, %3 \n\t"
+- "stxvw4x 37, %9, %3 \n\t"
+- "stxvw4x 38, %10, %3 \n\t"
+- "stxvw4x 39, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvw4x 40, 0, %3 \n\t"
+- "stxvw4x 41, %5, %3 \n\t"
+- "stxvw4x 42, %6, %3 \n\t"
+- "stxvw4x 43, %7, %3 \n\t"
+- "stxvw4x 44, %8, %3 \n\t"
+- "stxvw4x 45, %9, %3 \n\t"
+- "stxvw4x 46, %10, %3 \n\t"
+- "stxvw4x 47, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvw4x 48, 0, %4 \n\t"
+- "stxvw4x 49, %5, %4 \n\t"
+- "stxvw4x 50, %6, %4 \n\t"
+- "stxvw4x 51, %7, %4 \n\t"
+- "stxvw4x 52, %8, %4 \n\t"
+- "stxvw4x 53, %9, %4 \n\t"
+- "stxvw4x 54, %10, %4 \n\t"
+- "stxvw4x 55, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "stxvw4x 56, 0, %4 \n\t"
+- "stxvw4x 57, %5, %4 \n\t"
+- "stxvw4x 58, %6, %4 \n\t"
+- "stxvw4x 59, %7, %4 \n\t"
+- "stxvw4x 60, %8, %4 \n\t"
+- "stxvw4x 61, %9, %4 \n\t"
+- "stxvw4x 62, %10, %4 \n\t"
+- "stxvw4x 63, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (y2), // 3
+- "r" (x2), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "%3", "%4", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "lxvw4x 32, 0, %4 \n\t"
++ "lxvw4x 33, %5, %4 \n\t"
++ "lxvw4x 34, %6, %4 \n\t"
++ "lxvw4x 35, %7, %4 \n\t"
++ "lxvw4x 36, %8, %4 \n\t"
++ "lxvw4x 37, %9, %4 \n\t"
++ "lxvw4x 38, %10, %4 \n\t"
++ "lxvw4x 39, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "lxvw4x 40, 0, %4 \n\t"
++ "lxvw4x 41, %5, %4 \n\t"
++ "lxvw4x 42, %6, %4 \n\t"
++ "lxvw4x 43, %7, %4 \n\t"
++ "lxvw4x 44, %8, %4 \n\t"
++ "lxvw4x 45, %9, %4 \n\t"
++ "lxvw4x 46, %10, %4 \n\t"
++ "lxvw4x 47, %11, %4 \n\t"
++
++ "addi %4, %4, -128 \n\t"
++
++ "lxvw4x 48, 0, %3 \n\t"
++ "lxvw4x 49, %5, %3 \n\t"
++ "lxvw4x 50, %6, %3 \n\t"
++ "lxvw4x 51, %7, %3 \n\t"
++ "lxvw4x 0, %8, %3 \n\t"
++ "lxvw4x 1, %9, %3 \n\t"
++ "lxvw4x 2, %10, %3 \n\t"
++ "lxvw4x 3, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "lxvw4x 4, 0, %3 \n\t"
++ "lxvw4x 5, %5, %3 \n\t"
++ "lxvw4x 6, %6, %3 \n\t"
++ "lxvw4x 7, %7, %3 \n\t"
++ "lxvw4x 8, %8, %3 \n\t"
++ "lxvw4x 9, %9, %3 \n\t"
++ "lxvw4x 10, %10, %3 \n\t"
++ "lxvw4x 11, %11, %3 \n\t"
++
++ "addi %3, %3, -128 \n\t"
++
++ "stxvw4x 32, 0, %3 \n\t"
++ "stxvw4x 33, %5, %3 \n\t"
++ "stxvw4x 34, %6, %3 \n\t"
++ "stxvw4x 35, %7, %3 \n\t"
++ "stxvw4x 36, %8, %3 \n\t"
++ "stxvw4x 37, %9, %3 \n\t"
++ "stxvw4x 38, %10, %3 \n\t"
++ "stxvw4x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvw4x 40, 0, %3 \n\t"
++ "stxvw4x 41, %5, %3 \n\t"
++ "stxvw4x 42, %6, %3 \n\t"
++ "stxvw4x 43, %7, %3 \n\t"
++ "stxvw4x 44, %8, %3 \n\t"
++ "stxvw4x 45, %9, %3 \n\t"
++ "stxvw4x 46, %10, %3 \n\t"
++ "stxvw4x 47, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvw4x 48, 0, %4 \n\t"
++ "stxvw4x 49, %5, %4 \n\t"
++ "stxvw4x 50, %6, %4 \n\t"
++ "stxvw4x 51, %7, %4 \n\t"
++ "stxvw4x 0, %8, %4 \n\t"
++ "stxvw4x 1, %9, %4 \n\t"
++ "stxvw4x 2, %10, %4 \n\t"
++ "stxvw4x 3, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "stxvw4x 4, 0, %4 \n\t"
++ "stxvw4x 5, %5, %4 \n\t"
++ "stxvw4x 6, %6, %4 \n\t"
++ "stxvw4x 7, %7, %4 \n\t"
++ "stxvw4x 8, %8, %4 \n\t"
++ "stxvw4x 9, %9, %4 \n\t"
++ "stxvw4x 10, %10, %4 \n\t"
++ "stxvw4x 11, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "addic. %2, %2, -32 \n\t"
++ "bgt 1b \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y) // 4
++ :
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51","vs0","vs1","vs2","vs3",
++ "vs4","vs5","vs6","vs7","vs8","vs9","vs10","vs11"
++ );
++}
+diff --git a/kernel/power/dasum.c b/kernel/power/dasum.c
+index 77f5345ba..73962c2f2 100644
+--- a/kernel/power/dasum.c
++++ b/kernel/power/dasum.c
+@@ -42,7 +42,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #else
+
+-#define ABS fabsf
++#error supports double only
+
+ #endif
+
+@@ -53,7 +53,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_16
+
+-static void dasum_kernel_16(BLASLONG n, FLOAT *x1, FLOAT *svec)
++static FLOAT dasum_kernel_16(BLASLONG n, FLOAT *x1)
+ {
+
+ BLASLONG i=0;
+@@ -92,9 +92,7 @@ static void dasum_kernel_16(BLASLONG n, FLOAT *x1, FLOAT *svec)
+
+ }
+
+- svec[0] = sum0+sum1+sum2+sum3;
+- svec[1] = 0.0;
+-
++ return sum0+sum1+sum2+sum3;
+ }
+
+ #endif
+@@ -103,7 +101,6 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ {
+ BLASLONG i=0;
+ FLOAT sumf = 0.0;
+- FLOAT svec[2] __attribute__ ((aligned (16)));;
+ BLASLONG n1;
+
+ if (n <= 0 || inc_x <= 0) return(sumf);
+@@ -115,8 +112,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ if ( n1 > 0 )
+ {
+
+- dasum_kernel_16(n1, x, svec);
+- sumf = svec[0] + svec[1];
++ sumf = dasum_kernel_16(n1, x);
+ i=n1;
+ }
+
+diff --git a/kernel/power/dasum_microk_power8.c b/kernel/power/dasum_microk_power8.c
+index cc38c4f7d..880d7d271 100644
+--- a/kernel/power/dasum_microk_power8.c
++++ b/kernel/power/dasum_microk_power8.c
+@@ -34,144 +34,142 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_16 1
+-static void dasum_kernel_16( BLASLONG n, FLOAT *x, FLOAT *svec) __attribute__ ((noinline));
+
+-static void dasum_kernel_16( BLASLONG n, FLOAT *x, FLOAT *svec)
++static double dasum_kernel_16 (long n, double *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xvabsdp 48, 40 \n\t"
+- "xvabsdp 49, 41 \n\t"
+- "xvabsdp 50, 42 \n\t"
+- "xvabsdp 51, 43 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+-
+- "xvabsdp 52, 44 \n\t"
+- "xvabsdp 53, 45 \n\t"
+-
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "xvabsdp 54, 46 \n\t"
+- "xvabsdp 55, 47 \n\t"
+-
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+-
+- "xvadddp 32, 32, 48 \n\t"
+- "xvadddp 33, 33, 49 \n\t"
+-
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "xvadddp 34, 34, 50 \n\t"
+- "xvadddp 35, 35, 51 \n\t"
+- "addi %2, %2, 128 \n\t"
+- "xvadddp 36, 36, 52 \n\t"
+- "xvadddp 37, 37, 53 \n\t"
+- "addic. %0 , %0 , -16 \n\t"
+- "xvadddp 38, 38, 54 \n\t"
+- "xvadddp 39, 39, 55 \n\t"
+-
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+-
+- "xvabsdp 48, 40 \n\t"
+- "xvabsdp 49, 41 \n\t"
+- "xvabsdp 50, 42 \n\t"
+- "xvabsdp 51, 43 \n\t"
+- "xvabsdp 52, 44 \n\t"
+- "xvabsdp 53, 45 \n\t"
+- "xvabsdp 54, 46 \n\t"
+- "xvabsdp 55, 47 \n\t"
+-
+- "xvadddp 32, 32, 48 \n\t"
+- "xvadddp 33, 33, 49 \n\t"
+- "xvadddp 34, 34, 50 \n\t"
+- "xvadddp 35, 35, 51 \n\t"
+- "xvadddp 36, 36, 52 \n\t"
+- "xvadddp 37, 37, 53 \n\t"
+- "xvadddp 38, 38, 54 \n\t"
+- "xvadddp 39, 39, 55 \n\t"
+-
+- "xvadddp 32, 32, 33 \n\t"
+- "xvadddp 34, 34, 35 \n\t"
+- "xvadddp 36, 36, 37 \n\t"
+- "xvadddp 38, 38, 39 \n\t"
+-
+- "xvadddp 32, 32, 34 \n\t"
+- "xvadddp 36, 36, 38 \n\t"
+-
+- "xvadddp 32, 32, 36 \n\t"
+-
+-
+- "stxvd2x 32, 0, %3 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (svec), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2", "memory"
+- );
+-
+-}
++ double sum;
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %8, %2 \n\t"
++ "lxvd2x 42, %9, %2 \n\t"
++ "lxvd2x 43, %10, %2 \n\t"
++ "lxvd2x 44, %11, %2 \n\t"
++ "lxvd2x 45, %12, %2 \n\t"
++ "lxvd2x 46, %13, %2 \n\t"
++ "lxvd2x 47, %14, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvabsdp 48, 40 \n\t"
++ "xvabsdp 49, 41 \n\t"
++ "xvabsdp 50, 42 \n\t"
++ "xvabsdp 51, 43 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %8, %2 \n\t"
++
++ "xvabsdp %x3, 44 \n\t"
++ "xvabsdp %x4, 45 \n\t"
++
++ "lxvd2x 42, %9, %2 \n\t"
++ "lxvd2x 43, %10, %2 \n\t"
++
++ "xvabsdp %x5, 46 \n\t"
++ "xvabsdp %x6, 47 \n\t"
++
++ "lxvd2x 44, %11, %2 \n\t"
++ "lxvd2x 45, %12, %2 \n\t"
++
++ "xvadddp 32, 32, 48 \n\t"
++ "xvadddp 33, 33, 49 \n\t"
++
++ "lxvd2x 46, %13, %2 \n\t"
++ "lxvd2x 47, %14, %2 \n\t"
++
++ "xvadddp 34, 34, 50 \n\t"
++ "xvadddp 35, 35, 51 \n\t"
++ "addi %2, %2, 128 \n\t"
++ "xvadddp 36, 36, %x3 \n\t"
++ "xvadddp 37, 37, %x4 \n\t"
++ "addic. %1, %1, -16 \n\t"
++ "xvadddp 38, 38, %x5 \n\t"
++ "xvadddp 39, 39, %x6 \n\t"
++
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvabsdp 48, 40 \n\t"
++ "xvabsdp 49, 41 \n\t"
++ "xvabsdp 50, 42 \n\t"
++ "xvabsdp 51, 43 \n\t"
++ "xvabsdp %x3, 44 \n\t"
++ "xvabsdp %x4, 45 \n\t"
++ "xvabsdp %x5, 46 \n\t"
++ "xvabsdp %x6, 47 \n\t"
++
++ "xvadddp 32, 32, 48 \n\t"
++ "xvadddp 33, 33, 49 \n\t"
++ "xvadddp 34, 34, 50 \n\t"
++ "xvadddp 35, 35, 51 \n\t"
++ "xvadddp 36, 36, %x3 \n\t"
++ "xvadddp 37, 37, %x4 \n\t"
++ "xvadddp 38, 38, %x5 \n\t"
++ "xvadddp 39, 39, %x6 \n\t"
++
++ "xvadddp 32, 32, 33 \n\t"
++ "xvadddp 34, 34, 35 \n\t"
++ "xvadddp 36, 36, 37 \n\t"
++ "xvadddp 38, 38, 39 \n\t"
++
++ "xvadddp 32, 32, 34 \n\t"
++ "xvadddp 36, 36, 38 \n\t"
++
++ "xvadddp 32, 32, 36 \n\t"
++
++ "xxswapd 33, 32 \n\t"
++ "xsadddp %x0, 32, 33 \n"
++
++ "#n=%1 x=%3=%2 sum=%0 o16=%8 o32=%9 o48=%10 o64=%11 o80=%12 o96=%13 o112=%14\n"
++ "#t0=%x3 t1=%x4 t2=%x5 t3=%x6"
++ :
++ "=d" (sum), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0), // 3
++ "=wa" (t1), // 4
++ "=wa" (t2), // 5
++ "=wa" (t3) // 6
++ :
++ "m" (*x),
++ "b" (16), // 8
++ "b" (32), // 9
++ "b" (48), // 10
++ "b" (64), // 11
++ "b" (80), // 12
++ "b" (96), // 13
++ "b" (112) // 14
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return sum;
++}
+
+
+diff --git a/kernel/power/daxpy.c b/kernel/power/daxpy.c
+index 4365bd88d..df0572e8e 100644
+--- a/kernel/power/daxpy.c
++++ b/kernel/power/daxpy.c
+@@ -43,21 +43,20 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_8
+
+-static void daxpy_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *alpha)
++static void daxpy_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT alpha)
+ {
+ BLASLONG register i = 0;
+- FLOAT a = *alpha;
+
+ while(i < n)
+ {
+- y[i] += a * x[i];
+- y[i+1] += a * x[i+1];
+- y[i+2] += a * x[i+2];
+- y[i+3] += a * x[i+3];
+- y[i+4] += a * x[i+4];
+- y[i+5] += a * x[i+5];
+- y[i+6] += a * x[i+6];
+- y[i+7] += a * x[i+7];
++ y[i] += alpha * x[i];
++ y[i+1] += alpha * x[i+1];
++ y[i+2] += alpha * x[i+2];
++ y[i+3] += alpha * x[i+3];
++ y[i+4] += alpha * x[i+4];
++ y[i+5] += alpha * x[i+5];
++ y[i+6] += alpha * x[i+6];
++ y[i+7] += alpha * x[i+7];
+ i+=8 ;
+
+ }
+@@ -70,11 +69,6 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ {
+ BLASLONG i=0;
+ BLASLONG ix=0,iy=0;
+- FLOAT a2[4];
+- a2[0]=da;
+- a2[1]=da;
+- a2[2]=da;
+- a2[3]=da;
+
+ if ( n <= 0 ) return(0);
+
+@@ -84,7 +78,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ BLASLONG n1 = n & -16;
+
+ if ( n1 )
+- daxpy_kernel_8(n1, x, y , a2 );
++ daxpy_kernel_8(n1, x, y, da);
+
+ i = n1;
+ while(i < n)
+diff --git a/kernel/power/daxpy_microk_power8.c b/kernel/power/daxpy_microk_power8.c
+index bb3f73aca..fb714a3f9 100644
+--- a/kernel/power/daxpy_microk_power8.c
++++ b/kernel/power/daxpy_microk_power8.c
+@@ -35,167 +35,183 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ #define HAVE_KERNEL_8 1
+-static void daxpy_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y , FLOAT *alpha) __attribute__ ((noinline));
+
+-static void daxpy_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *alpha)
++static void daxpy_kernel_8 (long n, double *x, double *y, double alpha)
+ {
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++ __vector double t4;
++ __vector double t5;
++ __vector double t6;
++ __vector double t7;
++ __vector double t8;
++ __vector double t9;
++ __vector double t10;
++ __vector double t11;
++ __vector double t12;
++ __vector double t13;
++ __vector double t14;
++ __vector double t15;
++ __vector double t16;
+
++ __asm__
++ (
++ "xxspltd %x4, %x22, 0 \n\t"
+
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
++ "dcbt 0, %2 \n\t"
++ "dcbt 0, %3 \n\t"
+
+- __asm__ __volatile__
+- (
++ "lxvd2x %x5, 0, %2 \n\t"
++ "lxvd2x %x6, %23, %2 \n\t"
++ "lxvd2x %x7, %24, %2 \n\t"
++ "lxvd2x %x8, %25, %2 \n\t"
+
+- "lxsdx 33, %5, %4 \n\t"
+- "xxspltd 32, 33, 0 \n\t"
+- "addi %8, %8, -8 \n\t"
++ "lxvd2x %x13, 0, %3 \n\t"
++ "lxvd2x %x14, %23, %3 \n\t"
++ "lxvd2x %x15, %24, %3 \n\t"
++ "lxvd2x %x16, %25, %3 \n\t"
+
+- "dcbt %2, %9 \n\t"
+- "dcbt %3, %9 \n\t"
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
+
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
++ "lxvd2x %x9, 0, %2 \n\t"
++ "lxvd2x %x10, %23, %2 \n\t"
++ "lxvd2x %x11, %24, %2 \n\t"
++ "lxvd2x %x12, %25, %2 \n\t"
+
+- "lxvd2x 48, 0, %3 \n\t"
+- "lxvd2x 49, %5, %3 \n\t"
+- "lxvd2x 50, %6, %3 \n\t"
+- "lxvd2x 51, %7, %3 \n\t"
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "lxvd2x 44, 0, %2 \n\t"
+- "lxvd2x 45, %5, %2 \n\t"
+- "lxvd2x 46, %6, %2 \n\t"
+- "lxvd2x 47, %7, %2 \n\t"
+-
+- "lxvd2x 52, 0, %3 \n\t"
+- "lxvd2x 53, %5, %3 \n\t"
+- "lxvd2x 54, %6, %3 \n\t"
+- "lxvd2x 55, %7, %3 \n\t"
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %9 \n\t"
+- "dcbt %3, %9 \n\t"
+-
+- "xvmaddadp 48, 40, 32 \n\t"
+- "xvmaddadp 49, 41, 32 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+-
+- "stxvd2x 48, 0, %8 \n\t"
+- "stxvd2x 49, %5, %8 \n\t"
+-
+- "xvmaddadp 50, 42, 32 \n\t"
+- "xvmaddadp 51, 43, 32 \n\t"
+-
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
+-
+- "lxvd2x 48, 0, %3 \n\t"
+- "lxvd2x 49, %5, %3 \n\t"
+- "lxvd2x 50, %6, %3 \n\t"
+- "lxvd2x 51, %7, %3 \n\t"
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %8, %8, 64 \n\t"
+-
+- "xvmaddadp 52, 44, 32 \n\t"
+- "addi %3, %3, 64 \n\t"
+- "xvmaddadp 53, 45, 32 \n\t"
+-
+- "lxvd2x 44, 0, %2 \n\t"
+- "lxvd2x 45, %5, %2 \n\t"
+-
+- "stxvd2x 52, 0, %8 \n\t"
+- "stxvd2x 53, %5, %8 \n\t"
+-
+- "xvmaddadp 54, 46, 32 \n\t"
+- "xvmaddadp 55, 47, 32 \n\t"
+-
+- "lxvd2x 46, %6, %2 \n\t"
+- "lxvd2x 47, %7, %2 \n\t"
+-
+- "stxvd2x 54, %6, %8 \n\t"
+- "stxvd2x 55, %7, %8 \n\t"
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %8, %8, 64 \n\t"
+-
+- "lxvd2x 52, 0, %3 \n\t"
+- "lxvd2x 53, %5, %3 \n\t"
+- "lxvd2x 54, %6, %3 \n\t"
+- "lxvd2x 55, %7, %3 \n\t"
+-
+- "addi %3, %3, 64 \n\t"
+-
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+-
+- "xvmaddadp 48, 40, 32 \n\t"
+- "xvmaddadp 49, 41, 32 \n\t"
+- "xvmaddadp 50, 42, 32 \n\t"
+- "xvmaddadp 51, 43, 32 \n\t"
+-
+- "xvmaddadp 52, 44, 32 \n\t"
+- "xvmaddadp 53, 45, 32 \n\t"
+- "xvmaddadp 54, 46, 32 \n\t"
+- "xvmaddadp 55, 47, 32 \n\t"
+-
+- "stxvd2x 48, 0, %8 \n\t"
+- "stxvd2x 49, %5, %8 \n\t"
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- "stxvd2x 52, 0, %8 \n\t"
+- "stxvd2x 53, %5, %8 \n\t"
+- "stxvd2x 54, %6, %8 \n\t"
+- "stxvd2x 55, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (y1), // 3
+- "r" (alpha), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (y2), // 8
+- "r" (pre) // 9
+- : "cr0", "%0", "%2" , "%3", "%8", "memory"
+- );
+-
+-}
++ "lxvd2x %x17, 0, %3 \n\t"
++ "lxvd2x %x18, %23, %3 \n\t"
++ "lxvd2x %x19, %24, %3 \n\t"
++ "lxvd2x %x20, %25, %3 \n\t"
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, -64 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".align 5 \n"
++ "1: \n\t"
++
++ "xvmaddadp %x13, %x5, %x4 \n\t"
++ "xvmaddadp %x14, %x6, %x4 \n\t"
++
++ "lxvd2x %x5, 0, %2 \n\t"
++ "lxvd2x %x6, %23, %2 \n\t"
++
++ "stxvd2x %x13, 0, %3 \n\t"
++ "stxvd2x %x14, %23, %3 \n\t"
++
++ "xvmaddadp %x15, %x7, %x4 \n\t"
++ "xvmaddadp %x16, %x8, %x4 \n\t"
++
++ "lxvd2x %x7, %24, %2 \n\t"
++ "lxvd2x %x8, %25, %2 \n\t"
++
++ "stxvd2x %x15, %24, %3 \n\t"
++ "stxvd2x %x16, %25, %3 \n\t"
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "lxvd2x %x13, 0, %3 \n\t"
++ "lxvd2x %x14, %23, %3 \n\t"
++ "lxvd2x %x15, %24, %3 \n\t"
++ "lxvd2x %x16, %25, %3 \n\t"
++
++ "addi %3, %3, -64 \n\t"
++
++ "xvmaddadp %x17, %x9, %x4 \n\t"
++ "xvmaddadp %x18, %x10, %x4 \n\t"
++
++ "lxvd2x %x9, 0, %2 \n\t"
++ "lxvd2x %x10, %23, %2 \n\t"
++
++ "stxvd2x %x17, 0, %3 \n\t"
++ "stxvd2x %x18, %23, %3 \n\t"
++
++ "xvmaddadp %x19, %x11, %x4 \n\t"
++ "xvmaddadp %x20, %x12, %x4 \n\t"
++
++ "lxvd2x %x11, %24, %2 \n\t"
++ "lxvd2x %x12, %25, %2 \n\t"
++
++ "stxvd2x %x19, %24, %3 \n\t"
++ "stxvd2x %x20, %25, %3 \n\t"
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "lxvd2x %x17, 0, %3 \n\t"
++ "lxvd2x %x18, %23, %3 \n\t"
++ "lxvd2x %x19, %24, %3 \n\t"
++ "lxvd2x %x20, %25, %3 \n\t"
++
++ "addi %3, %3, -64 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmaddadp %x13, %x5, %x4 \n\t"
++ "xvmaddadp %x14, %x6, %x4 \n\t"
++ "xvmaddadp %x15, %x7, %x4 \n\t"
++ "xvmaddadp %x16, %x8, %x4 \n\t"
++
++ "xvmaddadp %x17, %x9, %x4 \n\t"
++ "xvmaddadp %x18, %x10, %x4 \n\t"
++ "xvmaddadp %x19, %x11, %x4 \n\t"
++ "xvmaddadp %x20, %x12, %x4 \n\t"
++
++ "stxvd2x %x13, 0, %3 \n\t"
++ "stxvd2x %x14, %23, %3 \n\t"
++ "stxvd2x %x15, %24, %3 \n\t"
++ "stxvd2x %x16, %25, %3 \n\t"
++
++ "addi %3, %3, 64 \n\t"
++
++ "stxvd2x %x17, 0, %3 \n\t"
++ "stxvd2x %x18, %23, %3 \n\t"
++ "stxvd2x %x19, %24, %3 \n\t"
++ "stxvd2x %x20, %25, %3 \n"
++
++ "#n=%1 x=%21=%2 y=%0=%3 alpha=%22 o16=%23 o32=%24 o48=%25\n"
++ "#t0=%x4 t1=%x5 t2=%x6 t3=%x7 t4=%x8 t5=%x9 t6=%x10 t7=%x11 t8=%x12 t9=%x13 t10=%x14 t11=%x15 t12=%x16 t13=%x17 t14=%x18 t15=%x19 t16=%x20"
++ :
++ "+m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y), // 3
++ "=wa" (t0), // 4
++ "=wa" (t1), // 5
++ "=wa" (t2), // 6
++ "=wa" (t3), // 7
++ "=wa" (t4), // 8
++ "=wa" (t5), // 9
++ "=wa" (t6), // 10
++ "=wa" (t7), // 11
++ "=wa" (t8), // 12
++ "=wa" (t9), // 13
++ "=wa" (t10), // 14
++ "=wa" (t11), // 15
++ "=wa" (t12), // 16
++ "=wa" (t13), // 17
++ "=wa" (t14), // 18
++ "=wa" (t15), // 19
++ "=wa" (t16) // 20
++ :
++ "m" (*x),
++ "d" (alpha), // 22
++ "b" (16), // 23
++ "b" (32), // 24
++ "b" (48) // 25
++ :
++ "cr0"
++ );
++
++}
+
+
+diff --git a/kernel/power/dcopy_microk_power8.c b/kernel/power/dcopy_microk_power8.c
+index 04f7db556..261dc04de 100644
+--- a/kernel/power/dcopy_microk_power8.c
++++ b/kernel/power/dcopy_microk_power8.c
+@@ -35,140 +35,121 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void dcopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void dcopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void dcopy_kernel_32 (long n, double *x, double *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 50, 0, %2 \n\t"
+- "lxvd2x 51, %5, %2 \n\t"
+- "lxvd2x 52, %6, %2 \n\t"
+- "lxvd2x 53, %7, %2 \n\t"
+- "lxvd2x 54, %8, %2 \n\t"
+- "lxvd2x 55, %9, %2 \n\t"
+- "lxvd2x 56, %10, %2 \n\t"
+- "lxvd2x 57, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvd2x 40, 0, %1 \n\t"
+- "stxvd2x 41, %5, %1 \n\t"
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "stxvd2x 42, %6, %1 \n\t"
+- "stxvd2x 43, %7, %1 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "stxvd2x 44, %8, %1 \n\t"
+- "stxvd2x 45, %9, %1 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "stxvd2x 46, %10, %1 \n\t"
+- "stxvd2x 47, %11, %1 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "stxvd2x 50, 0, %1 \n\t"
+- "stxvd2x 51, %5, %1 \n\t"
+- "lxvd2x 50, 0, %2 \n\t"
+- "lxvd2x 51, %5, %2 \n\t"
+- "stxvd2x 52, %6, %1 \n\t"
+- "stxvd2x 53, %7, %1 \n\t"
+- "lxvd2x 52, %6, %2 \n\t"
+- "lxvd2x 53, %7, %2 \n\t"
+- "stxvd2x 54, %8, %1 \n\t"
+- "stxvd2x 55, %9, %1 \n\t"
+- "lxvd2x 54, %8, %2 \n\t"
+- "lxvd2x 55, %9, %2 \n\t"
+- "stxvd2x 56, %10, %1 \n\t"
+- "stxvd2x 57, %11, %1 \n\t"
+- "lxvd2x 56, %10, %2 \n\t"
+- "lxvd2x 57, %11, %2 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "stxvd2x 40, 0, %1 \n\t"
+- "stxvd2x 41, %5, %1 \n\t"
+- "stxvd2x 42, %6, %1 \n\t"
+- "stxvd2x 43, %7, %1 \n\t"
+- "stxvd2x 44, %8, %1 \n\t"
+- "stxvd2x 45, %9, %1 \n\t"
+- "stxvd2x 46, %10, %1 \n\t"
+- "stxvd2x 47, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvd2x 50, 0, %1 \n\t"
+- "stxvd2x 51, %5, %1 \n\t"
+- "stxvd2x 52, %6, %1 \n\t"
+- "stxvd2x 53, %7, %1 \n\t"
+- "stxvd2x 54, %8, %1 \n\t"
+- "stxvd2x 55, %9, %1 \n\t"
+- "stxvd2x 56, %10, %1 \n\t"
+- "stxvd2x 57, %11, %1 \n\t"
+-
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %5, %2 \n\t"
++ "lxvd2x 34, %6, %2 \n\t"
++ "lxvd2x 35, %7, %2 \n\t"
++ "lxvd2x 36, %8, %2 \n\t"
++ "lxvd2x 37, %9, %2 \n\t"
++ "lxvd2x 38, %10, %2 \n\t"
++ "lxvd2x 39, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %5, %2 \n\t"
++ "lxvd2x 42, %6, %2 \n\t"
++ "lxvd2x 43, %7, %2 \n\t"
++ "lxvd2x 44, %8, %2 \n\t"
++ "lxvd2x 45, %9, %2 \n\t"
++ "lxvd2x 46, %10, %2 \n\t"
++ "lxvd2x 47, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %5, %2 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "lxvd2x 34, %6, %2 \n\t"
++ "lxvd2x 35, %7, %2 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "lxvd2x 36, %8, %2 \n\t"
++ "lxvd2x 37, %9, %2 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++ "lxvd2x 38, %10, %2 \n\t"
++ "lxvd2x 39, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %5, %2 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "lxvd2x 42, %6, %2 \n\t"
++ "lxvd2x 43, %7, %2 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "lxvd2x 44, %8, %2 \n\t"
++ "lxvd2x 45, %9, %2 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n\t"
++ "lxvd2x 46, %10, %2 \n\t"
++ "lxvd2x 47, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n"
++
++ "#n=%1 x=%4=%2 y=%0=%3 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "=m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y) // 3
++ :
++ "m" (*x),
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/ddot.c b/kernel/power/ddot.c
+index cef60a2e5..e43470e23 100644
+--- a/kernel/power/ddot.c
++++ b/kernel/power/ddot.c
+@@ -43,7 +43,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_8
+
+-static void ddot_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d)
++static FLOAT ddot_kernel_8 (BLASLONG n, FLOAT *x, FLOAT *y)
+ {
+ BLASLONG register i = 0;
+ FLOAT dot = 0.0;
+@@ -62,8 +62,7 @@ static void ddot_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d)
+ i+=8 ;
+
+ }
+- *d += dot;
+-
++ return dot;
+ }
+
+ #endif
+@@ -83,7 +82,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y)
+ BLASLONG n1 = n & -16;
+
+ if ( n1 )
+- ddot_kernel_8(n1, x, y , &dot );
++ dot = ddot_kernel_8(n1, x, y);
+
+ i = n1;
+ while(i < n)
+diff --git a/kernel/power/ddot_microk_power8.c b/kernel/power/ddot_microk_power8.c
+index b88049212..4e6bc29c9 100644
+--- a/kernel/power/ddot_microk_power8.c
++++ b/kernel/power/ddot_microk_power8.c
+@@ -34,145 +34,138 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_8 1
+-static void ddot_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y , FLOAT *dot) __attribute__ ((noinline));
+
+-static void ddot_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *dot)
++static double ddot_kernel_8 (long n, double *x, double *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "dcbt %2, %12 \n\t"
+- "dcbt %3, %12 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 48, 0, %3 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 49, %5, %3 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 50, %6, %3 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 51, %7, %3 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 52, %8, %3 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 53, %9, %3 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 54, %10, %3 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+- "lxvd2x 55, %11, %3 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+- "addi %3, %3, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %12 \n\t"
+- "dcbt %3, %12 \n\t"
+-
+- "xvmaddadp 32, 40, 48 \n\t"
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 48, 0, %3 \n\t"
+- "xvmaddadp 33, 41, 49 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 49, %5, %3 \n\t"
+- "xvmaddadp 34, 42, 50 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 50, %6, %3 \n\t"
+- "xvmaddadp 35, 43, 51 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 51, %7, %3 \n\t"
+- "xvmaddadp 36, 44, 52 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 52, %8, %3 \n\t"
+- "xvmaddadp 37, 45, 53 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 53, %9, %3 \n\t"
+- "xvmaddadp 38, 46, 54 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 54, %10, %3 \n\t"
+- "xvmaddadp 39, 47, 55 \n\t"
+-
+- "lxvd2x 47, %11, %2 \n\t"
+- "lxvd2x 55, %11, %3 \n\t"
+-
+-
+- "addi %2, %2, 128 \n\t"
+- "addi %3, %3, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmaddadp 32, 40, 48 \n\t"
+- "xvmaddadp 33, 41, 49 \n\t"
+- "xvmaddadp 34, 42, 50 \n\t"
+- "xvmaddadp 35, 43, 51 \n\t"
+- "xvmaddadp 36, 44, 52 \n\t"
+- "xvmaddadp 37, 45, 53 \n\t"
+- "xvmaddadp 38, 46, 54 \n\t"
+- "xvmaddadp 39, 47, 55 \n\t"
+-
+- "xvadddp 32, 32, 33 \n\t"
+- "xvadddp 34, 34, 35 \n\t"
+- "xvadddp 36, 36, 37 \n\t"
+- "xvadddp 38, 38, 39 \n\t"
+-
+- "xvadddp 32, 32, 34 \n\t"
+- "xvadddp 36, 36, 38 \n\t"
+-
+- "xvadddp 32, 32, 36 \n\t"
+-
+- "xxswapd 33, 32 \n\t"
+-
+- "xsadddp 32, 32, 33 \n\t"
+-
+- "stxsdx 32, 0, %4 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (y1), // 3
+- "r" (dot), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112), // 11
+- "r" (pre) // 12
+- : "cr0", "%0", "%2" , "%3", "memory"
+- );
+-
+-}
+-
+-
++ double dot;
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++ "dcbt 0, %3 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 48, 0, %3 \n\t"
++ "lxvd2x 41, %10, %2 \n\t"
++ "lxvd2x 49, %10, %3 \n\t"
++ "lxvd2x 42, %11, %2 \n\t"
++ "lxvd2x 50, %11, %3 \n\t"
++ "lxvd2x 43, %12, %2 \n\t"
++ "lxvd2x 51, %12, %3 \n\t"
++ "lxvd2x 44, %13, %2 \n\t"
++ "lxvd2x %x4, %13, %3 \n\t"
++ "lxvd2x 45, %14, %2 \n\t"
++ "lxvd2x %x5, %14, %3 \n\t"
++ "lxvd2x 46, %15, %2 \n\t"
++ "lxvd2x %x6, %15, %3 \n\t"
++ "lxvd2x 47, %16, %2 \n\t"
++ "lxvd2x %x7, %16, %3 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmaddadp 32, 40, 48 \n\t"
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 48, 0, %3 \n\t"
++ "xvmaddadp 33, 41, 49 \n\t"
++ "lxvd2x 41, %10, %2 \n\t"
++ "lxvd2x 49, %10, %3 \n\t"
++ "xvmaddadp 34, 42, 50 \n\t"
++ "lxvd2x 42, %11, %2 \n\t"
++ "lxvd2x 50, %11, %3 \n\t"
++ "xvmaddadp 35, 43, 51 \n\t"
++ "lxvd2x 43, %12, %2 \n\t"
++ "lxvd2x 51, %12, %3 \n\t"
++ "xvmaddadp 36, 44, %x4 \n\t"
++ "lxvd2x 44, %13, %2 \n\t"
++ "lxvd2x %x4, %13, %3 \n\t"
++ "xvmaddadp 37, 45, %x5 \n\t"
++ "lxvd2x 45, %14, %2 \n\t"
++ "lxvd2x %x5, %14, %3 \n\t"
++ "xvmaddadp 38, 46, %x6 \n\t"
++ "lxvd2x 46, %15, %2 \n\t"
++ "lxvd2x %x6, %15, %3 \n\t"
++ "xvmaddadp 39, 47, %x7 \n\t"
++ "lxvd2x 47, %16, %2 \n\t"
++ "lxvd2x %x7, %16, %3 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmaddadp 32, 40, 48 \n\t"
++ "xvmaddadp 33, 41, 49 \n\t"
++ "xvmaddadp 34, 42, 50 \n\t"
++ "xvmaddadp 35, 43, 51 \n\t"
++ "xvmaddadp 36, 44, %x4 \n\t"
++ "xvmaddadp 37, 45, %x5 \n\t"
++ "xvmaddadp 38, 46, %x6 \n\t"
++ "xvmaddadp 39, 47, %x7 \n\t"
++
++ "xvadddp 32, 32, 33 \n\t"
++ "xvadddp 34, 34, 35 \n\t"
++ "xvadddp 36, 36, 37 \n\t"
++ "xvadddp 38, 38, 39 \n\t"
++
++ "xvadddp 32, 32, 34 \n\t"
++ "xvadddp 36, 36, 38 \n\t"
++
++ "xvadddp 32, 32, 36 \n\t"
++
++ "xxswapd 33, 32 \n\t"
++
++ "xsadddp %x0, 32, 33 \n"
++
++ "#dot=%0 n=%1 x=%8=%2 y=%9=%3 o16=%10 o32=%11 o48=%12 o64=%13 o80=%14 o96=%15 o122=%16\n"
++ "#t0=%x4 t1=%x5 t2=%x6 t3=%x7"
++ :
++ "=d" (dot), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y), // 3
++ "=wa" (t0), // 4
++ "=wa" (t1), // 5
++ "=wa" (t2), // 6
++ "=wa" (t3) // 7
++ :
++ "m" (*x),
++ "m" (*y),
++ "b" (16), // 10
++ "b" (32), // 11
++ "b" (48), // 12
++ "b" (64), // 13
++ "b" (80), // 14
++ "b" (96), // 15
++ "b" (112) // 16
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return dot;
++}
+diff --git a/kernel/power/dgemv_n.c b/kernel/power/dgemv_n.c
+index 812d09d15..57f9f9e72 100644
+--- a/kernel/power/dgemv_n.c
++++ b/kernel/power/dgemv_n.c
+@@ -47,18 +47,18 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_4x4
+
+-static void dgemv_kernel_4x4(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT *alpha)
++static void dgemv_kernel_4x4(BLASLONG n, FLOAT *a_ptr, BLASLONG lda, FLOAT *xo, FLOAT *y, FLOAT alpha)
+ {
+ BLASLONG i;
+- FLOAT *a0,*a1,*a2,*a3;
+ FLOAT x[4] __attribute__ ((aligned (16)));;
+- a0 = ap[0];
+- a1 = ap[1];
+- a2 = ap[2];
+- a3 = ap[3];
++ FLOAT *a0 = a_ptr;
++ FLOAT *a1 = a0 + lda;
++ FLOAT *a2 = a1 + lda;
++ FLOAT *a3 = a2 + lda;
++
+
+ for ( i=0; i<4; i++)
+- x[i] = xo[i] * *alpha;
++ x[i] = xo[i] * alpha;
+
+ for ( i=0; i< n; i+=4 )
+ {
+@@ -73,16 +73,13 @@ static void dgemv_kernel_4x4(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT
+
+ #ifndef HAVE_KERNEL_4x2
+
+-static void dgemv_kernel_4x2(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT *alpha)
++static void dgemv_kernel_4x2(BLASLONG n, FLOAT *a0, FLOAT *a1, FLOAT *xo, FLOAT *y, FLOAT alpha)
+ {
+ BLASLONG i;
+- FLOAT *a0,*a1;
+ FLOAT x[4] __attribute__ ((aligned (16)));;
+- a0 = ap[0];
+- a1 = ap[1];
+
+ for ( i=0; i<2; i++)
+- x[i] = xo[i] * *alpha;
++ x[i] = xo[i] * alpha;
+
+ for ( i=0; i< n; i+=4 )
+ {
+@@ -98,15 +95,13 @@ static void dgemv_kernel_4x2(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT
+
+ #ifndef HAVE_KERNEL_4x1
+
+-static void dgemv_kernel_4x1(BLASLONG n, FLOAT *ap, FLOAT *xo, FLOAT *y, FLOAT *alpha)
++static void dgemv_kernel_4x1(BLASLONG n, FLOAT *a0, FLOAT *xo, FLOAT *y, FLOAT alpha)
+ {
+ BLASLONG i;
+- FLOAT *a0;
+ FLOAT x[4] __attribute__ ((aligned (16)));;
+- a0 = ap;
+
+ for ( i=0; i<1; i++)
+- x[i] = xo[i] * *alpha;
++ x[i] = xo[i] * alpha;
+
+ for ( i=0; i< n; i+=4 )
+ {
+@@ -141,7 +136,6 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+ {
+
+ BLASLONG i;
+- BLASLONG j;
+ FLOAT *a_ptr;
+ FLOAT *x_ptr;
+ FLOAT *y_ptr;
+@@ -151,13 +145,9 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+ BLASLONG m3;
+ BLASLONG n2;
+ BLASLONG lda4 = lda << 2;
+- FLOAT *ap[4] __attribute__ ((aligned (16)));;
+ FLOAT xbuffer[8] __attribute__ ((aligned (16)));;
+- FLOAT alpha_r[4] __attribute__ ((aligned (16)));;
+ FLOAT *ybuffer;
+
+- alpha_r[0] = alpha;
+-
+ if ( m < 1 ) return(0);
+ if ( n < 1 ) return(0);
+
+@@ -187,11 +177,6 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+ a_ptr = a;
+ x_ptr = x;
+
+- ap[0] = a_ptr;
+- ap[1] = a_ptr + lda;
+- ap[2] = ap[1] + lda;
+- ap[3] = ap[2] + lda;
+-
+ if ( inc_y != 1 )
+ memset(ybuffer,0,NB*8);
+ else
+@@ -203,18 +188,14 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+
+ for( i = 0; i < n1 ; i++)
+ {
+- dgemv_kernel_4x4(NB,ap,x_ptr,ybuffer,alpha_r);
+- ap[0] += lda4;
+- ap[1] += lda4;
+- ap[2] += lda4;
+- ap[3] += lda4;
++ dgemv_kernel_4x4(NB,a_ptr,lda,x_ptr,ybuffer,alpha);
+ a_ptr += lda4;
+ x_ptr += 4;
+ }
+
+ if ( n2 & 2 )
+ {
+- dgemv_kernel_4x2(NB,ap,x_ptr,ybuffer,alpha_r);
++ dgemv_kernel_4x2(NB,a_ptr,a_ptr+lda,x_ptr,ybuffer,alpha);
+ a_ptr += lda*2;
+ x_ptr += 2;
+ }
+@@ -222,7 +203,7 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+
+ if ( n2 & 1 )
+ {
+- dgemv_kernel_4x1(NB,a_ptr,x_ptr,ybuffer,alpha_r);
++ dgemv_kernel_4x1(NB,a_ptr,x_ptr,ybuffer,alpha);
+ a_ptr += lda;
+ x_ptr += 1;
+
+@@ -243,11 +224,7 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+ x_ptr += inc_x;
+ xbuffer[3] = x_ptr[0];
+ x_ptr += inc_x;
+- dgemv_kernel_4x4(NB,ap,xbuffer,ybuffer,alpha_r);
+- ap[0] += lda4;
+- ap[1] += lda4;
+- ap[2] += lda4;
+- ap[3] += lda4;
++ dgemv_kernel_4x4(NB,a_ptr,lda,xbuffer,ybuffer,alpha);
+ a_ptr += lda4;
+ }
+
+@@ -255,7 +232,7 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
+ {
+ xbuffer[0] = x_ptr[0];
+ x_ptr += inc_x;
+- dgemv_kernel_4x1(NB,a_ptr,xbuffer,ybuffer,alpha_r);
++ dgemv_kernel_4x1(NB,a_ptr,xbuffer,ybuffer,alpha);
+ a_ptr += lda;
+
+ }
+diff --git a/kernel/power/dgemv_n_microk_power8.c b/kernel/power/dgemv_n_microk_power8.c
+index 9eabe555c..5b42bbb38 100644
+--- a/kernel/power/dgemv_n_microk_power8.c
++++ b/kernel/power/dgemv_n_microk_power8.c
+@@ -35,267 +35,264 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_4x4 1
+
+-static void dgemv_kernel_4x4(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT *alpha) __attribute__ ((noinline));
+-
+-static void dgemv_kernel_4x4(BLASLONG n, FLOAT **ap, FLOAT *xo, FLOAT *y, FLOAT *alpha)
++static void dgemv_kernel_4x4 (long n, double *ap, long lda, double *x, double *y, double alpha)
+ {
+- BLASLONG i=n;
+- BLASLONG o8 = 8;
+- BLASLONG o16 = 16;
+- BLASLONG o24 = 24;
+- BLASLONG pre = 384;
+-
+- FLOAT *a0,*a1,*a2,*a3;
+- FLOAT *y1=y+1;
+- FLOAT x[4] __attribute__ ((aligned (16)));;
+- a0 = ap[0]+1;
+- a1 = ap[1]+1;
+- a2 = ap[2]+1;
+- a3 = ap[3]+1;
+-
+- x[0]=xo[0] * *alpha;
+- x[1]=xo[1] * *alpha;
+- x[2]=xo[2] * *alpha;
+- x[3]=xo[3] * *alpha;
++ double *a0;
++ double *a1;
++ double *a2;
++ double *a3;
++
++ __asm__
++ (
++ "lxvd2x 34, 0, %9 \n\t" // x0, x1
++ "lxvd2x 35, %10, %9 \n\t" // x2, x3
++ "xxspltd 32, %x8, 0 \n\t" // alpha, alpha
++
++ "sldi %6, %4, 3 \n\t" // lda * sizeof (double)
++
++ "xvmuldp 34, 34, 32 \n\t" // x0 * alpha, x1 * alpha
++ "xvmuldp 35, 35, 32 \n\t" // x2 * alpha, x3 * alpha
++
++ "add %4, %3, %6 \n\t" // a1 = a0 + lda
++ "add %6, %6, %6 \n\t" // 2 * lda
++
++ "xxspltd 32, 34, 0 \n\t" // x0 * alpha, x0 * alpha
++ "xxspltd 33, 34, 1 \n\t" // x1 * alpha, x1 * alpha
++ "xxspltd 34, 35, 0 \n\t" // x2 * alpha, x2 * alpha
++ "xxspltd 35, 35, 1 \n\t" // x3 * alpha, x3 * alpha
++
++ "add %5, %3, %6 \n\t" // a2 = a0 + 2 * lda
++ "add %6, %4, %6 \n\t" // a3 = a1 + 2 * lda
++
++ "dcbt 0, %3 \n\t"
++ "dcbt 0, %4 \n\t"
++ "dcbt 0, %5 \n\t"
++ "dcbt 0, %6 \n\t"
+
++ "lxvd2x 40, 0, %3 \n\t" // a0[0], a0[1]
++ "lxvd2x 41, %10, %3 \n\t" // a0[2], a0[3]
+
+- __asm__ __volatile__
+- (
+- "lxvdsx 32, 0 , %1 \n\t" // x0
+- "lxvdsx 33,%3 , %1 \n\t" // x1
+- "lxvdsx 34,%4 , %1 \n\t" // x2
+- "lxvdsx 35,%5 , %1 \n\t" // x3
+- "addi %2 , %2 , -8 \n\t"
+- "addi %6 , %6 , -8 \n\t"
+- "addi %7 , %7 , -8 \n\t"
+- "addi %8 , %8 , -8 \n\t"
+- "addi %9 , %9 , -8 \n\t"
+-
+- "lxvd2x 48, 0, %6 \n\t" // a0[0], a0[1]
+- "lxvd2x 49,%4, %6 \n\t" // a0[2], a0[3]
+-
+- "lxvd2x 50, 0, %7 \n\t" // a1[0], a1[1]
+- "lxvd2x 51,%4, %7 \n\t" // a1[2], a1[3]
++ "lxvd2x 42, 0, %4 \n\t" // a1[0], a1[1]
++ "lxvd2x 43, %10, %4 \n\t" // a1[2], a1[3]
+
+- "lxvd2x 52, 0, %8 \n\t" // a2[0], a2[1]
+- "lxvd2x 53,%4, %8 \n\t" // a2[2], a2[3]
++ "lxvd2x 44, 0, %5 \n\t" // a2[0], a2[1]
++ "lxvd2x 45, %10, %5 \n\t" // a2[2], a2[3]
+
+- "lxvd2x 54, 0, %9 \n\t" // a3[0], a3[1]
+- "lxvd2x 55,%4, %9 \n\t" // a3[2], a3[3]
++ "lxvd2x 46, 0, %6 \n\t" // a3[0], a3[1]
++ "lxvd2x 47, %10, %6 \n\t" // a3[2], a3[3]
+
+- "addi %6, %6, 32 \n\t"
+- "addi %7, %7, 32 \n\t"
+- "addi %8, %8, 32 \n\t"
+- "addi %9, %9, 32 \n\t"
++ "dcbt 0, %2 \n\t"
+
+- "addic. %0 , %0 , -4 \n\t"
+- "ble 2f \n\t"
++ "addi %3, %3, 32 \n\t"
++ "addi %4, %4, 32 \n\t"
++ "addi %5, %5, 32 \n\t"
++ "addi %6, %6, 32 \n\t"
+
+- ".align 5 \n\t"
+- "1: \n\t"
++ "addic. %1, %1, -4 \n\t"
++ "ble 2f \n\t"
+
+- "dcbt %2, %10 \n\t"
++ ".p2align 5 \n"
++ "1: \n\t"
+
+- "lxvd2x 40, 0, %2 \n\t" // y0, y1
+- "lxvd2x 41,%4, %2 \n\t" // y2, y3
+-
+- "dcbt %6, %10 \n\t"
+- "dcbt %7, %10 \n\t"
+- "dcbt %8, %10 \n\t"
+- "dcbt %9, %10 \n\t"
++ "lxvd2x 36, 0, %2 \n\t" // y0, y1
++ "lxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "xvmaddadp 40, 48, 32 \n\t"
+- "xvmaddadp 41, 49, 32 \n\t"
++ "xvmaddadp 36, 40, 32 \n\t"
++ "xvmaddadp 37, 41, 32 \n\t"
+
+- "lxvd2x 48, 0, %6 \n\t" // a0[0], a0[1]
+- "lxvd2x 49,%4, %6 \n\t" // a0[2], a0[3]
++ "lxvd2x 40, 0, %3 \n\t" // a0[0], a0[1]
++ "lxvd2x 41, %10, %3 \n\t" // a0[2], a0[3]
+
+- "xvmaddadp 40, 50, 33 \n\t"
+- "addi %6, %6, 32 \n\t"
+- "xvmaddadp 41, 51, 33 \n\t"
++ "xvmaddadp 36, 42, 33 \n\t"
++ "addi %3, %3, 32 \n\t"
++ "xvmaddadp 37, 43, 33 \n\t"
+
+- "lxvd2x 50, 0, %7 \n\t" // a1[0], a1[1]
+- "lxvd2x 51,%4, %7 \n\t" // a1[2], a1[3]
++ "lxvd2x 42, 0, %4 \n\t" // a1[0], a1[1]
++ "lxvd2x 43, %10, %4 \n\t" // a1[2], a1[3]
+
+- "xvmaddadp 40, 52, 34 \n\t"
+- "addi %7, %7, 32 \n\t"
+- "xvmaddadp 41, 53, 34 \n\t"
++ "xvmaddadp 36, 44, 34 \n\t"
++ "addi %4, %4, 32 \n\t"
++ "xvmaddadp 37, 45, 34 \n\t"
+
+- "lxvd2x 52, 0, %8 \n\t" // a2[0], a2[1]
+- "lxvd2x 53,%4, %8 \n\t" // a2[2], a2[3]
++ "lxvd2x 44, 0, %5 \n\t" // a2[0], a2[1]
++ "lxvd2x 45, %10, %5 \n\t" // a2[2], a2[3]
+
+- "xvmaddadp 40, 54, 35 \n\t"
+- "addi %8, %8, 32 \n\t"
+- "xvmaddadp 41, 55, 35 \n\t"
++ "xvmaddadp 36, 46, 35 \n\t"
++ "addi %5, %5, 32 \n\t"
++ "xvmaddadp 37, 47, 35 \n\t"
+
+- "stxvd2x 40, 0, %2 \n\t" // y0, y1
+- "stxvd2x 41,%4, %2 \n\t" // y2, y3
++ "stxvd2x 36, 0, %2 \n\t" // y0, y1
++ "stxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "lxvd2x 54, 0, %9 \n\t" // a3[0], a3[1]
+- "lxvd2x 55,%4, %9 \n\t" // a3[2], a3[3]
++ "lxvd2x 46, 0, %6 \n\t" // a3[0], a3[1]
++ "lxvd2x 47, %10, %6 \n\t" // a3[2], a3[3]
+
+- "addi %9, %9, 32 \n\t"
+- "addi %2, %2, 32 \n\t"
++ "addi %6, %6, 32 \n\t"
++ "addi %2, %2, 32 \n\t"
+
+- "addic. %0 , %0 , -4 \n\t"
+- "ble 2f \n\t"
++ "addic. %1, %1, -4 \n\t"
++ "ble 2f \n\t"
+
+
+- "lxvd2x 40, 0, %2 \n\t" // y0, y1
+- "lxvd2x 41,%4, %2 \n\t" // y2, y3
+-
+- "xvmaddadp 40, 48, 32 \n\t"
+- "xvmaddadp 41, 49, 32 \n\t"
++ "lxvd2x 36, 0, %2 \n\t" // y0, y1
++ "lxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "lxvd2x 48, 0, %6 \n\t" // a0[0], a0[1]
+- "lxvd2x 49,%4, %6 \n\t" // a0[2], a0[3]
++ "xvmaddadp 36, 40, 32 \n\t"
++ "xvmaddadp 37, 41, 32 \n\t"
+
+- "xvmaddadp 40, 50, 33 \n\t"
+- "addi %6, %6, 32 \n\t"
+- "xvmaddadp 41, 51, 33 \n\t"
++ "lxvd2x 40, 0, %3 \n\t" // a0[0], a0[1]
++ "lxvd2x 41, %10, %3 \n\t" // a0[2], a0[3]
+
+- "lxvd2x 50, 0, %7 \n\t" // a1[0], a1[1]
+- "lxvd2x 51,%4, %7 \n\t" // a1[2], a1[3]
++ "xvmaddadp 36, 42, 33 \n\t"
++ "addi %3, %3, 32 \n\t"
++ "xvmaddadp 37, 43, 33 \n\t"
+
+- "xvmaddadp 40, 52, 34 \n\t"
+- "addi %7, %7, 32 \n\t"
+- "xvmaddadp 41, 53, 34 \n\t"
++ "lxvd2x 42, 0, %4 \n\t" // a1[0], a1[1]
++ "lxvd2x 43, %10, %4 \n\t" // a1[2], a1[3]
+
+- "lxvd2x 52, 0, %8 \n\t" // a2[0], a2[1]
+- "lxvd2x 53,%4, %8 \n\t" // a2[2], a2[3]
++ "xvmaddadp 36, 44, 34 \n\t"
++ "addi %4, %4, 32 \n\t"
++ "xvmaddadp 37, 45, 34 \n\t"
+
+- "xvmaddadp 40, 54, 35 \n\t"
+- "addi %8, %8, 32 \n\t"
+- "xvmaddadp 41, 55, 35 \n\t"
++ "lxvd2x 44, 0, %5 \n\t" // a2[0], a2[1]
++ "lxvd2x 45, %10, %5 \n\t" // a2[2], a2[3]
+
+- "stxvd2x 40, 0, %2 \n\t" // y0, y1
+- "stxvd2x 41,%4, %2 \n\t" // y2, y3
++ "xvmaddadp 36, 46, 35 \n\t"
++ "addi %5, %5, 32 \n\t"
++ "xvmaddadp 37, 47, 35 \n\t"
+
+- "lxvd2x 54, 0, %9 \n\t" // a3[0], a3[1]
+- "lxvd2x 55,%4, %9 \n\t" // a3[2], a3[3]
++ "stxvd2x 36, 0, %2 \n\t" // y0, y1
++ "stxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "addi %9, %9, 32 \n\t"
+- "addi %2, %2, 32 \n\t"
++ "lxvd2x 46, 0, %6 \n\t" // a3[0], a3[1]
++ "lxvd2x 47, %10, %6 \n\t" // a3[2], a3[3]
+
+- "addic. %0 , %0 , -4 \n\t"
+- "ble 2f \n\t"
++ "addi %6, %6, 32 \n\t"
++ "addi %2, %2, 32 \n\t"
+
++ "addic. %1, %1, -4 \n\t"
++ "ble 2f \n\t"
+
+- "lxvd2x 40, 0, %2 \n\t" // y0, y1
+- "lxvd2x 41,%4, %2 \n\t" // y2, y3
+-
+- "xvmaddadp 40, 48, 32 \n\t"
+- "xvmaddadp 41, 49, 32 \n\t"
+
+- "lxvd2x 48, 0, %6 \n\t" // a0[0], a0[1]
+- "lxvd2x 49,%4, %6 \n\t" // a0[2], a0[3]
++ "lxvd2x 36, 0, %2 \n\t" // y0, y1
++ "lxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "xvmaddadp 40, 50, 33 \n\t"
+- "addi %6, %6, 32 \n\t"
+- "xvmaddadp 41, 51, 33 \n\t"
++ "xvmaddadp 36, 40, 32 \n\t"
++ "xvmaddadp 37, 41, 32 \n\t"
+
+- "lxvd2x 50, 0, %7 \n\t" // a1[0], a1[1]
+- "lxvd2x 51,%4, %7 \n\t" // a1[2], a1[3]
++ "lxvd2x 40, 0, %3 \n\t" // a0[0], a0[1]
++ "lxvd2x 41, %10, %3 \n\t" // a0[2], a0[3]
+
+- "xvmaddadp 40, 52, 34 \n\t"
+- "addi %7, %7, 32 \n\t"
+- "xvmaddadp 41, 53, 34 \n\t"
++ "xvmaddadp 36, 42, 33 \n\t"
++ "addi %3, %3, 32 \n\t"
++ "xvmaddadp 37, 43, 33 \n\t"
+
+- "lxvd2x 52, 0, %8 \n\t" // a2[0], a2[1]
+- "lxvd2x 53,%4, %8 \n\t" // a2[2], a2[3]
++ "lxvd2x 42, 0, %4 \n\t" // a1[0], a1[1]
++ "lxvd2x 43, %10, %4 \n\t" // a1[2], a1[3]
+
+- "xvmaddadp 40, 54, 35 \n\t"
+- "addi %8, %8, 32 \n\t"
+- "xvmaddadp 41, 55, 35 \n\t"
++ "xvmaddadp 36, 44, 34 \n\t"
++ "addi %4, %4, 32 \n\t"
++ "xvmaddadp 37, 45, 34 \n\t"
+
+- "stxvd2x 40, 0, %2 \n\t" // y0, y1
+- "stxvd2x 41,%4, %2 \n\t" // y2, y3
++ "lxvd2x 44, 0, %5 \n\t" // a2[0], a2[1]
++ "lxvd2x 45, %10, %5 \n\t" // a2[2], a2[3]
+
+- "lxvd2x 54, 0, %9 \n\t" // a3[0], a3[1]
+- "lxvd2x 55,%4, %9 \n\t" // a3[2], a3[3]
++ "xvmaddadp 36, 46, 35 \n\t"
++ "addi %5, %5, 32 \n\t"
++ "xvmaddadp 37, 47, 35 \n\t"
+
+- "addi %9, %9, 32 \n\t"
+- "addi %2, %2, 32 \n\t"
++ "stxvd2x 36, 0, %2 \n\t" // y0, y1
++ "stxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "addic. %0 , %0 , -4 \n\t"
+- "ble 2f \n\t"
++ "lxvd2x 46, 0, %6 \n\t" // a3[0], a3[1]
++ "lxvd2x 47, %10, %6 \n\t" // a3[2], a3[3]
+
++ "addi %6, %6, 32 \n\t"
++ "addi %2, %2, 32 \n\t"
+
+- "lxvd2x 40, 0, %2 \n\t" // y0, y1
+- "lxvd2x 41,%4, %2 \n\t" // y2, y3
+-
+- "xvmaddadp 40, 48, 32 \n\t"
+- "xvmaddadp 41, 49, 32 \n\t"
++ "addic. %1, %1, -4 \n\t"
++ "ble 2f \n\t"
+
+- "lxvd2x 48, 0, %6 \n\t" // a0[0], a0[1]
+- "lxvd2x 49,%4, %6 \n\t" // a0[2], a0[3]
+
+- "xvmaddadp 40, 50, 33 \n\t"
+- "addi %6, %6, 32 \n\t"
+- "xvmaddadp 41, 51, 33 \n\t"
++ "lxvd2x 36, 0, %2 \n\t" // y0, y1
++ "lxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "lxvd2x 50, 0, %7 \n\t" // a1[0], a1[1]
+- "lxvd2x 51,%4, %7 \n\t" // a1[2], a1[3]
++ "xvmaddadp 36, 40, 32 \n\t"
++ "xvmaddadp 37, 41, 32 \n\t"
+
+- "xvmaddadp 40, 52, 34 \n\t"
+- "addi %7, %7, 32 \n\t"
+- "xvmaddadp 41, 53, 34 \n\t"
++ "lxvd2x 40, 0, %3 \n\t" // a0[0], a0[1]
++ "lxvd2x 41, %10, %3 \n\t" // a0[2], a0[3]
+
+- "lxvd2x 52, 0, %8 \n\t" // a2[0], a2[1]
+- "lxvd2x 53,%4, %8 \n\t" // a2[2], a2[3]
++ "xvmaddadp 36, 42, 33 \n\t"
++ "addi %3, %3, 32 \n\t"
++ "xvmaddadp 37, 43, 33 \n\t"
+
+- "xvmaddadp 40, 54, 35 \n\t"
+- "addi %8, %8, 32 \n\t"
+- "xvmaddadp 41, 55, 35 \n\t"
++ "lxvd2x 42, 0, %4 \n\t" // a1[0], a1[1]
++ "lxvd2x 43, %10, %4 \n\t" // a1[2], a1[3]
+
+- "stxvd2x 40, 0, %2 \n\t" // y0, y1
+- "stxvd2x 41,%4, %2 \n\t" // y2, y3
++ "xvmaddadp 36, 44, 34 \n\t"
++ "addi %4, %4, 32 \n\t"
++ "xvmaddadp 37, 45, 34 \n\t"
+
+- "lxvd2x 54, 0, %9 \n\t" // a3[0], a3[1]
+- "lxvd2x 55,%4, %9 \n\t" // a3[2], a3[3]
++ "lxvd2x 44, 0, %5 \n\t" // a2[0], a2[1]
++ "lxvd2x 45, %10, %5 \n\t" // a2[2], a2[3]
+
+- "addi %9, %9, 32 \n\t"
+- "addi %2, %2, 32 \n\t"
++ "xvmaddadp 36, 46, 35 \n\t"
++ "addi %5, %5, 32 \n\t"
++ "xvmaddadp 37, 47, 35 \n\t"
+
+- "addic. %0 , %0 , -4 \n\t"
+- "bgt 1b \n\t"
++ "stxvd2x 36, 0, %2 \n\t" // y0, y1
++ "stxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "2: \n\t"
++ "lxvd2x 46, 0, %6 \n\t" // a3[0], a3[1]
++ "lxvd2x 47, %10, %6 \n\t" // a3[2], a3[3]
+
+- "lxvd2x 40, 0, %2 \n\t" // y0, y1
+- "lxvd2x 41,%4, %2 \n\t" // y2, y3
++ "addi %6, %6, 32 \n\t"
++ "addi %2, %2, 32 \n\t"
+
+- "xvmaddadp 40, 48, 32 \n\t"
+- "xvmaddadp 41, 49, 32 \n\t"
++ "addic. %1, %1, -4 \n\t"
++ "bgt 1b \n"
+
+- "xvmaddadp 40, 50, 33 \n\t"
+- "xvmaddadp 41, 51, 33 \n\t"
++ "2: \n\t"
+
+- "xvmaddadp 40, 52, 34 \n\t"
+- "xvmaddadp 41, 53, 34 \n\t"
++ "lxvd2x 36, 0, %2 \n\t" // y0, y1
++ "lxvd2x 37, %10, %2 \n\t" // y2, y3
+
+- "xvmaddadp 40, 54, 35 \n\t"
+- "xvmaddadp 41, 55, 35 \n\t"
++ "xvmaddadp 36, 40, 32 \n\t"
++ "xvmaddadp 37, 41, 32 \n\t"
+
+- "stxvd2x 40, 0, %2 \n\t" // y0, y1
+- "stxvd2x 41,%4, %2 \n\t" // y2, y3
++ "xvmaddadp 36, 42, 33 \n\t"
++ "xvmaddadp 37, 43, 33 \n\t"
+
+- :
+- :
+- "r" (i), // 0
+- "r" (x), // 1
+- "r" (y1), // 2
+- "r" (o8), // 3
+- "r" (o16), // 4
+- "r" (o24), // 5
+- "r" (a0), // 6
+- "r" (a1), // 7
+- "r" (a2), // 8
+- "r" (a3), // 9
+- "r" (pre) // 10
+- : "cr0", "%0", "%2" , "%6", "%7", "%8", "%9", "memory"
+- );
++ "xvmaddadp 36, 44, 34 \n\t"
++ "xvmaddadp 37, 45, 34 \n\t"
+
+-}
++ "xvmaddadp 36, 46, 35 \n\t"
++ "xvmaddadp 37, 47, 35 \n\t"
+
++ "stxvd2x 36, 0, %2 \n\t" // y0, y1
++ "stxvd2x 37, %10, %2 \n" // y2, y3
+
++ "#n=%1 ap=%11 lda=%12 x=%7=%9 y=%0=%2 alpha=%8 o16=%10\n"
++ "#a0=%3 a1=%4 a2=%5 a3=%6"
++ :
++ "=m" (*y),
++ "+r" (n), // 1
++ "+b" (y), // 2
++ "=b" (a0), // 3
++ "=b" (a1), // 4
++ "=&b" (a2), // 5
++ "=&b" (a3) // 6
++ :
++ "m" (*x),
++ "d" (alpha), // 8
++ "r" (x), // 9
++ "b" (16), // 10
++ "3" (ap), // 11
++ "4" (lda) // 12
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/drot.c b/kernel/power/drot.c
+index c93f69b12..3e107486f 100644
+--- a/kernel/power/drot.c
++++ b/kernel/power/drot.c
+@@ -46,7 +46,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_16
+
+-static void drot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
++static void drot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT c, FLOAT s)
+ {
+
+ BLASLONG i=0;
+@@ -56,8 +56,6 @@ static void drot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
+ FLOAT y00, y01, y02, y03;
+ FLOAT *x1=x;
+ FLOAT *y1=y;
+- FLOAT c1=*c;
+- FLOAT s1=*s;
+
+ while ( i<n )
+ {
+@@ -71,14 +69,14 @@ static void drot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
+ x03 = x1[3];
+ y03 = y1[3];
+
+- f0 = c1*x00 + s1*y00;
+- g0 = c1*y00 - s1*x00;
+- f1 = c1*x01 + s1*y01;
+- g1 = c1*y01 - s1*x01;
+- f2 = c1*x02 + s1*y02;
+- g2 = c1*y02 - s1*x02;
+- f3 = c1*x03 + s1*y03;
+- g3 = c1*y03 - s1*x03;
++ f0 = c*x00 + s*y00;
++ g0 = c*y00 - s*x00;
++ f1 = c*x01 + s*y01;
++ g1 = c*y01 - s*x01;
++ f2 = c*x02 + s*y02;
++ g2 = c*y02 - s*x02;
++ f3 = c*x03 + s*y03;
++ g3 = c*y03 - s*x03;
+
+ x1[0] = f0;
+ y1[0] = g0;
+@@ -106,8 +104,6 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
+ {
+ BLASLONG i=0;
+ BLASLONG ix=0,iy=0;
+- FLOAT c1[4] __attribute__ ((aligned (16)));;
+- FLOAT s1[4] __attribute__ ((aligned (16)));;
+ FLOAT *x1=x;
+ FLOAT *y1=y;
+ FLOAT temp;
+@@ -120,15 +116,7 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
+ BLASLONG n1 = n & -16;
+ if ( n1 > 0 )
+ {
+- c1[0]=c;
+- c1[1]=c;
+- c1[2]=c;
+- c1[3]=c;
+- s1[0]=s;
+- s1[1]=s;
+- s1[2]=s;
+- s1[3]=s;
+- drot_kernel_16(n1, x1, y1, c1, s1);
++ drot_kernel_16(n1, x1, y1, c, s);
+ i=n1;
+ }
+
+diff --git a/kernel/power/drot_microk_power8.c b/kernel/power/drot_microk_power8.c
+index 4444ac7eb..016b7764d 100644
+--- a/kernel/power/drot_microk_power8.c
++++ b/kernel/power/drot_microk_power8.c
+@@ -38,174 +38,176 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_16 1
+
+-static void drot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s) __attribute__ ((noinline));
+-
+-static void drot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
++static void drot_kernel_16 (long n, double *x, double *y, double c, double s)
+ {
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++ __vector double t4;
++ __vector double t5;
++ __vector double t6;
++ __vector double t7;
+
++ __asm__
++ (
++ "xxspltd 36, %x13, 0 \n\t" // load c to both dwords
++ "xxspltd 37, %x14, 0 \n\t" // load s to both dwords
+
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxsdx 36 , %5, %3 \n\t" // load c
+- "lxsdx 37 , %5, %4 \n\t" // load s
+- "addi %8 , %8, -8 \n\t"
+- "addi %9 , %9, -8 \n\t"
+-
+- "xxspltd 36 , 36, 0 \n\t"
+- "xxspltd 37 , 37, 0 \n\t"
+-
+- "lxvd2x 32, 0, %1 \n\t" // load x
+- "lxvd2x 33, %5, %1 \n\t"
+- "lxvd2x 34, %6, %1 \n\t"
+- "lxvd2x 35, %7, %1 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t" // load y
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "addi %1, %1, 64 \n\t"
+- "addi %2, %2, 64 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "xvmuldp 48, 32, 36 \n\t" // c * x
+- "xvmuldp 49, 33, 36 \n\t"
+- "xvmuldp 50, 34, 36 \n\t"
+- "xvmuldp 51, 35, 36 \n\t"
+-
+- "xvmuldp 56, 40, 36 \n\t" // c * y
+- "xvmuldp 57, 41, 36 \n\t"
+- "xvmuldp 58, 42, 36 \n\t"
+- "xvmuldp 59, 43, 36 \n\t"
+-
+- "xvmuldp 52, 32, 37 \n\t" // s * x
+- "xvmuldp 53, 33, 37 \n\t"
+-
+- "lxvd2x 32, 0, %1 \n\t" // load x
+- "lxvd2x 33, %5, %1 \n\t"
+-
+- "xvmuldp 54, 34, 37 \n\t"
+- "xvmuldp 55, 35, 37 \n\t"
+-
+- "lxvd2x 34, %6, %1 \n\t"
+- "lxvd2x 35, %7, %1 \n\t"
+-
+- "xvmuldp 60, 40, 37 \n\t" // s * y
+- "xvmuldp 61, 41, 37 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t" // load y
+- "lxvd2x 41, %5, %2 \n\t"
+-
+- "xvmuldp 62, 42, 37 \n\t"
+- "xvmuldp 63, 43, 37 \n\t"
+-
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "xvadddp 48, 48 , 60 \n\t" // c * x + s * y
+- "xvadddp 49, 49 , 61 \n\t" // c * x + s * y
+-
+- "addi %1, %1, 64 \n\t"
+- "addi %2, %2, 64 \n\t"
+-
+- "xvadddp 50, 50 , 62 \n\t" // c * x + s * y
+- "xvadddp 51, 51 , 63 \n\t" // c * x + s * y
+-
+- "xvsubdp 56, 56 , 52 \n\t" // c * y - s * x
+- "xvsubdp 57, 57 , 53 \n\t" // c * y - s * x
+- "xvsubdp 58, 58 , 54 \n\t" // c * y - s * x
+- "xvsubdp 59, 59 , 55 \n\t" // c * y - s * x
+-
+- "stxvd2x 48, 0, %8 \n\t" // store x
+- "stxvd2x 49, %5, %8 \n\t"
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
+-
+- "stxvd2x 56, 0, %9 \n\t" // store y
+- "stxvd2x 57, %5, %9 \n\t"
+- "stxvd2x 58, %6, %9 \n\t"
+- "stxvd2x 59, %7, %9 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+- "addi %9, %9, 64 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmuldp 48, 32, 36 \n\t" // c * x
+- "xvmuldp 49, 33, 36 \n\t"
+- "xvmuldp 50, 34, 36 \n\t"
+- "xvmuldp 51, 35, 36 \n\t"
+-
+- "xvmuldp 56, 40, 36 \n\t" // c * y
+- "xvmuldp 57, 41, 36 \n\t"
+- "xvmuldp 58, 42, 36 \n\t"
+- "xvmuldp 59, 43, 36 \n\t"
+-
+- "xvmuldp 52, 32, 37 \n\t" // s * x
+- "xvmuldp 53, 33, 37 \n\t"
+- "xvmuldp 54, 34, 37 \n\t"
+- "xvmuldp 55, 35, 37 \n\t"
+-
+- "xvmuldp 60, 40, 37 \n\t" // s * y
+- "xvmuldp 61, 41, 37 \n\t"
+- "xvmuldp 62, 42, 37 \n\t"
+- "xvmuldp 63, 43, 37 \n\t"
+-
+- "xvadddp 48, 48 , 60 \n\t" // c * x + s * y
+- "xvadddp 49, 49 , 61 \n\t" // c * x + s * y
+- "xvadddp 50, 50 , 62 \n\t" // c * x + s * y
+- "xvadddp 51, 51 , 63 \n\t" // c * x + s * y
+-
+- "xvsubdp 56, 56 , 52 \n\t" // c * y - s * x
+- "xvsubdp 57, 57 , 53 \n\t" // c * y - s * x
+- "xvsubdp 58, 58 , 54 \n\t" // c * y - s * x
+- "xvsubdp 59, 59 , 55 \n\t" // c * y - s * x
+-
+- "stxvd2x 48, 0, %8 \n\t" // store x
+- "stxvd2x 49, %5, %8 \n\t"
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
++ "lxvd2x 32, 0, %3 \n\t" // load x
++ "lxvd2x 33, %15, %3 \n\t"
++ "lxvd2x 34, %16, %3 \n\t"
++ "lxvd2x 35, %17, %3 \n\t"
+
+- "stxvd2x 56, 0, %9 \n\t" // store y
+- "stxvd2x 57, %5, %9 \n\t"
+- "stxvd2x 58, %6, %9 \n\t"
+- "stxvd2x 59, %7, %9 \n\t"
++ "lxvd2x 48, 0, %4 \n\t" // load y
++ "lxvd2x 49, %15, %4 \n\t"
++ "lxvd2x 50, %16, %4 \n\t"
++ "lxvd2x 51, %17, %4 \n\t"
+
++ "addi %3, %3, 64 \n\t"
++ "addi %4, %4, 64 \n\t"
+
++ "addic. %2, %2, -8 \n\t"
++ "ble 2f \n\t"
+
+- :
+- :
+- "r" (i), // 0
+- "r" (x1), // 1
+- "r" (y1), // 2
+- "r" (c), // 3
+- "r" (s), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (x2), // 8
+- "r" (y2) // 9
+- : "cr0", "%0", "%1" , "%2", "%8", "%9", "memory"
+- );
++ ".p2align 5 \n"
++ "1: \n\t"
+
+-}
++ "xvmuldp 40, 32, 36 \n\t" // c * x
++ "xvmuldp 41, 33, 36 \n\t"
++ "xvmuldp 42, 34, 36 \n\t"
++ "xvmuldp 43, 35, 36 \n\t"
+
++ "xvmuldp %x5, 48, 36 \n\t" // c * y
++ "xvmuldp %x6, 49, 36 \n\t"
++ "xvmuldp %x7, 50, 36 \n\t"
++ "xvmuldp %x8, 51, 36 \n\t"
+
++ "xvmuldp 44, 32, 37 \n\t" // s * x
++ "xvmuldp 45, 33, 37 \n\t"
++
++ "lxvd2x 32, 0, %3 \n\t" // load x
++ "lxvd2x 33, %15, %3 \n\t"
++
++ "xvmuldp 46, 34, 37 \n\t"
++ "xvmuldp 47, 35, 37 \n\t"
++
++ "lxvd2x 34, %16, %3 \n\t"
++ "lxvd2x 35, %17, %3 \n\t"
++
++ "xvmuldp %x9, 48, 37 \n\t" // s * y
++ "xvmuldp %x10, 49, 37 \n\t"
++
++ "lxvd2x 48, 0, %4 \n\t" // load y
++ "lxvd2x 49, %15, %4 \n\t"
++
++ "xvmuldp %x11, 50, 37 \n\t"
++ "xvmuldp %x12, 51, 37 \n\t"
++
++ "lxvd2x 50, %16, %4 \n\t"
++ "lxvd2x 51, %17, %4 \n\t"
++
++ "xvadddp 40, 40, %x9 \n\t" // c * x + s * y
++ "xvadddp 41, 41, %x10 \n\t" // c * x + s * y
++
++ "addi %3, %3, -64 \n\t"
++ "addi %4, %4, -64 \n\t"
++
++ "xvadddp 42, 42, %x11 \n\t" // c * x + s * y
++ "xvadddp 43, 43, %x12 \n\t" // c * x + s * y
++
++ "xvsubdp %x5, %x5, 44 \n\t" // c * y - s * x
++ "xvsubdp %x6, %x6, 45 \n\t" // c * y - s * x
++ "xvsubdp %x7, %x7, 46 \n\t" // c * y - s * x
++ "xvsubdp %x8, %x8, 47 \n\t" // c * y - s * x
++
++ "stxvd2x 40, 0, %3 \n\t" // store x
++ "stxvd2x 41, %15, %3 \n\t"
++ "stxvd2x 42, %16, %3 \n\t"
++ "stxvd2x 43, %17, %3 \n\t"
++
++ "stxvd2x %x5, 0, %4 \n\t" // store y
++ "stxvd2x %x6, %15, %4 \n\t"
++ "stxvd2x %x7, %16, %4 \n\t"
++ "stxvd2x %x8, %17, %4 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %4, %4, 128 \n\t"
++
++ "addic. %2, %2, -8 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmuldp 40, 32, 36 \n\t" // c * x
++ "xvmuldp 41, 33, 36 \n\t"
++ "xvmuldp 42, 34, 36 \n\t"
++ "xvmuldp 43, 35, 36 \n\t"
++
++ "xvmuldp %x5, 48, 36 \n\t" // c * y
++ "xvmuldp %x6, 49, 36 \n\t"
++ "xvmuldp %x7, 50, 36 \n\t"
++ "xvmuldp %x8, 51, 36 \n\t"
++
++ "xvmuldp 44, 32, 37 \n\t" // s * x
++ "xvmuldp 45, 33, 37 \n\t"
++ "xvmuldp 46, 34, 37 \n\t"
++ "xvmuldp 47, 35, 37 \n\t"
++
++ "xvmuldp %x9, 48, 37 \n\t" // s * y
++ "xvmuldp %x10, 49, 37 \n\t"
++ "xvmuldp %x11, 50, 37 \n\t"
++ "xvmuldp %x12, 51, 37 \n\t"
++
++ "addi %3, %3, -64 \n\t"
++ "addi %4, %4, -64 \n\t"
++
++ "xvadddp 40, 40, %x9 \n\t" // c * x + s * y
++ "xvadddp 41, 41, %x10 \n\t" // c * x + s * y
++ "xvadddp 42, 42, %x11 \n\t" // c * x + s * y
++ "xvadddp 43, 43, %x12 \n\t" // c * x + s * y
++
++ "xvsubdp %x5, %x5, 44 \n\t" // c * y - s * x
++ "xvsubdp %x6, %x6, 45 \n\t" // c * y - s * x
++ "xvsubdp %x7, %x7, 46 \n\t" // c * y - s * x
++ "xvsubdp %x8, %x8, 47 \n\t" // c * y - s * x
++
++ "stxvd2x 40, 0, %3 \n\t" // store x
++ "stxvd2x 41, %15, %3 \n\t"
++ "stxvd2x 42, %16, %3 \n\t"
++ "stxvd2x 43, %17, %3 \n\t"
++
++ "stxvd2x %x5, 0, %4 \n\t" // store y
++ "stxvd2x %x6, %15, %4 \n\t"
++ "stxvd2x %x7, %16, %4 \n\t"
++ "stxvd2x %x8, %17, %4 \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 c=%13 s=%14 o16=%15 o32=%16 o48=%17\n"
++ "#t0=%x5 t1=%x6 t2=%x7 t3=%x8 t4=%x9 t5=%x10 t6=%x11 t7=%x12"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y), // 4
++ "=wa" (t0), // 5
++ "=wa" (t1), // 6
++ "=wa" (t2), // 7
++ "=wa" (t3), // 8
++ "=wa" (t4), // 9
++ "=wa" (t5), // 10
++ "=wa" (t6), // 11
++ "=wa" (t7) // 12
++ :
++ "d" (c), // 13
++ "d" (s), // 14
++ "b" (16), // 15
++ "b" (32), // 16
++ "b" (48) // 17
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++}
+diff --git a/kernel/power/dscal.c b/kernel/power/dscal.c
+index c62a56315..f32dc4bad 100644
+--- a/kernel/power/dscal.c
++++ b/kernel/power/dscal.c
+@@ -41,11 +41,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #if !defined(HAVE_KERNEL_8)
+
+-static void dscal_kernel_8( BLASLONG n, FLOAT *da , FLOAT *x )
++static void dscal_kernel_8 (BLASLONG n, FLOAT *x, FLOAT alpha)
+ {
+
+ BLASLONG i;
+- FLOAT alpha = *da;
+
+ for( i=0; i<n; i+=8 )
+ {
+@@ -62,7 +61,7 @@ static void dscal_kernel_8( BLASLONG n, FLOAT *da , FLOAT *x )
+
+ }
+
+-static void dscal_kernel_8_zero( BLASLONG n, FLOAT *da , FLOAT *x )
++static void dscal_kernel_8_zero (BLASLONG n, FLOAT *x)
+ {
+
+ BLASLONG i;
+@@ -102,10 +101,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ BLASLONG n1 = n & -16;
+ if ( n1 > 0 )
+ {
+- FLOAT alpha[2];
+- alpha[0]=da;
+- alpha[1]=da;
+- dscal_kernel_8_zero(n1 , alpha , x);
++ dscal_kernel_8_zero(n1, x);
+ j=n1;
+ }
+
+@@ -123,10 +119,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ BLASLONG n1 = n & -16;
+ if ( n1 > 0 )
+ {
+- FLOAT alpha[2];
+- alpha[0]=da;
+- alpha[1]=da;
+- dscal_kernel_8(n1 , alpha , x);
++ dscal_kernel_8(n1, x, da);
+ j=n1;
+ }
+ while(j < n)
+diff --git a/kernel/power/dscal_microk_power8.c b/kernel/power/dscal_microk_power8.c
+index d90c3d80c..04898eb3d 100644
+--- a/kernel/power/dscal_microk_power8.c
++++ b/kernel/power/dscal_microk_power8.c
+@@ -35,185 +35,149 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_8 1
+
+-static void dscal_kernel_8( BLASLONG n, FLOAT *alpha, FLOAT *x) __attribute__ ((noinline));
+-
+-static void dscal_kernel_8( BLASLONG n, FLOAT *alpha, FLOAT *x)
++static void dscal_kernel_8 (long n, double *x, double alpha)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *x2=x+1;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxsdx 33, 0, %3 \n\t"
+- "xxspltd 32, 33, 0 \n\t"
+- "addi %1, %1, -8 \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "xvmuldp 48, 40, 32 \n\t"
+- "xvmuldp 49, 41, 32 \n\t"
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "xvmuldp 50, 42, 32 \n\t"
+- "xvmuldp 51, 43, 32 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "xvmuldp 52, 44, 32 \n\t"
+- "xvmuldp 53, 45, 32 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "xvmuldp 54, 46, 32 \n\t"
+- "xvmuldp 55, 47, 32 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "stxvd2x 48, 0, %1 \n\t"
+- "stxvd2x 49, %5, %1 \n\t"
+- "stxvd2x 50, %6, %1 \n\t"
+- "stxvd2x 51, %7, %1 \n\t"
+- "stxvd2x 52, %8, %1 \n\t"
+- "stxvd2x 53, %9, %1 \n\t"
+- "stxvd2x 54, %10, %1 \n\t"
+- "stxvd2x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmuldp 48, 40, 32 \n\t"
+- "xvmuldp 49, 41, 32 \n\t"
+- "xvmuldp 50, 42, 32 \n\t"
+- "xvmuldp 51, 43, 32 \n\t"
+- "xvmuldp 52, 44, 32 \n\t"
+- "xvmuldp 53, 45, 32 \n\t"
+- "xvmuldp 54, 46, 32 \n\t"
+- "xvmuldp 55, 47, 32 \n\t"
+-
+- "stxvd2x 48, 0, %1 \n\t"
+- "stxvd2x 49, %5, %1 \n\t"
+- "stxvd2x 50, %6, %1 \n\t"
+- "stxvd2x 51, %7, %1 \n\t"
+- "stxvd2x 52, %8, %1 \n\t"
+- "stxvd2x 53, %9, %1 \n\t"
+- "stxvd2x 54, %10, %1 \n\t"
+- "stxvd2x 55, %11, %1 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (x2), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
+-static void dscal_kernel_8_zero( BLASLONG n, FLOAT *alpha, FLOAT *x) __attribute__ ((noinline));
+-
+-static void dscal_kernel_8_zero( BLASLONG n, FLOAT *alpha, FLOAT *x)
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xxspltd %x3, %x3, 0 \n\t"
++
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %4, %2 \n\t"
++ "lxvd2x 34, %5, %2 \n\t"
++ "lxvd2x 35, %6, %2 \n\t"
++ "lxvd2x 36, %7, %2 \n\t"
++ "lxvd2x 37, %8, %2 \n\t"
++ "lxvd2x 38, %9, %2 \n\t"
++ "lxvd2x 39, %10, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmuldp 40, 32, %x3 \n\t"
++ "xvmuldp 41, 33, %x3 \n\t"
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %4, %2 \n\t"
++ "xvmuldp 42, 34, %x3 \n\t"
++ "xvmuldp 43, 35, %x3 \n\t"
++ "lxvd2x 34, %5, %2 \n\t"
++ "lxvd2x 35, %6, %2 \n\t"
++ "xvmuldp 44, 36, %x3 \n\t"
++ "xvmuldp 45, 37, %x3 \n\t"
++ "lxvd2x 36, %7, %2 \n\t"
++ "lxvd2x 37, %8, %2 \n\t"
++ "xvmuldp 46, 38, %x3 \n\t"
++ "xvmuldp 47, 39, %x3 \n\t"
++ "lxvd2x 38, %9, %2 \n\t"
++ "lxvd2x 39, %10, %2 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "stxvd2x 40, 0, %2 \n\t"
++ "stxvd2x 41, %4, %2 \n\t"
++ "stxvd2x 42, %5, %2 \n\t"
++ "stxvd2x 43, %6, %2 \n\t"
++ "stxvd2x 44, %7, %2 \n\t"
++ "stxvd2x 45, %8, %2 \n\t"
++ "stxvd2x 46, %9, %2 \n\t"
++ "stxvd2x 47, %10, %2 \n\t"
++
++ "addi %2, %2, 256 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmuldp 40, 32, %x3 \n\t"
++ "xvmuldp 41, 33, %x3 \n\t"
++ "xvmuldp 42, 34, %x3 \n\t"
++ "xvmuldp 43, 35, %x3 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "xvmuldp 44, 36, %x3 \n\t"
++ "xvmuldp 45, 37, %x3 \n\t"
++ "xvmuldp 46, 38, %x3 \n\t"
++ "xvmuldp 47, 39, %x3 \n\t"
++
++ "stxvd2x 40, 0, %2 \n\t"
++ "stxvd2x 41, %4, %2 \n\t"
++ "stxvd2x 42, %5, %2 \n\t"
++ "stxvd2x 43, %6, %2 \n\t"
++ "stxvd2x 44, %7, %2 \n\t"
++ "stxvd2x 45, %8, %2 \n\t"
++ "stxvd2x 46, %9, %2 \n\t"
++ "stxvd2x 47, %10, %2 \n"
++
++ "#n=%1 alpha=%3 x=%0=%2 o16=%4 o32=%5 o48=%6 o64=%7 o80=%8 o96=%9 o112=%10"
++ :
++ "+m" (*x),
++ "+r" (n), // 1
++ "+b" (x) // 2
++ :
++ "d" (alpha), // 3
++ "b" (16), // 4
++ "b" (32), // 5
++ "b" (48), // 6
++ "b" (64), // 7
++ "b" (80), // 8
++ "b" (96), // 9
++ "b" (112) // 10
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
++
++
++static void dscal_kernel_8_zero (long n, double *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *x2=x+1;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "xxlxor 32 , 32 , 32 \n\t"
+- "addi %1, %1, -8 \n\t"
+-
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvd2x 32, 0, %1 \n\t"
+- "stxvd2x 32, %5, %1 \n\t"
+- "stxvd2x 32, %6, %1 \n\t"
+- "stxvd2x 32, %7, %1 \n\t"
+- "stxvd2x 32, %8, %1 \n\t"
+- "stxvd2x 32, %9, %1 \n\t"
+- "stxvd2x 32, %10, %1 \n\t"
+- "stxvd2x 32, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (x2), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __vector double t0;
++
++ __asm__
++ (
++ "xxlxor %x3, %x3, %x3 \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvd2x %x3, 0, %2 \n\t"
++ "stxvd2x %x3, %4, %2 \n\t"
++ "stxvd2x %x3, %5, %2 \n\t"
++ "stxvd2x %x3, %6, %2 \n\t"
++ "stxvd2x %x3, %7, %2 \n\t"
++ "stxvd2x %x3, %8, %2 \n\t"
++ "stxvd2x %x3, %9, %2 \n\t"
++ "stxvd2x %x3, %10, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "bgt 1b \n"
++
++ "#n=%1 x=%0=%2 t0=%x3 o16=%4 o32=%5 o48=%6 o64=%7 o80=%8 o96=%9 o112=%10"
++ :
++ "=m" (*x),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0) // 3
++ :
++ "b" (16), // 4
++ "b" (32), // 5
++ "b" (48), // 6
++ "b" (64), // 7
++ "b" (80), // 8
++ "b" (96), // 9
++ "b" (112) // 10
++ :
++ "cr0"
++ );
++}
+diff --git a/kernel/power/dswap_microk_power8.c b/kernel/power/dswap_microk_power8.c
+index 77747c3b9..31eff3449 100644
+--- a/kernel/power/dswap_microk_power8.c
++++ b/kernel/power/dswap_microk_power8.c
+@@ -35,146 +35,124 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void dswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void dswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void dswap_kernel_32 (long n, double *x, double *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "addi %3, %3, -8 \n\t"
+- "addi %4, %4, -8 \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "lxvd2x 32, 0, %2 \n\t"
+- "lxvd2x 33, %5, %2 \n\t"
+- "lxvd2x 34, %6, %2 \n\t"
+- "lxvd2x 35, %7, %2 \n\t"
+- "lxvd2x 36, %8, %2 \n\t"
+- "lxvd2x 37, %9, %2 \n\t"
+- "lxvd2x 38, %10, %2 \n\t"
+- "lxvd2x 39, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 48, 0, %1 \n\t"
+- "lxvd2x 49, %5, %1 \n\t"
+- "lxvd2x 50, %6, %1 \n\t"
+- "lxvd2x 51, %7, %1 \n\t"
+- "lxvd2x 52, %8, %1 \n\t"
+- "lxvd2x 53, %9, %1 \n\t"
+- "lxvd2x 54, %10, %1 \n\t"
+- "lxvd2x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "lxvd2x 56, 0, %1 \n\t"
+- "lxvd2x 57, %5, %1 \n\t"
+- "lxvd2x 58, %6, %1 \n\t"
+- "lxvd2x 59, %7, %1 \n\t"
+- "lxvd2x 60, %8, %1 \n\t"
+- "lxvd2x 61, %9, %1 \n\t"
+- "lxvd2x 62, %10, %1 \n\t"
+- "lxvd2x 63, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvd2x 32, 0, %3 \n\t"
+- "stxvd2x 33, %5, %3 \n\t"
+- "stxvd2x 34, %6, %3 \n\t"
+- "stxvd2x 35, %7, %3 \n\t"
+- "stxvd2x 36, %8, %3 \n\t"
+- "stxvd2x 37, %9, %3 \n\t"
+- "stxvd2x 38, %10, %3 \n\t"
+- "stxvd2x 39, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvd2x 40, 0, %3 \n\t"
+- "stxvd2x 41, %5, %3 \n\t"
+- "stxvd2x 42, %6, %3 \n\t"
+- "stxvd2x 43, %7, %3 \n\t"
+- "stxvd2x 44, %8, %3 \n\t"
+- "stxvd2x 45, %9, %3 \n\t"
+- "stxvd2x 46, %10, %3 \n\t"
+- "stxvd2x 47, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvd2x 48, 0, %4 \n\t"
+- "stxvd2x 49, %5, %4 \n\t"
+- "stxvd2x 50, %6, %4 \n\t"
+- "stxvd2x 51, %7, %4 \n\t"
+- "stxvd2x 52, %8, %4 \n\t"
+- "stxvd2x 53, %9, %4 \n\t"
+- "stxvd2x 54, %10, %4 \n\t"
+- "stxvd2x 55, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "stxvd2x 56, 0, %4 \n\t"
+- "stxvd2x 57, %5, %4 \n\t"
+- "stxvd2x 58, %6, %4 \n\t"
+- "stxvd2x 59, %7, %4 \n\t"
+- "stxvd2x 60, %8, %4 \n\t"
+- "stxvd2x 61, %9, %4 \n\t"
+- "stxvd2x 62, %10, %4 \n\t"
+- "stxvd2x 63, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (y2), // 3
+- "r" (x2), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "%3", "%4", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "lxvd2x 32, 0, %4 \n\t"
++ "lxvd2x 33, %5, %4 \n\t"
++ "lxvd2x 34, %6, %4 \n\t"
++ "lxvd2x 35, %7, %4 \n\t"
++ "lxvd2x 36, %8, %4 \n\t"
++ "lxvd2x 37, %9, %4 \n\t"
++ "lxvd2x 38, %10, %4 \n\t"
++ "lxvd2x 39, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "lxvd2x 40, 0, %4 \n\t"
++ "lxvd2x 41, %5, %4 \n\t"
++ "lxvd2x 42, %6, %4 \n\t"
++ "lxvd2x 43, %7, %4 \n\t"
++ "lxvd2x 44, %8, %4 \n\t"
++ "lxvd2x 45, %9, %4 \n\t"
++ "lxvd2x 46, %10, %4 \n\t"
++ "lxvd2x 47, %11, %4 \n\t"
++
++ "addi %4, %4, -128 \n\t"
++
++ "lxvd2x 48, 0, %3 \n\t"
++ "lxvd2x 49, %5, %3 \n\t"
++ "lxvd2x 50, %6, %3 \n\t"
++ "lxvd2x 51, %7, %3 \n\t"
++ "lxvd2x 0, %8, %3 \n\t"
++ "lxvd2x 1, %9, %3 \n\t"
++ "lxvd2x 2, %10, %3 \n\t"
++ "lxvd2x 3, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "lxvd2x 4, 0, %3 \n\t"
++ "lxvd2x 5, %5, %3 \n\t"
++ "lxvd2x 6, %6, %3 \n\t"
++ "lxvd2x 7, %7, %3 \n\t"
++ "lxvd2x 8, %8, %3 \n\t"
++ "lxvd2x 9, %9, %3 \n\t"
++ "lxvd2x 10, %10, %3 \n\t"
++ "lxvd2x 11, %11, %3 \n\t"
++
++ "addi %3, %3, -128 \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 48, 0, %4 \n\t"
++ "stxvd2x 49, %5, %4 \n\t"
++ "stxvd2x 50, %6, %4 \n\t"
++ "stxvd2x 51, %7, %4 \n\t"
++ "stxvd2x 0, %8, %4 \n\t"
++ "stxvd2x 1, %9, %4 \n\t"
++ "stxvd2x 2, %10, %4 \n\t"
++ "stxvd2x 3, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "stxvd2x 4, 0, %4 \n\t"
++ "stxvd2x 5, %5, %4 \n\t"
++ "stxvd2x 6, %6, %4 \n\t"
++ "stxvd2x 7, %7, %4 \n\t"
++ "stxvd2x 8, %8, %4 \n\t"
++ "stxvd2x 9, %9, %4 \n\t"
++ "stxvd2x 10, %10, %4 \n\t"
++ "stxvd2x 11, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "addic. %2, %2, -32 \n\t"
++ "bgt 1b \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y) // 4
++ :
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51","vs0","vs1","vs2","vs3",
++ "vs4","vs5","vs6","vs7","vs8","vs9","vs10","vs11"
++ );
++}
+diff --git a/kernel/power/sasum.c b/kernel/power/sasum.c
+index 43311f2ba..fb10b1d27 100644
+--- a/kernel/power/sasum.c
++++ b/kernel/power/sasum.c
+@@ -38,7 +38,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #if defined(DOUBLE)
+
+-#define ABS fabs
++#error supports float only
+
+ #else
+
+@@ -53,7 +53,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_32
+
+-static void sasum_kernel_32(BLASLONG n, FLOAT *x1, FLOAT *svec)
++static FLOAT sasum_kernel_32(BLASLONG n, FLOAT *x1)
+ {
+
+ BLASLONG i=0;
+@@ -92,11 +92,7 @@ static void sasum_kernel_32(BLASLONG n, FLOAT *x1, FLOAT *svec)
+
+ }
+
+- svec[0] = sum0+sum1+sum2+sum3;
+- svec[1] = 0.0;
+- svec[2] = 0.0;
+- svec[3] = 0.0;
+-
++ return sum0+sum1+sum2+sum3;
+ }
+
+ #endif
+@@ -105,7 +101,6 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ {
+ BLASLONG i=0;
+ FLOAT sumf = 0.0;
+- FLOAT svec[4] __attribute__ ((aligned (16)));;
+ BLASLONG n1;
+
+ if (n <= 0 || inc_x <= 0) return(sumf);
+@@ -117,8 +112,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ if ( n1 > 0 )
+ {
+
+- sasum_kernel_32(n1, x, svec);
+- sumf = svec[0] + svec[1]+svec[2]+svec[3];
++ sumf = sasum_kernel_32(n1, x);
+ i=n1;
+ }
+
+diff --git a/kernel/power/sasum_microk_power8.c b/kernel/power/sasum_microk_power8.c
+index 847fffe04..25a969d62 100644
+--- a/kernel/power/sasum_microk_power8.c
++++ b/kernel/power/sasum_microk_power8.c
+@@ -34,144 +34,145 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_32 1
+-static void sasum_kernel_32( BLASLONG n, FLOAT *x, FLOAT *svec) __attribute__ ((noinline));
+
+-static void sasum_kernel_32( BLASLONG n, FLOAT *x, FLOAT *svec)
++static float sasum_kernel_32 (long n, float *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xvabssp 48, 40 \n\t"
+- "xvabssp 49, 41 \n\t"
+- "xvabssp 50, 42 \n\t"
+- "xvabssp 51, 43 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+-
+- "xvabssp 52, 44 \n\t"
+- "xvabssp 53, 45 \n\t"
+-
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+-
+- "xvabssp 54, 46 \n\t"
+- "xvabssp 55, 47 \n\t"
+-
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+-
+- "xvaddsp 32, 32, 48 \n\t"
+- "xvaddsp 33, 33, 49 \n\t"
+-
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "xvaddsp 34, 34, 50 \n\t"
+- "xvaddsp 35, 35, 51 \n\t"
+- "addi %2, %2, 128 \n\t"
+- "xvaddsp 36, 36, 52 \n\t"
+- "xvaddsp 37, 37, 53 \n\t"
+- "addic. %0 , %0 , -32 \n\t"
+- "xvaddsp 38, 38, 54 \n\t"
+- "xvaddsp 39, 39, 55 \n\t"
+-
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+-
+- "xvabssp 48, 40 \n\t"
+- "xvabssp 49, 41 \n\t"
+- "xvabssp 50, 42 \n\t"
+- "xvabssp 51, 43 \n\t"
+- "xvabssp 52, 44 \n\t"
+- "xvabssp 53, 45 \n\t"
+- "xvabssp 54, 46 \n\t"
+- "xvabssp 55, 47 \n\t"
+-
+- "xvaddsp 32, 32, 48 \n\t"
+- "xvaddsp 33, 33, 49 \n\t"
+- "xvaddsp 34, 34, 50 \n\t"
+- "xvaddsp 35, 35, 51 \n\t"
+- "xvaddsp 36, 36, 52 \n\t"
+- "xvaddsp 37, 37, 53 \n\t"
+- "xvaddsp 38, 38, 54 \n\t"
+- "xvaddsp 39, 39, 55 \n\t"
+-
+- "xvaddsp 32, 32, 33 \n\t"
+- "xvaddsp 34, 34, 35 \n\t"
+- "xvaddsp 36, 36, 37 \n\t"
+- "xvaddsp 38, 38, 39 \n\t"
+-
+- "xvaddsp 32, 32, 34 \n\t"
+- "xvaddsp 36, 36, 38 \n\t"
+-
+- "xvaddsp 32, 32, 36 \n\t"
+-
+-
+- "stxvw4x 32, 0, %3 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (svec), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2", "memory"
+- );
+-
+-}
+-
+-
++ float sum;
++ __vector float t0;
++ __vector float t1;
++ __vector float t2;
++ __vector float t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %8, %2 \n\t"
++ "lxvw4x 42, %9, %2 \n\t"
++ "lxvw4x 43, %10, %2 \n\t"
++ "lxvw4x 44, %11, %2 \n\t"
++ "lxvw4x 45, %12, %2 \n\t"
++ "lxvw4x 46, %13, %2 \n\t"
++ "lxvw4x 47, %14, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvabssp 48, 40 \n\t"
++ "xvabssp 49, 41 \n\t"
++ "xvabssp 50, 42 \n\t"
++ "xvabssp 51, 43 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %8, %2 \n\t"
++
++ "xvabssp %x3, 44 \n\t"
++ "xvabssp %x4, 45 \n\t"
++
++ "lxvw4x 42, %9, %2 \n\t"
++ "lxvw4x 43, %10, %2 \n\t"
++
++ "xvabssp %x5, 46 \n\t"
++ "xvabssp %x6, 47 \n\t"
++
++ "lxvw4x 44, %11, %2 \n\t"
++ "lxvw4x 45, %12, %2 \n\t"
++
++ "xvaddsp 32, 32, 48 \n\t"
++ "xvaddsp 33, 33, 49 \n\t"
++
++ "lxvw4x 46, %13, %2 \n\t"
++ "lxvw4x 47, %14, %2 \n\t"
++
++ "xvaddsp 34, 34, 50 \n\t"
++ "xvaddsp 35, 35, 51 \n\t"
++ "addi %2, %2, 128 \n\t"
++ "xvaddsp 36, 36, %x3 \n\t"
++ "xvaddsp 37, 37, %x4 \n\t"
++ "addic. %1, %1, -32 \n\t"
++ "xvaddsp 38, 38, %x5 \n\t"
++ "xvaddsp 39, 39, %x6 \n\t"
++
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvabssp 48, 40 \n\t"
++ "xvabssp 49, 41 \n\t"
++ "xvabssp 50, 42 \n\t"
++ "xvabssp 51, 43 \n\t"
++ "xvabssp %x3, 44 \n\t"
++ "xvabssp %x4, 45 \n\t"
++ "xvabssp %x5, 46 \n\t"
++ "xvabssp %x6, 47 \n\t"
++
++ "xvaddsp 32, 32, 48 \n\t"
++ "xvaddsp 33, 33, 49 \n\t"
++ "xvaddsp 34, 34, 50 \n\t"
++ "xvaddsp 35, 35, 51 \n\t"
++ "xvaddsp 36, 36, %x3 \n\t"
++ "xvaddsp 37, 37, %x4 \n\t"
++ "xvaddsp 38, 38, %x5 \n\t"
++ "xvaddsp 39, 39, %x6 \n\t"
++
++ "xvaddsp 32, 32, 33 \n\t"
++ "xvaddsp 34, 34, 35 \n\t"
++ "xvaddsp 36, 36, 37 \n\t"
++ "xvaddsp 38, 38, 39 \n\t"
++
++ "xvaddsp 32, 32, 34 \n\t"
++ "xvaddsp 36, 36, 38 \n\t"
++
++ "xvaddsp 32, 32, 36 \n\t"
++
++ "xxsldwi 33, 32, 32, 2 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xxsldwi 33, 32, 32, 1 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xscvspdp %0, 32 \n"
++
++ "#n=%1 x=%3=%2 sum=%0 o16=%8 o32=%9 o48=%10 o64=%11 o80=%12 o96=%13 o112=%14\n"
++ "#t0=%x3 t1=%x4 t2=%x5 t3=%x6"
++ :
++ "=f" (sum), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0), // 3
++ "=wa" (t1), // 4
++ "=wa" (t2), // 5
++ "=wa" (t3) // 6
++ :
++ "m" (*x),
++ "b" (16), // 8
++ "b" (32), // 9
++ "b" (48), // 10
++ "b" (64), // 11
++ "b" (80), // 12
++ "b" (96), // 13
++ "b" (112) // 14
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return sum;
++}
+diff --git a/kernel/power/scopy_microk_power8.c b/kernel/power/scopy_microk_power8.c
+index 2e08e3561..444a6d4d5 100644
+--- a/kernel/power/scopy_microk_power8.c
++++ b/kernel/power/scopy_microk_power8.c
+@@ -35,97 +35,78 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void scopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void scopy_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void scopy_kernel_32 (long n, float *x, float *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvw4x 40, 0, %1 \n\t"
+- "stxvw4x 41, %5, %1 \n\t"
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "stxvw4x 42, %6, %1 \n\t"
+- "stxvw4x 43, %7, %1 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "stxvw4x 44, %8, %1 \n\t"
+- "stxvw4x 45, %9, %1 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "stxvw4x 46, %10, %1 \n\t"
+- "stxvw4x 47, %11, %1 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "stxvw4x 40, 0, %1 \n\t"
+- "stxvw4x 41, %5, %1 \n\t"
+- "stxvw4x 42, %6, %1 \n\t"
+- "stxvw4x 43, %7, %1 \n\t"
+- "stxvw4x 44, %8, %1 \n\t"
+- "stxvw4x 45, %9, %1 \n\t"
+- "stxvw4x 46, %10, %1 \n\t"
+- "stxvw4x 47, %11, %1 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %5, %2 \n\t"
++ "lxvw4x 42, %6, %2 \n\t"
++ "lxvw4x 43, %7, %2 \n\t"
++ "lxvw4x 44, %8, %2 \n\t"
++ "lxvw4x 45, %9, %2 \n\t"
++ "lxvw4x 46, %10, %2 \n\t"
++ "lxvw4x 47, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvw4x 40, 0, %3 \n\t"
++ "stxvw4x 41, %5, %3 \n\t"
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 41, %5, %2 \n\t"
++ "stxvw4x 42, %6, %3 \n\t"
++ "stxvw4x 43, %7, %3 \n\t"
++ "lxvw4x 42, %6, %2 \n\t"
++ "lxvw4x 43, %7, %2 \n\t"
++ "stxvw4x 44, %8, %3 \n\t"
++ "stxvw4x 45, %9, %3 \n\t"
++ "lxvw4x 44, %8, %2 \n\t"
++ "lxvw4x 45, %9, %2 \n\t"
++ "stxvw4x 46, %10, %3 \n\t"
++ "stxvw4x 47, %11, %3 \n\t"
++ "lxvw4x 46, %10, %2 \n\t"
++ "lxvw4x 47, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "stxvw4x 40, 0, %3 \n\t"
++ "stxvw4x 41, %5, %3 \n\t"
++ "stxvw4x 42, %6, %3 \n\t"
++ "stxvw4x 43, %7, %3 \n\t"
++ "stxvw4x 44, %8, %3 \n\t"
++ "stxvw4x 45, %9, %3 \n\t"
++ "stxvw4x 46, %10, %3 \n\t"
++ "stxvw4x 47, %11, %3 \n"
++
++ "#n=%1 x=%4=%2 y=%0=%3 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "=m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y) // 3
++ :
++ "m" (*x),
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/sdot.c b/kernel/power/sdot.c
+index 52fb1fe24..31f473485 100644
+--- a/kernel/power/sdot.c
++++ b/kernel/power/sdot.c
+@@ -42,7 +42,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_16
+
+-static void sdot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d)
++static FLOAT sdot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y)
+ {
+ BLASLONG register i = 0;
+ FLOAT dot = 0.0;
+@@ -61,8 +61,7 @@ static void sdot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d)
+ i+=8 ;
+
+ }
+- *d += dot;
+-
++ return dot;
+ }
+
+ #endif
+@@ -82,8 +81,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y)
+ BLASLONG n1 = n & -32;
+
+ if ( n1 )
+- sdot_kernel_16(n1, x, y , &dot );
+-
++ dot = sdot_kernel_16(n1, x, y);
+
+ i = n1;
+ while(i < n)
+diff --git a/kernel/power/sdot_microk_power8.c b/kernel/power/sdot_microk_power8.c
+index 6dd588acd..7f7ccfac3 100644
+--- a/kernel/power/sdot_microk_power8.c
++++ b/kernel/power/sdot_microk_power8.c
+@@ -34,146 +34,142 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_16 1
+-static void sdot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y , FLOAT *dot) __attribute__ ((noinline));
+
+-static void sdot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *dot)
++static float sdot_kernel_16 (long n, float *x, float *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+- FLOAT tempdot[4];
+-
+-
+- __asm__ __volatile__
+- (
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "dcbt %2, %12 \n\t"
+- "dcbt %3, %12 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 48, 0, %3 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 49, %5, %3 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 50, %6, %3 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 51, %7, %3 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 52, %8, %3 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 53, %9, %3 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 54, %10, %3 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+- "lxvw4x 55, %11, %3 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+- "addi %3, %3, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %12 \n\t"
+- "dcbt %3, %12 \n\t"
+-
+- "xvmaddasp 32, 40, 48 \n\t"
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 48, 0, %3 \n\t"
+- "xvmaddasp 33, 41, 49 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 49, %5, %3 \n\t"
+- "xvmaddasp 34, 42, 50 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 50, %6, %3 \n\t"
+- "xvmaddasp 35, 43, 51 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 51, %7, %3 \n\t"
+- "xvmaddasp 36, 44, 52 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 52, %8, %3 \n\t"
+- "xvmaddasp 37, 45, 53 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 53, %9, %3 \n\t"
+- "xvmaddasp 38, 46, 54 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 54, %10, %3 \n\t"
+- "xvmaddasp 39, 47, 55 \n\t"
+-
+- "lxvw4x 47, %11, %2 \n\t"
+- "lxvw4x 55, %11, %3 \n\t"
+-
+-
+- "addi %2, %2, 128 \n\t"
+- "addi %3, %3, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmaddasp 32, 40, 48 \n\t"
+- "xvmaddasp 33, 41, 49 \n\t"
+- "xvmaddasp 34, 42, 50 \n\t"
+- "xvmaddasp 35, 43, 51 \n\t"
+- "xvmaddasp 36, 44, 52 \n\t"
+- "xvmaddasp 37, 45, 53 \n\t"
+- "xvmaddasp 38, 46, 54 \n\t"
+- "xvmaddasp 39, 47, 55 \n\t"
+-
+- "xvaddsp 32, 32 , 33 \n\t"
+- "xvaddsp 34, 34 , 35 \n\t"
+- "xvaddsp 36, 36 , 37 \n\t"
+- "xvaddsp 38, 38 , 39 \n\t"
+-
+- "xvaddsp 32, 32 , 34 \n\t"
+- "xvaddsp 36, 36 , 38 \n\t"
+-
+- "xvaddsp 32, 32 , 36 \n\t"
+-
+- "stxvw4x 32, 0 , %4 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (y1), // 3
+- "r" (tempdot), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112), // 11
+- "r" (pre) // 12
+- : "cr0", "%0", "%2" , "%3", "memory"
+- );
+-
+- *dot = tempdot[0] + tempdot[1] + tempdot[2] + tempdot[3];
+-
+-
+-}
+-
+-
++ float dot;
++ __vector float t0;
++ __vector float t1;
++ __vector float t2;
++ __vector float t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++ "dcbt 0, %3 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 48, 0, %3 \n\t"
++ "lxvw4x 41, %10, %2 \n\t"
++ "lxvw4x 49, %10, %3 \n\t"
++ "lxvw4x 42, %11, %2 \n\t"
++ "lxvw4x 50, %11, %3 \n\t"
++ "lxvw4x 43, %12, %2 \n\t"
++ "lxvw4x 51, %12, %3 \n\t"
++ "lxvw4x 44, %13, %2 \n\t"
++ "lxvw4x %x4, %13, %3 \n\t"
++ "lxvw4x 45, %14, %2 \n\t"
++ "lxvw4x %x5, %14, %3 \n\t"
++ "lxvw4x 46, %15, %2 \n\t"
++ "lxvw4x %x6, %15, %3 \n\t"
++ "lxvw4x 47, %16, %2 \n\t"
++ "lxvw4x %x7, %16, %3 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmaddasp 32, 40, 48 \n\t"
++ "lxvw4x 40, 0, %2 \n\t"
++ "lxvw4x 48, 0, %3 \n\t"
++ "xvmaddasp 33, 41, 49 \n\t"
++ "lxvw4x 41, %10, %2 \n\t"
++ "lxvw4x 49, %10, %3 \n\t"
++ "xvmaddasp 34, 42, 50 \n\t"
++ "lxvw4x 42, %11, %2 \n\t"
++ "lxvw4x 50, %11, %3 \n\t"
++ "xvmaddasp 35, 43, 51 \n\t"
++ "lxvw4x 43, %12, %2 \n\t"
++ "lxvw4x 51, %12, %3 \n\t"
++ "xvmaddasp 36, 44, %x4 \n\t"
++ "lxvw4x 44, %13, %2 \n\t"
++ "lxvw4x %x4, %13, %3 \n\t"
++ "xvmaddasp 37, 45, %x5 \n\t"
++ "lxvw4x 45, %14, %2 \n\t"
++ "lxvw4x %x5, %14, %3 \n\t"
++ "xvmaddasp 38, 46, %x6 \n\t"
++ "lxvw4x 46, %15, %2 \n\t"
++ "lxvw4x %x6, %15, %3 \n\t"
++ "xvmaddasp 39, 47, %x7 \n\t"
++ "lxvw4x 47, %16, %2 \n\t"
++ "lxvw4x %x7, %16, %3 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++ "addi %3, %3, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmaddasp 32, 40, 48 \n\t"
++ "xvmaddasp 33, 41, 49 \n\t"
++ "xvmaddasp 34, 42, 50 \n\t"
++ "xvmaddasp 35, 43, 51 \n\t"
++ "xvmaddasp 36, 44, %x4 \n\t"
++ "xvmaddasp 37, 45, %x5 \n\t"
++ "xvmaddasp 38, 46, %x6 \n\t"
++ "xvmaddasp 39, 47, %x7 \n\t"
++
++ "xvaddsp 32, 32, 33 \n\t"
++ "xvaddsp 34, 34, 35 \n\t"
++ "xvaddsp 36, 36, 37 \n\t"
++ "xvaddsp 38, 38, 39 \n\t"
++
++ "xvaddsp 32, 32, 34 \n\t"
++ "xvaddsp 36, 36, 38 \n\t"
++
++ "xvaddsp 32, 32, 36 \n\t"
++
++ "xxsldwi 33, 32, 32, 2 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xxsldwi 33, 32, 32, 1 \n\t"
++ "xvaddsp 32, 32, 33 \n\t"
++
++ "xscvspdp %x0, 32 \n"
++
++ "#dot=%0 n=%1 x=%8=%2 y=%9=%3 o16=%10 o32=%11 o48=%12 o64=%13 o80=%14 o96=%15 o122=%16\n"
++ "#t0=%x4 t1=%x5 t2=%x6 t3=%x7"
++ :
++ "=f" (dot), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y), // 3
++ "=wa" (t0), // 4
++ "=wa" (t1), // 5
++ "=wa" (t2), // 6
++ "=wa" (t3) // 7
++ :
++ "m" (*x),
++ "m" (*y),
++ "b" (16), // 10
++ "b" (32), // 11
++ "b" (48), // 12
++ "b" (64), // 13
++ "b" (80), // 14
++ "b" (96), // 15
++ "b" (112) // 16
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return dot;
++}
+diff --git a/kernel/power/srot.c b/kernel/power/srot.c
+index d464846a4..d2910ff87 100644
+--- a/kernel/power/srot.c
++++ b/kernel/power/srot.c
+@@ -46,7 +46,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_16
+
+-static void srot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
++static void srot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT c, FLOAT s)
+ {
+
+ BLASLONG i=0;
+@@ -56,8 +56,6 @@ static void srot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
+ FLOAT y00, y01, y02, y03;
+ FLOAT *x1=x;
+ FLOAT *y1=y;
+- FLOAT c1=*c;
+- FLOAT s1=*s;
+
+ while ( i<n )
+ {
+@@ -71,14 +69,14 @@ static void srot_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
+ x03 = x1[3];
+ y03 = y1[3];
+
+- f0 = c1*x00 + s1*y00;
+- g0 = c1*y00 - s1*x00;
+- f1 = c1*x01 + s1*y01;
+- g1 = c1*y01 - s1*x01;
+- f2 = c1*x02 + s1*y02;
+- g2 = c1*y02 - s1*x02;
+- f3 = c1*x03 + s1*y03;
+- g3 = c1*y03 - s1*x03;
++ f0 = c*x00 + s*y00;
++ g0 = c*y00 - s*x00;
++ f1 = c*x01 + s*y01;
++ g1 = c*y01 - s*x01;
++ f2 = c*x02 + s*y02;
++ g2 = c*y02 - s*x02;
++ f3 = c*x03 + s*y03;
++ g3 = c*y03 - s*x03;
+
+ x1[0] = f0;
+ y1[0] = g0;
+@@ -106,8 +104,6 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
+ {
+ BLASLONG i=0;
+ BLASLONG ix=0,iy=0;
+- FLOAT c1[4] __attribute__ ((aligned (16)));;
+- FLOAT s1[4] __attribute__ ((aligned (16)));;
+ FLOAT *x1=x;
+ FLOAT *y1=y;
+ FLOAT temp;
+@@ -120,15 +116,7 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
+ BLASLONG n1 = n & -16;
+ if ( n1 > 0 )
+ {
+- c1[0]=c;
+- c1[1]=c;
+- c1[2]=c;
+- c1[3]=c;
+- s1[0]=s;
+- s1[1]=s;
+- s1[2]=s;
+- s1[3]=s;
+- srot_kernel_16(n1, x1, y1, c1, s1);
++ srot_kernel_16(n1, x1, y1, c, s);
+ i=n1;
+ }
+
+diff --git a/kernel/power/srot_microk_power8.c b/kernel/power/srot_microk_power8.c
+index ade65500f..0a18c16e0 100644
+--- a/kernel/power/srot_microk_power8.c
++++ b/kernel/power/srot_microk_power8.c
+@@ -38,171 +38,179 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_16 1
+
+-static void srot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s) __attribute__ ((noinline));
+-
+-static void srot_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *c, FLOAT *s)
++static void srot_kernel_16 (long n, float *x, float *y, float c, float s)
+ {
++ __vector float t0;
++ __vector float t1;
++ __vector float t2;
++ __vector float t3;
++ __vector float t4;
++ __vector float t5;
++ __vector float t6;
++ __vector float t7;
+
++ __asm__
++ (
++ "xscvdpspn 36, %x13 \n\t" // load c to all words
++ "xxspltw 36, 36, 0 \n\t"
+
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvw4x 36 , 0, %3 \n\t" // load c
+- "lxvw4x 37 , 0, %4 \n\t" // load s
+- "addi %8 , %8, -4 \n\t"
+- "addi %9 , %9, -4 \n\t"
+-
+- "lxvw4x 32, 0, %1 \n\t" // load x
+- "lxvw4x 33, %5, %1 \n\t"
+- "lxvw4x 34, %6, %1 \n\t"
+- "lxvw4x 35, %7, %1 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t" // load y
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+-
+- "addi %1, %1, 64 \n\t"
+- "addi %2, %2, 64 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "xvmulsp 48, 32, 36 \n\t" // c * x
+- "xvmulsp 49, 33, 36 \n\t"
+- "xvmulsp 50, 34, 36 \n\t"
+- "xvmulsp 51, 35, 36 \n\t"
+-
+- "xvmulsp 56, 40, 36 \n\t" // c * y
+- "xvmulsp 57, 41, 36 \n\t"
+- "xvmulsp 58, 42, 36 \n\t"
+- "xvmulsp 59, 43, 36 \n\t"
+-
+- "xvmulsp 52, 32, 37 \n\t" // s * x
+- "xvmulsp 53, 33, 37 \n\t"
+-
+- "lxvw4x 32, 0, %1 \n\t" // load x
+- "lxvw4x 33, %5, %1 \n\t"
+-
+- "xvmulsp 54, 34, 37 \n\t"
+- "xvmulsp 55, 35, 37 \n\t"
+-
+- "lxvw4x 34, %6, %1 \n\t"
+- "lxvw4x 35, %7, %1 \n\t"
+-
+- "xvmulsp 60, 40, 37 \n\t" // s * y
+- "xvmulsp 61, 41, 37 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t" // load y
+- "lxvw4x 41, %5, %2 \n\t"
+-
+- "xvmulsp 62, 42, 37 \n\t"
+- "xvmulsp 63, 43, 37 \n\t"
+-
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+-
+- "xvaddsp 48, 48 , 60 \n\t" // c * x + s * y
+- "xvaddsp 49, 49 , 61 \n\t" // c * x + s * y
+-
+- "addi %1, %1, 64 \n\t"
+- "addi %2, %2, 64 \n\t"
+-
+- "xvaddsp 50, 50 , 62 \n\t" // c * x + s * y
+- "xvaddsp 51, 51 , 63 \n\t" // c * x + s * y
+-
+- "xvsubsp 56, 56 , 52 \n\t" // c * y - s * x
+- "xvsubsp 57, 57 , 53 \n\t" // c * y - s * x
+- "xvsubsp 58, 58 , 54 \n\t" // c * y - s * x
+- "xvsubsp 59, 59 , 55 \n\t" // c * y - s * x
+-
+- "stxvw4x 48, 0, %8 \n\t" // store x
+- "stxvw4x 49, %5, %8 \n\t"
+- "stxvw4x 50, %6, %8 \n\t"
+- "stxvw4x 51, %7, %8 \n\t"
+-
+- "stxvw4x 56, 0, %9 \n\t" // store y
+- "stxvw4x 57, %5, %9 \n\t"
+- "stxvw4x 58, %6, %9 \n\t"
+- "stxvw4x 59, %7, %9 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+- "addi %9, %9, 64 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmulsp 48, 32, 36 \n\t" // c * x
+- "xvmulsp 49, 33, 36 \n\t"
+- "xvmulsp 50, 34, 36 \n\t"
+- "xvmulsp 51, 35, 36 \n\t"
+-
+- "xvmulsp 56, 40, 36 \n\t" // c * y
+- "xvmulsp 57, 41, 36 \n\t"
+- "xvmulsp 58, 42, 36 \n\t"
+- "xvmulsp 59, 43, 36 \n\t"
+-
+- "xvmulsp 52, 32, 37 \n\t" // s * x
+- "xvmulsp 53, 33, 37 \n\t"
+- "xvmulsp 54, 34, 37 \n\t"
+- "xvmulsp 55, 35, 37 \n\t"
+-
+- "xvmulsp 60, 40, 37 \n\t" // s * y
+- "xvmulsp 61, 41, 37 \n\t"
+- "xvmulsp 62, 42, 37 \n\t"
+- "xvmulsp 63, 43, 37 \n\t"
+-
+- "xvaddsp 48, 48 , 60 \n\t" // c * x + s * y
+- "xvaddsp 49, 49 , 61 \n\t" // c * x + s * y
+- "xvaddsp 50, 50 , 62 \n\t" // c * x + s * y
+- "xvaddsp 51, 51 , 63 \n\t" // c * x + s * y
+-
+- "xvsubsp 56, 56 , 52 \n\t" // c * y - s * x
+- "xvsubsp 57, 57 , 53 \n\t" // c * y - s * x
+- "xvsubsp 58, 58 , 54 \n\t" // c * y - s * x
+- "xvsubsp 59, 59 , 55 \n\t" // c * y - s * x
++ "xscvdpspn 37, %x14 \n\t" // load s to all words
++ "xxspltw 37, 37, 0 \n\t"
+
+- "stxvw4x 48, 0, %8 \n\t" // store x
+- "stxvw4x 49, %5, %8 \n\t"
+- "stxvw4x 50, %6, %8 \n\t"
+- "stxvw4x 51, %7, %8 \n\t"
++ "lxvw4x 32, 0, %3 \n\t" // load x
++ "lxvw4x 33, %15, %3 \n\t"
++ "lxvw4x 34, %16, %3 \n\t"
++ "lxvw4x 35, %17, %3 \n\t"
+
+- "stxvw4x 56, 0, %9 \n\t" // store y
+- "stxvw4x 57, %5, %9 \n\t"
+- "stxvw4x 58, %6, %9 \n\t"
+- "stxvw4x 59, %7, %9 \n\t"
++ "lxvw4x 48, 0, %4 \n\t" // load y
++ "lxvw4x 49, %15, %4 \n\t"
++ "lxvw4x 50, %16, %4 \n\t"
++ "lxvw4x 51, %17, %4 \n\t"
+
++ "addi %3, %3, 64 \n\t"
++ "addi %4, %4, 64 \n\t"
+
++ "addic. %2, %2, -16 \n\t"
++ "ble 2f \n\t"
+
+- :
+- :
+- "r" (i), // 0
+- "r" (x1), // 1
+- "r" (y1), // 2
+- "r" (c), // 3
+- "r" (s), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (x2), // 8
+- "r" (y2) // 9
+- : "cr0", "%0", "%1" , "%2", "%8", "%9", "memory"
+- );
++ ".p2align 5 \n"
++ "1: \n\t"
+
+-}
++ "xvmulsp 40, 32, 36 \n\t" // c * x
++ "xvmulsp 41, 33, 36 \n\t"
++ "xvmulsp 42, 34, 36 \n\t"
++ "xvmulsp 43, 35, 36 \n\t"
+
++ "xvmulsp %x5, 48, 36 \n\t" // c * y
++ "xvmulsp %x6, 49, 36 \n\t"
++ "xvmulsp %x7, 50, 36 \n\t"
++ "xvmulsp %x8, 51, 36 \n\t"
+
++ "xvmulsp 44, 32, 37 \n\t" // s * x
++ "xvmulsp 45, 33, 37 \n\t"
++
++ "lxvw4x 32, 0, %3 \n\t" // load x
++ "lxvw4x 33, %15, %3 \n\t"
++
++ "xvmulsp 46, 34, 37 \n\t"
++ "xvmulsp 47, 35, 37 \n\t"
++
++ "lxvw4x 34, %16, %3 \n\t"
++ "lxvw4x 35, %17, %3 \n\t"
++
++ "xvmulsp %x9, 48, 37 \n\t" // s * y
++ "xvmulsp %x10, 49, 37 \n\t"
++
++ "lxvw4x 48, 0, %4 \n\t" // load y
++ "lxvw4x 49, %15, %4 \n\t"
++
++ "xvmulsp %x11, 50, 37 \n\t"
++ "xvmulsp %x12, 51, 37 \n\t"
++
++ "lxvw4x 50, %16, %4 \n\t"
++ "lxvw4x 51, %17, %4 \n\t"
++
++ "xvaddsp 40, 40, %x9 \n\t" // c * x + s * y
++ "xvaddsp 41, 41, %x10 \n\t" // c * x + s * y
++
++ "addi %3, %3, -64 \n\t"
++ "addi %4, %4, -64 \n\t"
++
++ "xvaddsp 42, 42, %x11 \n\t" // c * x + s * y
++ "xvaddsp 43, 43, %x12 \n\t" // c * x + s * y
++
++ "xvsubsp %x5, %x5, 44 \n\t" // c * y - s * x
++ "xvsubsp %x6, %x6, 45 \n\t" // c * y - s * x
++ "xvsubsp %x7, %x7, 46 \n\t" // c * y - s * x
++ "xvsubsp %x8, %x8, 47 \n\t" // c * y - s * x
++
++ "stxvw4x 40, 0, %3 \n\t" // store x
++ "stxvw4x 41, %15, %3 \n\t"
++ "stxvw4x 42, %16, %3 \n\t"
++ "stxvw4x 43, %17, %3 \n\t"
++
++ "stxvw4x %x5, 0, %4 \n\t" // store y
++ "stxvw4x %x6, %15, %4 \n\t"
++ "stxvw4x %x7, %16, %4 \n\t"
++ "stxvw4x %x8, %17, %4 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %4, %4, 128 \n\t"
++
++ "addic. %2, %2, -16 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmulsp 40, 32, 36 \n\t" // c * x
++ "xvmulsp 41, 33, 36 \n\t"
++ "xvmulsp 42, 34, 36 \n\t"
++ "xvmulsp 43, 35, 36 \n\t"
++
++ "xvmulsp %x5, 48, 36 \n\t" // c * y
++ "xvmulsp %x6, 49, 36 \n\t"
++ "xvmulsp %x7, 50, 36 \n\t"
++ "xvmulsp %x8, 51, 36 \n\t"
++
++ "xvmulsp 44, 32, 37 \n\t" // s * x
++ "xvmulsp 45, 33, 37 \n\t"
++ "xvmulsp 46, 34, 37 \n\t"
++ "xvmulsp 47, 35, 37 \n\t"
++
++ "xvmulsp %x9, 48, 37 \n\t" // s * y
++ "xvmulsp %x10, 49, 37 \n\t"
++ "xvmulsp %x11, 50, 37 \n\t"
++ "xvmulsp %x12, 51, 37 \n\t"
++
++ "addi %3, %3, -64 \n\t"
++ "addi %4, %4, -64 \n\t"
++
++ "xvaddsp 40, 40, %x9 \n\t" // c * x + s * y
++ "xvaddsp 41, 41, %x10 \n\t" // c * x + s * y
++ "xvaddsp 42, 42, %x11 \n\t" // c * x + s * y
++ "xvaddsp 43, 43, %x12 \n\t" // c * x + s * y
++
++ "xvsubsp %x5, %x5, 44 \n\t" // c * y - s * x
++ "xvsubsp %x6, %x6, 45 \n\t" // c * y - s * x
++ "xvsubsp %x7, %x7, 46 \n\t" // c * y - s * x
++ "xvsubsp %x8, %x8, 47 \n\t" // c * y - s * x
++
++ "stxvw4x 40, 0, %3 \n\t" // store x
++ "stxvw4x 41, %15, %3 \n\t"
++ "stxvw4x 42, %16, %3 \n\t"
++ "stxvw4x 43, %17, %3 \n\t"
++
++ "stxvw4x %x5, 0, %4 \n\t" // store y
++ "stxvw4x %x6, %15, %4 \n\t"
++ "stxvw4x %x7, %16, %4 \n\t"
++ "stxvw4x %x8, %17, %4 \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 c=%13 s=%14 o16=%15 o32=%16 o48=%17\n"
++ "#t0=%x5 t1=%x6 t2=%x7 t3=%x8 t4=%x9 t5=%x10 t6=%x11 t7=%x12"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y), // 4
++ "=wa" (t0), // 5
++ "=wa" (t1), // 6
++ "=wa" (t2), // 7
++ "=wa" (t3), // 8
++ "=wa" (t4), // 9
++ "=wa" (t5), // 10
++ "=wa" (t6), // 11
++ "=wa" (t7) // 12
++ :
++ "f" (c), // 13
++ "f" (s), // 14
++ "b" (16), // 15
++ "b" (32), // 16
++ "b" (48) // 17
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++}
+diff --git a/kernel/power/sscal.c b/kernel/power/sscal.c
+index c6ef5e969..bd5cdc43f 100644
+--- a/kernel/power/sscal.c
++++ b/kernel/power/sscal.c
+@@ -42,11 +42,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #if !defined(HAVE_KERNEL_16)
+
+-static void sscal_kernel_16( BLASLONG n, FLOAT *da , FLOAT *x )
++static void sscal_kernel_16 (BLASLONG n, FLOAT *x, FLOAT alpha)
+ {
+
+ BLASLONG i;
+- FLOAT alpha = *da;
+
+ for( i=0; i<n; i+=8 )
+ {
+@@ -63,7 +62,7 @@ static void sscal_kernel_16( BLASLONG n, FLOAT *da , FLOAT *x )
+
+ }
+
+-static void sscal_kernel_16_zero( BLASLONG n, FLOAT *da , FLOAT *x )
++static void sscal_kernel_16_zero( BLASLONG n, FLOAT *x )
+ {
+
+ BLASLONG i;
+@@ -90,7 +89,6 @@ static void sscal_kernel_16_zero( BLASLONG n, FLOAT *da , FLOAT *x )
+ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT *dummy, BLASLONG dummy2)
+ {
+ BLASLONG i=0,j=0;
+- FLOAT alpha[4] __attribute__ ((aligned (16)));;
+
+ if ( n <= 0 || inc_x <=0 )
+ return(0);
+@@ -105,11 +103,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ BLASLONG n1 = n & -32;
+ if ( n1 > 0 )
+ {
+- alpha[0]=da;
+- alpha[1]=da;
+- alpha[2]=da;
+- alpha[3]=da;
+- sscal_kernel_16_zero(n1 , alpha , x);
++ sscal_kernel_16_zero(n1, x);
+ j=n1;
+ }
+
+@@ -127,11 +121,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
+ BLASLONG n1 = n & -32;
+ if ( n1 > 0 )
+ {
+- alpha[0]=da;
+- alpha[1]=da;
+- alpha[2]=da;
+- alpha[3]=da;
+- sscal_kernel_16(n1 , alpha , x);
++ sscal_kernel_16(n1, x, da);
+ j=n1;
+ }
+ while(j < n)
+diff --git a/kernel/power/sscal_microk_power8.c b/kernel/power/sscal_microk_power8.c
+index 963cec777..49862a329 100644
+--- a/kernel/power/sscal_microk_power8.c
++++ b/kernel/power/sscal_microk_power8.c
+@@ -35,184 +35,150 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_16 1
+
+-static void sscal_kernel_16( BLASLONG n, FLOAT *alpha, FLOAT *x) __attribute__ ((noinline));
+-
+-static void sscal_kernel_16( BLASLONG n, FLOAT *alpha, FLOAT *x)
++static void sscal_kernel_16 (long n, float *x, float alpha)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *x2=x+1;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvw4x 32, 0, %3 \n\t"
+- "addi %1, %1, -4 \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "xvmulsp 48, 40, 32 \n\t"
+- "xvmulsp 49, 41, 32 \n\t"
+- "lxvw4x 40, 0, %2 \n\t"
+- "lxvw4x 41, %5, %2 \n\t"
+- "xvmulsp 50, 42, 32 \n\t"
+- "xvmulsp 51, 43, 32 \n\t"
+- "lxvw4x 42, %6, %2 \n\t"
+- "lxvw4x 43, %7, %2 \n\t"
+- "xvmulsp 52, 44, 32 \n\t"
+- "xvmulsp 53, 45, 32 \n\t"
+- "lxvw4x 44, %8, %2 \n\t"
+- "lxvw4x 45, %9, %2 \n\t"
+- "xvmulsp 54, 46, 32 \n\t"
+- "xvmulsp 55, 47, 32 \n\t"
+- "lxvw4x 46, %10, %2 \n\t"
+- "lxvw4x 47, %11, %2 \n\t"
+-
+- "stxvw4x 48, 0, %1 \n\t"
+- "stxvw4x 49, %5, %1 \n\t"
+- "stxvw4x 50, %6, %1 \n\t"
+- "stxvw4x 51, %7, %1 \n\t"
+- "stxvw4x 52, %8, %1 \n\t"
+- "stxvw4x 53, %9, %1 \n\t"
+- "stxvw4x 54, %10, %1 \n\t"
+- "stxvw4x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmulsp 48, 40, 32 \n\t"
+- "xvmulsp 49, 41, 32 \n\t"
+- "xvmulsp 50, 42, 32 \n\t"
+- "xvmulsp 51, 43, 32 \n\t"
+- "xvmulsp 52, 44, 32 \n\t"
+- "xvmulsp 53, 45, 32 \n\t"
+- "xvmulsp 54, 46, 32 \n\t"
+- "xvmulsp 55, 47, 32 \n\t"
+-
+- "stxvw4x 48, 0, %1 \n\t"
+- "stxvw4x 49, %5, %1 \n\t"
+- "stxvw4x 50, %6, %1 \n\t"
+- "stxvw4x 51, %7, %1 \n\t"
+- "stxvw4x 52, %8, %1 \n\t"
+- "stxvw4x 53, %9, %1 \n\t"
+- "stxvw4x 54, %10, %1 \n\t"
+- "stxvw4x 55, %11, %1 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (x2), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
+-static void sscal_kernel_16_zero( BLASLONG n, FLOAT *alpha, FLOAT *x) __attribute__ ((noinline));
+-
+-static void sscal_kernel_16_zero( BLASLONG n, FLOAT *alpha, FLOAT *x)
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xscvdpspn %x3, %x3 \n\t"
++ "xxspltw %x3, %x3, 0 \n\t"
++
++ "lxvw4x 32, 0, %2 \n\t"
++ "lxvw4x 33, %4, %2 \n\t"
++ "lxvw4x 34, %5, %2 \n\t"
++ "lxvw4x 35, %6, %2 \n\t"
++ "lxvw4x 36, %7, %2 \n\t"
++ "lxvw4x 37, %8, %2 \n\t"
++ "lxvw4x 38, %9, %2 \n\t"
++ "lxvw4x 39, %10, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmulsp 40, 32, %x3 \n\t"
++ "xvmulsp 41, 33, %x3 \n\t"
++ "lxvw4x 32, 0, %2 \n\t"
++ "lxvw4x 33, %4, %2 \n\t"
++ "xvmulsp 42, 34, %x3 \n\t"
++ "xvmulsp 43, 35, %x3 \n\t"
++ "lxvw4x 34, %5, %2 \n\t"
++ "lxvw4x 35, %6, %2 \n\t"
++ "xvmulsp 44, 36, %x3 \n\t"
++ "xvmulsp 45, 37, %x3 \n\t"
++ "lxvw4x 36, %7, %2 \n\t"
++ "lxvw4x 37, %8, %2 \n\t"
++ "xvmulsp 46, 38, %x3 \n\t"
++ "xvmulsp 47, 39, %x3 \n\t"
++ "lxvw4x 38, %9, %2 \n\t"
++ "lxvw4x 39, %10, %2 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "stxvw4x 40, 0, %2 \n\t"
++ "stxvw4x 41, %4, %2 \n\t"
++ "stxvw4x 42, %5, %2 \n\t"
++ "stxvw4x 43, %6, %2 \n\t"
++ "stxvw4x 44, %7, %2 \n\t"
++ "stxvw4x 45, %8, %2 \n\t"
++ "stxvw4x 46, %9, %2 \n\t"
++ "stxvw4x 47, %10, %2 \n\t"
++
++ "addi %2, %2, 256 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmulsp 40, 32, %x3 \n\t"
++ "xvmulsp 41, 33, %x3 \n\t"
++ "xvmulsp 42, 34, %x3 \n\t"
++ "xvmulsp 43, 35, %x3 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "xvmulsp 44, 36, %x3 \n\t"
++ "xvmulsp 45, 37, %x3 \n\t"
++ "xvmulsp 46, 38, %x3 \n\t"
++ "xvmulsp 47, 39, %x3 \n\t"
++
++ "stxvw4x 40, 0, %2 \n\t"
++ "stxvw4x 41, %4, %2 \n\t"
++ "stxvw4x 42, %5, %2 \n\t"
++ "stxvw4x 43, %6, %2 \n\t"
++ "stxvw4x 44, %7, %2 \n\t"
++ "stxvw4x 45, %8, %2 \n\t"
++ "stxvw4x 46, %9, %2 \n\t"
++ "stxvw4x 47, %10, %2 \n"
++
++ "#n=%1 alpha=%3 x=%0=%2 o16=%4 o32=%5 o48=%6 o64=%7 o80=%8 o96=%9 o112=%10"
++ :
++ "+m" (*x),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+f" (alpha) // 3
++ :
++ "b" (16), // 4
++ "b" (32), // 5
++ "b" (48), // 6
++ "b" (64), // 7
++ "b" (80), // 8
++ "b" (96), // 9
++ "b" (112) // 10
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
++
++
++static void sscal_kernel_16_zero (long n, float *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *x2=x+1;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "xxlxor 32 , 32 , 32 \n\t"
+- "addi %1, %1, -4 \n\t"
+-
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvw4x 32, 0, %1 \n\t"
+- "stxvw4x 32, %5, %1 \n\t"
+- "stxvw4x 32, %6, %1 \n\t"
+- "stxvw4x 32, %7, %1 \n\t"
+- "stxvw4x 32, %8, %1 \n\t"
+- "stxvw4x 32, %9, %1 \n\t"
+- "stxvw4x 32, %10, %1 \n\t"
+- "stxvw4x 32, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (x2), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __vector float t0;
++
++ __asm__
++ (
++ "xxlxor %x3, %x3, %x3 \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvw4x %x3, 0, %2 \n\t"
++ "stxvw4x %x3, %4, %2 \n\t"
++ "stxvw4x %x3, %5, %2 \n\t"
++ "stxvw4x %x3, %6, %2 \n\t"
++ "stxvw4x %x3, %7, %2 \n\t"
++ "stxvw4x %x3, %8, %2 \n\t"
++ "stxvw4x %x3, %9, %2 \n\t"
++ "stxvw4x %x3, %10, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -32 \n\t"
++ "bgt 1b \n"
++
++ "#n=%1 x=%0=%2 t0=%x3 o16=%4 o32=%5 o48=%6 o64=%7 o80=%8 o96=%9 o112=%10"
++ :
++ "=m" (*x),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0) // 3
++ :
++ "b" (16), // 4
++ "b" (32), // 5
++ "b" (48), // 6
++ "b" (64), // 7
++ "b" (80), // 8
++ "b" (96), // 9
++ "b" (112) // 10
++ :
++ "cr0"
++ );
++}
+diff --git a/kernel/power/sswap_microk_power8.c b/kernel/power/sswap_microk_power8.c
+index c48e743de..d44f16765 100644
+--- a/kernel/power/sswap_microk_power8.c
++++ b/kernel/power/sswap_microk_power8.c
+@@ -35,102 +35,74 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_32 1
+
+-static void sswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void sswap_kernel_32( BLASLONG n, FLOAT *x, FLOAT *y)
++static void sswap_kernel_32 (long n, float *x, float *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "addi %3, %3, -4 \n\t"
+- "addi %4, %4, -4 \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "lxvw4x 32, 0, %2 \n\t"
+- "lxvw4x 33, %5, %2 \n\t"
+- "lxvw4x 34, %6, %2 \n\t"
+- "lxvw4x 35, %7, %2 \n\t"
+- "lxvw4x 36, %8, %2 \n\t"
+- "lxvw4x 37, %9, %2 \n\t"
+- "lxvw4x 38, %10, %2 \n\t"
+- "lxvw4x 39, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvw4x 48, 0, %1 \n\t"
+- "lxvw4x 49, %5, %1 \n\t"
+- "lxvw4x 50, %6, %1 \n\t"
+- "lxvw4x 51, %7, %1 \n\t"
+- "lxvw4x 52, %8, %1 \n\t"
+- "lxvw4x 53, %9, %1 \n\t"
+- "lxvw4x 54, %10, %1 \n\t"
+- "lxvw4x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvw4x 32, 0, %3 \n\t"
+- "stxvw4x 33, %5, %3 \n\t"
+- "stxvw4x 34, %6, %3 \n\t"
+- "stxvw4x 35, %7, %3 \n\t"
+- "stxvw4x 36, %8, %3 \n\t"
+- "stxvw4x 37, %9, %3 \n\t"
+- "stxvw4x 38, %10, %3 \n\t"
+- "stxvw4x 39, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvw4x 48, 0, %4 \n\t"
+- "stxvw4x 49, %5, %4 \n\t"
+- "stxvw4x 50, %6, %4 \n\t"
+- "stxvw4x 51, %7, %4 \n\t"
+- "stxvw4x 52, %8, %4 \n\t"
+- "stxvw4x 53, %9, %4 \n\t"
+- "stxvw4x 54, %10, %4 \n\t"
+- "stxvw4x 55, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "addic. %0 , %0 , -32 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (y2), // 3
+- "r" (x2), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "%3", "%4", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "lxvw4x 32, 0, %4 \n\t"
++ "lxvw4x 33, %5, %4 \n\t"
++ "lxvw4x 34, %6, %4 \n\t"
++ "lxvw4x 35, %7, %4 \n\t"
++ "lxvw4x 36, %8, %4 \n\t"
++ "lxvw4x 37, %9, %4 \n\t"
++ "lxvw4x 38, %10, %4 \n\t"
++ "lxvw4x 39, %11, %4 \n\t"
++
++ "lxvw4x 40, 0, %3 \n\t"
++ "lxvw4x 41, %5, %3 \n\t"
++ "lxvw4x 42, %6, %3 \n\t"
++ "lxvw4x 43, %7, %3 \n\t"
++ "lxvw4x 44, %8, %3 \n\t"
++ "lxvw4x 45, %9, %3 \n\t"
++ "lxvw4x 46, %10, %3 \n\t"
++ "lxvw4x 47, %11, %3 \n\t"
++
++ "stxvw4x 32, 0, %3 \n\t"
++ "stxvw4x 33, %5, %3 \n\t"
++ "stxvw4x 34, %6, %3 \n\t"
++ "stxvw4x 35, %7, %3 \n\t"
++ "stxvw4x 36, %8, %3 \n\t"
++ "stxvw4x 37, %9, %3 \n\t"
++ "stxvw4x 38, %10, %3 \n\t"
++ "stxvw4x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvw4x 40, 0, %4 \n\t"
++ "stxvw4x 41, %5, %4 \n\t"
++ "stxvw4x 42, %6, %4 \n\t"
++ "stxvw4x 43, %7, %4 \n\t"
++ "stxvw4x 44, %8, %4 \n\t"
++ "stxvw4x 45, %9, %4 \n\t"
++ "stxvw4x 46, %10, %4 \n\t"
++ "stxvw4x 47, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "addic. %2, %2, -32 \n\t"
++ "bgt 1b \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y) // 4
++ :
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/zasum.c b/kernel/power/zasum.c
+index abd6ec08a..0b6b87d46 100644
+--- a/kernel/power/zasum.c
++++ b/kernel/power/zasum.c
+@@ -53,7 +53,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_8
+
+-static void zasum_kernel_8(BLASLONG n, FLOAT *x1, FLOAT *svec)
++static FLOAT zasum_kernel_8(BLASLONG n, FLOAT *x1)
+ {
+
+ BLASLONG i=0;
+@@ -92,9 +92,7 @@ static void zasum_kernel_8(BLASLONG n, FLOAT *x1, FLOAT *svec)
+
+ }
+
+- svec[0] = sum0+sum1+sum2+sum3;
+- svec[1] = 0.0;
+-
++ return sum0+sum1+sum2+sum3;
+ }
+
+ #endif
+@@ -104,7 +102,6 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ BLASLONG i=0;
+ BLASLONG ip=0;
+ FLOAT sumf = 0.0;
+- FLOAT svec[2] __attribute__ ((aligned (16)));;
+ BLASLONG n1;
+ BLASLONG inc_x2;
+
+@@ -117,8 +114,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
+ if ( n1 > 0 )
+ {
+
+- zasum_kernel_8(n1, x, svec);
+- sumf = svec[0] + svec[1];
++ sumf = zasum_kernel_8(n1, x);
+ i=n1;
+ ip=2*n1;
+ }
+diff --git a/kernel/power/zasum_microk_power8.c b/kernel/power/zasum_microk_power8.c
+index b9f6c0ac6..82366902d 100644
+--- a/kernel/power/zasum_microk_power8.c
++++ b/kernel/power/zasum_microk_power8.c
+@@ -34,144 +34,140 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_8 1
+-static void zasum_kernel_8( BLASLONG n, FLOAT *x, FLOAT *svec) __attribute__ ((noinline));
+
+-static void zasum_kernel_8( BLASLONG n, FLOAT *x, FLOAT *svec)
++static double zasum_kernel_8 (long n, double *x)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2 , %4 \n\t"
+-
+- "xvabsdp 48, 40 \n\t"
+- "xvabsdp 49, 41 \n\t"
+- "xvabsdp 50, 42 \n\t"
+- "xvabsdp 51, 43 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+-
+- "xvabsdp 52, 44 \n\t"
+- "xvabsdp 53, 45 \n\t"
+-
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "xvabsdp 54, 46 \n\t"
+- "xvabsdp 55, 47 \n\t"
+-
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+-
+- "xvadddp 32, 32, 48 \n\t"
+- "xvadddp 33, 33, 49 \n\t"
+-
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "xvadddp 34, 34, 50 \n\t"
+- "xvadddp 35, 35, 51 \n\t"
+- "addi %2, %2, 128 \n\t"
+- "xvadddp 36, 36, 52 \n\t"
+- "xvadddp 37, 37, 53 \n\t"
+- "addic. %0 , %0 , -8 \n\t"
+- "xvadddp 38, 38, 54 \n\t"
+- "xvadddp 39, 39, 55 \n\t"
+-
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+-
+- "xvabsdp 48, 40 \n\t"
+- "xvabsdp 49, 41 \n\t"
+- "xvabsdp 50, 42 \n\t"
+- "xvabsdp 51, 43 \n\t"
+- "xvabsdp 52, 44 \n\t"
+- "xvabsdp 53, 45 \n\t"
+- "xvabsdp 54, 46 \n\t"
+- "xvabsdp 55, 47 \n\t"
+-
+- "xvadddp 32, 32, 48 \n\t"
+- "xvadddp 33, 33, 49 \n\t"
+- "xvadddp 34, 34, 50 \n\t"
+- "xvadddp 35, 35, 51 \n\t"
+- "xvadddp 36, 36, 52 \n\t"
+- "xvadddp 37, 37, 53 \n\t"
+- "xvadddp 38, 38, 54 \n\t"
+- "xvadddp 39, 39, 55 \n\t"
+-
+- "xvadddp 32, 32, 33 \n\t"
+- "xvadddp 34, 34, 35 \n\t"
+- "xvadddp 36, 36, 37 \n\t"
+- "xvadddp 38, 38, 39 \n\t"
+-
+- "xvadddp 32, 32, 34 \n\t"
+- "xvadddp 36, 36, 38 \n\t"
+-
+- "xvadddp 32, 32, 36 \n\t"
+-
+-
+- "stxvd2x 32, 0, %3 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (svec), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2", "memory"
+- );
+-
+-}
+-
+-
++ double sum;
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %8, %2 \n\t"
++ "lxvd2x 42, %9, %2 \n\t"
++ "lxvd2x 43, %10, %2 \n\t"
++ "lxvd2x 44, %11, %2 \n\t"
++ "lxvd2x 45, %12, %2 \n\t"
++ "lxvd2x 46, %13, %2 \n\t"
++ "lxvd2x 47, %14, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvabsdp 48, 40 \n\t"
++ "xvabsdp 49, 41 \n\t"
++ "xvabsdp 50, 42 \n\t"
++ "xvabsdp 51, 43 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %8, %2 \n\t"
++
++ "xvabsdp %x3, 44 \n\t"
++ "xvabsdp %x4, 45 \n\t"
++
++ "lxvd2x 42, %9, %2 \n\t"
++ "lxvd2x 43, %10, %2 \n\t"
++
++ "xvabsdp %x5, 46 \n\t"
++ "xvabsdp %x6, 47 \n\t"
++
++ "lxvd2x 44, %11, %2 \n\t"
++ "lxvd2x 45, %12, %2 \n\t"
++
++ "xvadddp 32, 32, 48 \n\t"
++ "xvadddp 33, 33, 49 \n\t"
++
++ "lxvd2x 46, %13, %2 \n\t"
++ "lxvd2x 47, %14, %2 \n\t"
++
++ "xvadddp 34, 34, 50 \n\t"
++ "xvadddp 35, 35, 51 \n\t"
++ "addi %2, %2, 128 \n\t"
++ "xvadddp 36, 36, %x3 \n\t"
++ "xvadddp 37, 37, %x4 \n\t"
++ "addic. %1, %1, -8 \n\t"
++ "xvadddp 38, 38, %x5 \n\t"
++ "xvadddp 39, 39, %x6 \n\t"
++
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvabsdp 48, 40 \n\t"
++ "xvabsdp 49, 41 \n\t"
++ "xvabsdp 50, 42 \n\t"
++ "xvabsdp 51, 43 \n\t"
++ "xvabsdp %x3, 44 \n\t"
++ "xvabsdp %x4, 45 \n\t"
++ "xvabsdp %x5, 46 \n\t"
++ "xvabsdp %x6, 47 \n\t"
++
++ "xvadddp 32, 32, 48 \n\t"
++ "xvadddp 33, 33, 49 \n\t"
++ "xvadddp 34, 34, 50 \n\t"
++ "xvadddp 35, 35, 51 \n\t"
++ "xvadddp 36, 36, %x3 \n\t"
++ "xvadddp 37, 37, %x4 \n\t"
++ "xvadddp 38, 38, %x5 \n\t"
++ "xvadddp 39, 39, %x6 \n\t"
++
++ "xvadddp 32, 32, 33 \n\t"
++ "xvadddp 34, 34, 35 \n\t"
++ "xvadddp 36, 36, 37 \n\t"
++ "xvadddp 38, 38, 39 \n\t"
++
++ "xvadddp 32, 32, 34 \n\t"
++ "xvadddp 36, 36, 38 \n\t"
++
++ "xvadddp 32, 32, 36 \n\t"
++
++ "xxswapd 33, 32 \n\t"
++ "xsadddp %x0, 32, 33 \n"
++
++ "#n=%1 x=%3=%2 sum=%0 o16=%8 o32=%9 o48=%10 o64=%11 o80=%12 o96=%13 o112=%14\n"
++ "#t0=%x3 t1=%x4 t2=%x5 t3=%x6"
++ :
++ "=d" (sum), // 0
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0), // 3
++ "=wa" (t1), // 4
++ "=wa" (t2), // 5
++ "=wa" (t3) // 6
++ :
++ "m" (*x),
++ "b" (16), // 8
++ "b" (32), // 9
++ "b" (48), // 10
++ "b" (64), // 11
++ "b" (80), // 12
++ "b" (96), // 13
++ "b" (112) // 14
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++
++ return sum;
++}
+diff --git a/kernel/power/zaxpy.c b/kernel/power/zaxpy.c
+index 0ee0c1bf9..dd7ab6c3c 100644
+--- a/kernel/power/zaxpy.c
++++ b/kernel/power/zaxpy.c
+@@ -78,7 +78,6 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i,
+ {
+ BLASLONG i=0;
+ BLASLONG ix=0,iy=0;
+- FLOAT da[4];
+
+ if ( n <= 0 ) return(0);
+
+@@ -89,11 +88,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r, FLOAT da_i,
+
+ if ( n1 )
+ {
+- da[0] = da_r;
+- da[1] = da_r;
+- da[2] = da_i;
+- da[3] = da_i;
+- zaxpy_kernel_4(n1, x, y , da );
++ zaxpy_kernel_4 (n1, x, y, da_r, da_i);
+ ix = 2 * n1;
+ }
+ i = n1;
+diff --git a/kernel/power/zaxpy_microk_power8.c b/kernel/power/zaxpy_microk_power8.c
+index c8a529fd9..124614f62 100644
+--- a/kernel/power/zaxpy_microk_power8.c
++++ b/kernel/power/zaxpy_microk_power8.c
+@@ -35,216 +35,225 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+ #define HAVE_KERNEL_4 1
+-static void zaxpy_kernel_4( BLASLONG n, FLOAT *x, FLOAT *y , FLOAT *alpha) __attribute__ ((noinline));
+-
+-static void zaxpy_kernel_4( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *alpha)
++static void zaxpy_kernel_4 (long n, double *x, double *y,
++ double alpha_r, double alpha_i)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
+-
+ #if !defined(CONJ)
+- FLOAT mvec[2] = { -1.0, 1.0 };
++ static const double mvec[2] = { -1.0, 1.0 };
+ #else
+- FLOAT mvec[2] = { 1.0, -1.0 };
++ static const double mvec[2] = { 1.0, -1.0 };
+ #endif
+-
+-
+- __asm__ __volatile__
+- (
+-
+- "lxsdx 34, 0 , %4 \n\t" // alpha_r
+- "lxsdx 35, %5, %4 \n\t" // alpha_i
+- "xxspltd 32, 34, 0 \n\t"
+- "xxspltd 33, 35, 0 \n\t"
+-
+- "lxvd2x 36, 0, %9 \n\t" // mvec
++ const double *mvecp = mvec;
++
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++ __vector double t4;
++ __vector double t5;
++ __vector double t6;
++ __vector double t7;
++ __vector double t8;
++ __vector double t9;
++ __vector double t10;
++ __vector double t11;
++ long ytmp;
++
++ __asm__
++ (
++ "xxspltd 32, %x19, 0 \n\t" // alpha_r
++ "xxspltd 33, %x20, 0 \n\t" // alpha_i
++
++ "lxvd2x 36, 0, %21 \n\t" // mvec
+
+ #if !defined(CONJ)
+- "xvmuldp 33, 33 , 36 \n\t" // alpha_i * mvec
++ "xvmuldp 33, 33, 36 \n\t" // alpha_i * mvec
+ #else
+- "xvmuldp 32, 32 , 36 \n\t" // alpha_r * mvec
++ "xvmuldp 32, 32, 36 \n\t" // alpha_r * mvec
+ #endif
+
+- "addi %8, %8, -8 \n\t"
+-
+- "dcbt %2, %10 \n\t"
+- "dcbt %3, %10 \n\t"
+-
+-
+- "lxvd2x 40, 0, %2 \n\t" // x0
+- "lxvd2x 41, %5, %2 \n\t" // x1
+- "lxvd2x 42, %6, %2 \n\t" // x2
+- "lxvd2x 43, %7, %2 \n\t" // x3
+-
+- "lxvd2x 48, 0, %3 \n\t" // y0
+- "lxvd2x 49, %5, %3 \n\t" // y1
+- "lxvd2x 50, %6, %3 \n\t" // y2
+- "lxvd2x 51, %7, %3 \n\t" // y3
+-
+- "xxswapd 56, 40 \n\t" // exchange real and imag part
+- "xxswapd 57, 41 \n\t" // exchange real and imag part
+- "xxswapd 58, 42 \n\t" // exchange real and imag part
+- "xxswapd 59, 43 \n\t" // exchange real and imag part
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "lxvd2x 44, 0, %2 \n\t" // x4
+- "lxvd2x 45, %5, %2 \n\t" // x5
+- "lxvd2x 46, %6, %2 \n\t" // x6
+- "lxvd2x 47, %7, %2 \n\t" // x7
+-
+- "lxvd2x 52, 0, %3 \n\t" // y4
+- "lxvd2x 53, %5, %3 \n\t" // y5
+- "lxvd2x 54, %6, %3 \n\t" // y6
+- "lxvd2x 55, %7, %3 \n\t" // y7
+-
+- "xxswapd 60, 44 \n\t" // exchange real and imag part
+- "xxswapd 61, 45 \n\t" // exchange real and imag part
+- "xxswapd 62, 46 \n\t" // exchange real and imag part
+- "xxswapd 63, 47 \n\t" // exchange real and imag part
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %10 \n\t"
+- "dcbt %3, %10 \n\t"
+-
+- "xvmaddadp 48, 40, 32 \n\t" // alpha_r * x0_r , alpha_r * x0_i
+- "xvmaddadp 49, 41, 32 \n\t"
+- "lxvd2x 40, 0, %2 \n\t" // x0
+- "lxvd2x 41, %5, %2 \n\t" // x1
+- "xvmaddadp 50, 42, 32 \n\t"
+- "xvmaddadp 51, 43, 32 \n\t"
+- "lxvd2x 42, %6, %2 \n\t" // x2
+- "lxvd2x 43, %7, %2 \n\t" // x3
+-
+- "xvmaddadp 52, 44, 32 \n\t"
+- "addi %2, %2, 64 \n\t"
+- "xvmaddadp 53, 45, 32 \n\t"
+- "lxvd2x 44, 0, %2 \n\t" // x4
+- "lxvd2x 45, %5, %2 \n\t" // x5
+- "xvmaddadp 54, 46, 32 \n\t"
+- "xvmaddadp 55, 47, 32 \n\t"
+- "lxvd2x 46, %6, %2 \n\t" // x6
+- "lxvd2x 47, %7, %2 \n\t" // x7
+-
+- "xvmaddadp 48, 56, 33 \n\t" // alpha_i * x0_i , alpha_i * x0_r
+- "addi %2, %2, 64 \n\t"
+- "xvmaddadp 49, 57, 33 \n\t"
+- "xvmaddadp 50, 58, 33 \n\t"
+- "xvmaddadp 51, 59, 33 \n\t"
+-
+- "xvmaddadp 52, 60, 33 \n\t"
+- "xvmaddadp 53, 61, 33 \n\t"
+- "xvmaddadp 54, 62, 33 \n\t"
+- "xvmaddadp 55, 63, 33 \n\t"
+-
+- "stxvd2x 48, 0, %8 \n\t"
+- "stxvd2x 49, %5, %8 \n\t"
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- "stxvd2x 52, 0, %8 \n\t"
+- "stxvd2x 53, %5, %8 \n\t"
+- "stxvd2x 54, %6, %8 \n\t"
+- "stxvd2x 55, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- "xxswapd 56, 40 \n\t" // exchange real and imag part
+- "xxswapd 57, 41 \n\t" // exchange real and imag part
+- "lxvd2x 48, 0, %3 \n\t" // y0
+- "lxvd2x 49, %5, %3 \n\t" // y1
+- "xxswapd 58, 42 \n\t" // exchange real and imag part
+- "xxswapd 59, 43 \n\t" // exchange real and imag part
+- "lxvd2x 50, %6, %3 \n\t" // y2
+- "lxvd2x 51, %7, %3 \n\t" // y3
+-
+- "xxswapd 60, 44 \n\t" // exchange real and imag part
+- "addi %3, %3, 64 \n\t"
+- "xxswapd 61, 45 \n\t" // exchange real and imag part
+- "lxvd2x 52, 0, %3 \n\t" // y4
+- "lxvd2x 53, %5, %3 \n\t" // y5
+- "xxswapd 62, 46 \n\t" // exchange real and imag part
+- "xxswapd 63, 47 \n\t" // exchange real and imag part
+- "lxvd2x 54, %6, %3 \n\t" // y6
+- "lxvd2x 55, %7, %3 \n\t" // y7
+-
+- "addi %3, %3, 64 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmaddadp 48, 40, 32 \n\t" // alpha_r * x0_r , alpha_r * x0_i
+- "xvmaddadp 49, 41, 32 \n\t"
+- "xvmaddadp 50, 42, 32 \n\t"
+- "xvmaddadp 51, 43, 32 \n\t"
+-
+- "xvmaddadp 52, 44, 32 \n\t"
+- "xvmaddadp 53, 45, 32 \n\t"
+- "xvmaddadp 54, 46, 32 \n\t"
+- "xvmaddadp 55, 47, 32 \n\t"
+-
+- "xvmaddadp 48, 56, 33 \n\t" // alpha_i * x0_i , alpha_i * x0_r
+- "xvmaddadp 49, 57, 33 \n\t"
+- "xvmaddadp 50, 58, 33 \n\t"
+- "xvmaddadp 51, 59, 33 \n\t"
+-
+- "xvmaddadp 52, 60, 33 \n\t"
+- "xvmaddadp 53, 61, 33 \n\t"
+- "xvmaddadp 54, 62, 33 \n\t"
+- "xvmaddadp 55, 63, 33 \n\t"
+-
+-
+- "stxvd2x 48, 0, %8 \n\t"
+- "stxvd2x 49, %5, %8 \n\t"
+- "stxvd2x 50, %6, %8 \n\t"
+- "stxvd2x 51, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- "stxvd2x 52, 0, %8 \n\t"
+- "stxvd2x 53, %5, %8 \n\t"
+- "stxvd2x 54, %6, %8 \n\t"
+- "stxvd2x 55, %7, %8 \n\t"
+-
+- "addi %8, %8, 64 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (y1), // 3
+- "r" (alpha), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (y2), // 8
+- "r" (mvec), // 9
+- "r" (pre) // 10
+- : "cr0", "%0", "%2" , "%3", "%8", "memory"
+- );
+-
+-}
+-
+-
++ "mr %16, %3 \n\t"
++ "dcbt 0, %2 \n\t"
++ "dcbt 0, %3 \n\t"
++
++
++ "lxvd2x 40, 0, %2 \n\t" // x0
++ "lxvd2x 41, %22, %2 \n\t" // x1
++ "lxvd2x 42, %23, %2 \n\t" // x2
++ "lxvd2x 43, %24, %2 \n\t" // x3
++
++ "lxvd2x 48, 0, %3 \n\t" // y0
++ "lxvd2x 49, %22, %3 \n\t" // y1
++ "lxvd2x 50, %23, %3 \n\t" // y2
++ "lxvd2x 51, %24, %3 \n\t" // y3
++
++ "xxswapd %x8, 40 \n\t" // exchange real and imag part
++ "xxswapd %x9, 41 \n\t" // exchange real and imag part
++ "xxswapd %x10, 42 \n\t" // exchange real and imag part
++ "xxswapd %x11, 43 \n\t" // exchange real and imag part
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "lxvd2x 44, 0, %2 \n\t" // x4
++ "lxvd2x 45, %22, %2 \n\t" // x5
++ "lxvd2x 46, %23, %2 \n\t" // x6
++ "lxvd2x 47, %24, %2 \n\t" // x7
++
++ "lxvd2x %x4, 0, %3 \n\t" // y4
++ "lxvd2x %x5, %22, %3 \n\t" // y5
++ "lxvd2x %x6, %23, %3 \n\t" // y6
++ "lxvd2x %x7, %24, %3 \n\t" // y7
++
++ "xxswapd %x12, 44 \n\t" // exchange real and imag part
++ "xxswapd %x13, 45 \n\t" // exchange real and imag part
++ "xxswapd %x14, 46 \n\t" // exchange real and imag part
++ "xxswapd %x15, 47 \n\t" // exchange real and imag part
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmaddadp 48, 40, 32 \n\t" // alpha_r * x0_r , alpha_r * x0_i
++ "xvmaddadp 49, 41, 32 \n\t"
++ "lxvd2x 40, 0, %2 \n\t" // x0
++ "lxvd2x 41, %22, %2 \n\t" // x1
++ "xvmaddadp 50, 42, 32 \n\t"
++ "xvmaddadp 51, 43, 32 \n\t"
++ "lxvd2x 42, %23, %2 \n\t" // x2
++ "lxvd2x 43, %24, %2 \n\t" // x3
++
++ "xvmaddadp %x4, 44, 32 \n\t"
++ "addi %2, %2, 64 \n\t"
++ "xvmaddadp %x5, 45, 32 \n\t"
++ "lxvd2x 44, 0, %2 \n\t" // x4
++ "lxvd2x 45, %22, %2 \n\t" // x5
++ "xvmaddadp %x6, 46, 32 \n\t"
++ "xvmaddadp %x7, 47, 32 \n\t"
++ "lxvd2x 46, %23, %2 \n\t" // x6
++ "lxvd2x 47, %24, %2 \n\t" // x7
++
++ "xvmaddadp 48, %x8, 33 \n\t" // alpha_i * x0_i , alpha_i * x0_r
++ "addi %2, %2, 64 \n\t"
++ "xvmaddadp 49, %x9, 33 \n\t"
++ "xvmaddadp 50, %x10, 33 \n\t"
++ "xvmaddadp 51, %x11, 33 \n\t"
++
++ "xvmaddadp %x4, %x12, 33 \n\t"
++ "xvmaddadp %x5, %x13, 33 \n\t"
++ "xvmaddadp %x6, %x14, 33 \n\t"
++ "xvmaddadp %x7, %x15, 33 \n\t"
++
++ "stxvd2x 48, 0, %16 \n\t"
++ "stxvd2x 49, %22, %16 \n\t"
++ "stxvd2x 50, %23, %16 \n\t"
++ "stxvd2x 51, %24, %16 \n\t"
++
++ "addi %16, %16, 64 \n\t"
++
++ "stxvd2x %x4, 0, %16 \n\t"
++ "stxvd2x %x5, %22, %16 \n\t"
++ "stxvd2x %x6, %23, %16 \n\t"
++ "stxvd2x %x7, %24, %16 \n\t"
++
++ "addi %16, %16, 64 \n\t"
++
++ "xxswapd %x8, 40 \n\t" // exchange real and imag part
++ "xxswapd %x9, 41 \n\t" // exchange real and imag part
++ "lxvd2x 48, 0, %3 \n\t" // y0
++ "lxvd2x 49, %22, %3 \n\t" // y1
++ "xxswapd %x10, 42 \n\t" // exchange real and imag part
++ "xxswapd %x11, 43 \n\t" // exchange real and imag part
++ "lxvd2x 50, %23, %3 \n\t" // y2
++ "lxvd2x 51, %24, %3 \n\t" // y3
++
++ "xxswapd %x12, 44 \n\t" // exchange real and imag part
++ "addi %3, %3, 64 \n\t"
++ "xxswapd %x13, 45 \n\t" // exchange real and imag part
++ "lxvd2x %x4, 0, %3 \n\t" // y4
++ "lxvd2x %x5, %22, %3 \n\t" // y5
++ "xxswapd %x14, 46 \n\t" // exchange real and imag part
++ "xxswapd %x15, 47 \n\t" // exchange real and imag part
++ "lxvd2x %x6, %23, %3 \n\t" // y6
++ "lxvd2x %x7, %24, %3 \n\t" // y7
++
++ "addi %3, %3, 64 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmaddadp 48, 40, 32 \n\t" // alpha_r * x0_r , alpha_r * x0_i
++ "xvmaddadp 49, 41, 32 \n\t"
++ "xvmaddadp 50, 42, 32 \n\t"
++ "xvmaddadp 51, 43, 32 \n\t"
++
++ "xvmaddadp %x4, 44, 32 \n\t"
++ "xvmaddadp %x5, 45, 32 \n\t"
++ "xvmaddadp %x6, 46, 32 \n\t"
++ "xvmaddadp %x7, 47, 32 \n\t"
++
++ "xvmaddadp 48, %x8, 33 \n\t" // alpha_i * x0_i , alpha_i * x0_r
++ "xvmaddadp 49, %x9, 33 \n\t"
++ "xvmaddadp 50, %x10, 33 \n\t"
++ "xvmaddadp 51, %x11, 33 \n\t"
++
++ "xvmaddadp %x4, %x12, 33 \n\t"
++ "xvmaddadp %x5, %x13, 33 \n\t"
++ "xvmaddadp %x6, %x14, 33 \n\t"
++ "xvmaddadp %x7, %x15, 33 \n\t"
++
++ "stxvd2x 48, 0, %16 \n\t"
++ "stxvd2x 49, %22, %16 \n\t"
++ "stxvd2x 50, %23, %16 \n\t"
++ "stxvd2x 51, %24, %16 \n\t"
++
++ "addi %16, %16, 64 \n\t"
++
++ "stxvd2x %x4, 0, %16 \n\t"
++ "stxvd2x %x5, %22, %16 \n\t"
++ "stxvd2x %x6, %23, %16 \n\t"
++ "stxvd2x %x7, %24, %16 \n"
++
++ "#n=%1 x=%17=%2 y=%0=%3 alpha=(%19,%20) mvecp=%18=%16 o16=%22 o32=%23 o48=%24 ytmp=%16\n"
++ "#t0=%x4 t1=%x5 t2=%x6 t3=%x7 t4=%x8 t5=%x9 t6=%x10 t7=%x11 t8=%x12 t9=%x13 t10=%x14 t11=%x15"
++ :
++ "+m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y), // 3
++ "=wa" (t0), // 4
++ "=wa" (t1), // 5
++ "=wa" (t2), // 6
++ "=wa" (t3), // 7
++ "=wa" (t4), // 8
++ "=wa" (t5), // 9
++ "=wa" (t6), // 10
++ "=wa" (t7), // 11
++ "=wa" (t8), // 12
++ "=wa" (t9), // 13
++ "=wa" (t10), // 14
++ "=wa" (t11), // 15
++ "=b" (ytmp) // 16
++ :
++ "m" (*x),
++ "m" (*mvecp),
++ "d" (alpha_r), // 19
++ "d" (alpha_i), // 20
++ "16" (mvecp), // 21
++ "b" (16), // 22
++ "b" (32), // 23
++ "b" (48) // 24
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++}
+diff --git a/kernel/power/zcopy_microk_power8.c b/kernel/power/zcopy_microk_power8.c
+index 73abe084e..5ca34b633 100644
+--- a/kernel/power/zcopy_microk_power8.c
++++ b/kernel/power/zcopy_microk_power8.c
+@@ -35,140 +35,121 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_16 1
+
+-static void zcopy_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void zcopy_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y)
++static void zcopy_kernel_16 (long n, FLOAT *x, FLOAT *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 50, 0, %2 \n\t"
+- "lxvd2x 51, %5, %2 \n\t"
+- "lxvd2x 52, %6, %2 \n\t"
+- "lxvd2x 53, %7, %2 \n\t"
+- "lxvd2x 54, %8, %2 \n\t"
+- "lxvd2x 55, %9, %2 \n\t"
+- "lxvd2x 56, %10, %2 \n\t"
+- "lxvd2x 57, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "stxvd2x 40, 0, %1 \n\t"
+- "stxvd2x 41, %5, %1 \n\t"
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "stxvd2x 42, %6, %1 \n\t"
+- "stxvd2x 43, %7, %1 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "stxvd2x 44, %8, %1 \n\t"
+- "stxvd2x 45, %9, %1 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "stxvd2x 46, %10, %1 \n\t"
+- "stxvd2x 47, %11, %1 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "stxvd2x 50, 0, %1 \n\t"
+- "stxvd2x 51, %5, %1 \n\t"
+- "lxvd2x 50, 0, %2 \n\t"
+- "lxvd2x 51, %5, %2 \n\t"
+- "stxvd2x 52, %6, %1 \n\t"
+- "stxvd2x 53, %7, %1 \n\t"
+- "lxvd2x 52, %6, %2 \n\t"
+- "lxvd2x 53, %7, %2 \n\t"
+- "stxvd2x 54, %8, %1 \n\t"
+- "stxvd2x 55, %9, %1 \n\t"
+- "lxvd2x 54, %8, %2 \n\t"
+- "lxvd2x 55, %9, %2 \n\t"
+- "stxvd2x 56, %10, %1 \n\t"
+- "stxvd2x 57, %11, %1 \n\t"
+- "lxvd2x 56, %10, %2 \n\t"
+- "lxvd2x 57, %11, %2 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "stxvd2x 40, 0, %1 \n\t"
+- "stxvd2x 41, %5, %1 \n\t"
+- "stxvd2x 42, %6, %1 \n\t"
+- "stxvd2x 43, %7, %1 \n\t"
+- "stxvd2x 44, %8, %1 \n\t"
+- "stxvd2x 45, %9, %1 \n\t"
+- "stxvd2x 46, %10, %1 \n\t"
+- "stxvd2x 47, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvd2x 50, 0, %1 \n\t"
+- "stxvd2x 51, %5, %1 \n\t"
+- "stxvd2x 52, %6, %1 \n\t"
+- "stxvd2x 53, %7, %1 \n\t"
+- "stxvd2x 54, %8, %1 \n\t"
+- "stxvd2x 55, %9, %1 \n\t"
+- "stxvd2x 56, %10, %1 \n\t"
+- "stxvd2x 57, %11, %1 \n\t"
+-
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %5, %2 \n\t"
++ "lxvd2x 34, %6, %2 \n\t"
++ "lxvd2x 35, %7, %2 \n\t"
++ "lxvd2x 36, %8, %2 \n\t"
++ "lxvd2x 37, %9, %2 \n\t"
++ "lxvd2x 38, %10, %2 \n\t"
++ "lxvd2x 39, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %5, %2 \n\t"
++ "lxvd2x 42, %6, %2 \n\t"
++ "lxvd2x 43, %7, %2 \n\t"
++ "lxvd2x 44, %8, %2 \n\t"
++ "lxvd2x 45, %9, %2 \n\t"
++ "lxvd2x 46, %10, %2 \n\t"
++ "lxvd2x 47, %11, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "lxvd2x 32, 0, %2 \n\t"
++ "lxvd2x 33, %5, %2 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "lxvd2x 34, %6, %2 \n\t"
++ "lxvd2x 35, %7, %2 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "lxvd2x 36, %8, %2 \n\t"
++ "lxvd2x 37, %9, %2 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++ "lxvd2x 38, %10, %2 \n\t"
++ "lxvd2x 39, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "lxvd2x 40, 0, %2 \n\t"
++ "lxvd2x 41, %5, %2 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "lxvd2x 42, %6, %2 \n\t"
++ "lxvd2x 43, %7, %2 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "lxvd2x 44, %8, %2 \n\t"
++ "lxvd2x 45, %9, %2 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n\t"
++ "lxvd2x 46, %10, %2 \n\t"
++ "lxvd2x 47, %11, %2 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -16 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n"
++
++ "#n=%1 x=%4=%2 y=%0=%3 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "=m" (*y),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y) // 3
++ :
++ "m" (*x),
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47"
++ );
++}
+diff --git a/kernel/power/zdot.c b/kernel/power/zdot.c
+index bc1a95e22..b83f832b1 100644
+--- a/kernel/power/zdot.c
++++ b/kernel/power/zdot.c
+@@ -43,8 +43,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_8
+
+-static void zdot_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d) __attribute__ ((noinline));
+-
+ static void zdot_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *d)
+ {
+ BLASLONG register i = 0;
+diff --git a/kernel/power/zdot_microk_power8.c b/kernel/power/zdot_microk_power8.c
+index 296d3d469..71078b66c 100644
+--- a/kernel/power/zdot_microk_power8.c
++++ b/kernel/power/zdot_microk_power8.c
+@@ -34,186 +34,174 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ **************************************************************************************/
+
+ #define HAVE_KERNEL_8 1
+-static void zdot_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y , FLOAT *dot) __attribute__ ((noinline));
+
+-static void zdot_kernel_8( BLASLONG n, FLOAT *x, FLOAT *y, FLOAT *dot)
++static void zdot_kernel_8 (long n, double *x, double *y, double *dot)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+- "xxlxor 32,32,32 \n\t"
+- "xxlxor 33,33,33 \n\t"
+- "xxlxor 34,34,34 \n\t"
+- "xxlxor 35,35,35 \n\t"
+- "xxlxor 36,36,36 \n\t"
+- "xxlxor 37,37,37 \n\t"
+- "xxlxor 38,38,38 \n\t"
+- "xxlxor 39,39,39 \n\t"
+-
+- "dcbt %2, %8 \n\t"
+- "dcbt %3, %8 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
+- "lxvd2x 48, 0, %3 \n\t" // y0_r, y0_i
+- "lxvd2x 41, %5, %2 \n\t" // x1_r, x1_i
+- "lxvd2x 49, %5, %3 \n\t" // y1_r, y1_i
+- "lxvd2x 42, %6, %2 \n\t" // x2_r, x2_i
+- "lxvd2x 50, %6, %3 \n\t" // y2_r, y2_i
+- "lxvd2x 43, %7, %2 \n\t" // x3_r, x3_i
+- "lxvd2x 51, %7, %3 \n\t" // y3_r, y3_i
+-
+- "xxswapd 52,48 \n\t" // y0_i, y0_r
+- "xxswapd 53,49 \n\t" // y1_i, y1_r
+- "xxswapd 54,50 \n\t" // y2_i, y2_r
+- "xxswapd 55,51 \n\t" // y3_i, y3_r
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+-
+- "lxvd2x 44, 0, %2 \n\t" // x0_r, x0_i
+- "lxvd2x 56, 0, %3 \n\t" // y0_r, y0_i
+- "lxvd2x 45, %5, %2 \n\t" // x1_r, x1_i
+- "lxvd2x 57, %5, %3 \n\t" // y1_r, y1_i
+- "lxvd2x 46, %6, %2 \n\t" // x2_r, x2_i
+- "lxvd2x 58, %6, %3 \n\t" // y2_r, y2_i
+- "lxvd2x 47, %7, %2 \n\t" // x3_r, x3_i
+- "lxvd2x 59, %7, %3 \n\t" // y3_r, y3_i
+-
+- "xxswapd 60,56 \n\t" // y0_i, y0_r
+- "xxswapd 61,57 \n\t" // y1_i, y1_r
+- "xxswapd 62,58 \n\t" // y2_i, y2_r
+- "xxswapd 63,59 \n\t" // y3_i, y3_r
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %8 \n\t"
+- "dcbt %3, %8 \n\t"
+-
+- "xvmaddadp 32, 40, 48 \n\t" // x0_r * y0_r , x0_i * y0_i
+- "lxvd2x 48, 0, %3 \n\t" // y0_r, y0_i
+- "xvmaddadp 34, 41, 49 \n\t" // x1_r * y1_r , x1_i * y1_i
+- "lxvd2x 49, %5, %3 \n\t" // y1_r, y1_i
+-
+- "xvmaddadp 36, 42, 50 \n\t" // x2_r * y2_r , x2_i * y2_i
+- "lxvd2x 50, %6, %3 \n\t" // y2_r, y2_i
+- "xvmaddadp 38, 43, 51 \n\t" // x3_r * y3_r , x3_i * y3_i
+- "lxvd2x 51, %7, %3 \n\t" // y3_r, y3_i
+-
+- "xvmaddadp 33, 40, 52 \n\t" // x0_r * y0_i , x0_i * y0_r
+- "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
+- "xvmaddadp 35, 41, 53 \n\t" // x1_r * y1_i , x1_i * y1_r
+- "lxvd2x 41, %5, %2 \n\t" // x1_r, x1_i
+-
+- "xvmaddadp 37, 42, 54 \n\t" // x2_r * y2_i , x2_i * y2_r
+- "lxvd2x 42, %6, %2 \n\t" // x2_r, x2_i
+- "xvmaddadp 39, 43, 55 \n\t" // x3_r * y3_i , x3_i * y3_r
+- "lxvd2x 43, %7, %2 \n\t" // x3_r, x3_i
+-
+- "xxswapd 52,48 \n\t" // y0_i, y0_r
+- "xxswapd 53,49 \n\t" // y1_i, y1_r
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "xxswapd 54,50 \n\t" // y2_i, y2_r
+- "xxswapd 55,51 \n\t" // y3_i, y3_r
+-
+- "xvmaddadp 32, 44, 56 \n\t" // x0_r * y0_r , x0_i * y0_i
+- "lxvd2x 56, 0, %3 \n\t" // y0_r, y0_i
+- "xvmaddadp 34, 45, 57 \n\t" // x1_r * y1_r , x1_i * y1_i
+- "lxvd2x 57, %5, %3 \n\t" // y1_r, y1_i
+- "xvmaddadp 36, 46, 58 \n\t" // x2_r * y2_r , x2_i * y2_i
+- "lxvd2x 58, %6, %3 \n\t" // y2_r, y2_i
+- "xvmaddadp 38, 47, 59 \n\t" // x3_r * y3_r , x3_i * y3_i
+- "lxvd2x 59, %7, %3 \n\t" // y3_r, y3_i
+-
+- "xvmaddadp 33, 44, 60 \n\t" // x0_r * y0_i , x0_i * y0_r
+- "lxvd2x 44, 0, %2 \n\t" // x0_r, x0_i
+- "xvmaddadp 35, 45, 61 \n\t" // x1_r * y1_i , x1_i * y1_r
+- "lxvd2x 45, %5, %2 \n\t" // x1_r, x1_i
+- "xvmaddadp 37, 46, 62 \n\t" // x2_r * y2_i , x2_i * y2_r
+- "lxvd2x 46, %6, %2 \n\t" // x2_r, x2_i
+- "xvmaddadp 39, 47, 63 \n\t" // x3_r * y3_i , x3_i * y3_r
+- "lxvd2x 47, %7, %2 \n\t" // x3_r, x3_i
+-
+- "xxswapd 60,56 \n\t" // y0_i, y0_r
+- "xxswapd 61,57 \n\t" // y1_i, y1_r
+-
+- "addi %2, %2, 64 \n\t"
+- "addi %3, %3, 64 \n\t"
+-
+- "xxswapd 62,58 \n\t" // y2_i, y2_r
+- "xxswapd 63,59 \n\t" // y3_i, y3_r
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmaddadp 32, 40, 48 \n\t" // x0_r * y0_r , x0_i * y0_i
+- "xvmaddadp 34, 41, 49 \n\t" // x1_r * y1_r , x1_i * y1_i
+- "xvmaddadp 36, 42, 50 \n\t" // x2_r * y2_r , x2_i * y2_i
+- "xvmaddadp 38, 43, 51 \n\t" // x3_r * y3_r , x3_i * y3_i
+-
+- "xvmaddadp 33, 40, 52 \n\t" // x0_r * y0_i , x0_i * y0_r
+- "xvmaddadp 35, 41, 53 \n\t" // x1_r * y1_i , x1_i * y1_r
+- "xvmaddadp 37, 42, 54 \n\t" // x2_r * y2_i , x2_i * y2_r
+- "xvmaddadp 39, 43, 55 \n\t" // x3_r * y3_i , x3_i * y3_r
+-
+- "xvmaddadp 32, 44, 56 \n\t" // x0_r * y0_r , x0_i * y0_i
+- "xvmaddadp 34, 45, 57 \n\t" // x1_r * y1_r , x1_i * y1_i
+- "xvmaddadp 36, 46, 58 \n\t" // x2_r * y2_r , x2_i * y2_i
+- "xvmaddadp 38, 47, 59 \n\t" // x3_r * y3_r , x3_i * y3_i
+-
+- "xvmaddadp 33, 44, 60 \n\t" // x0_r * y0_i , x0_i * y0_r
+- "xvmaddadp 35, 45, 61 \n\t" // x1_r * y1_i , x1_i * y1_r
+- "xvmaddadp 37, 46, 62 \n\t" // x2_r * y2_i , x2_i * y2_r
+- "xvmaddadp 39, 47, 63 \n\t" // x3_r * y3_i , x3_i * y3_r
+-
+-
+- "xvadddp 32, 32, 34 \n\t"
+- "xvadddp 36, 36, 38 \n\t"
+-
+- "xvadddp 33, 33, 35 \n\t"
+- "xvadddp 37, 37, 39 \n\t"
+-
+- "xvadddp 32, 32, 36 \n\t"
+- "xvadddp 33, 33, 37 \n\t"
+-
+- "stxvd2x 32, 0, %4 \n\t"
+- "stxvd2x 33, %5, %4 \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (n), // 1
+- "r" (x1), // 2
+- "r" (y1), // 3
+- "r" (dot), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (pre) // 8
+- : "cr0", "%0", "%2" , "%3", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++ "dcbt 0, %3 \n\t"
++
++ "xxlxor 32, 32, 32 \n\t"
++ "xxlxor 33, 33, 33 \n\t"
++ "xxlxor 34, 34, 34 \n\t"
++ "xxlxor 35, 35, 35 \n\t"
++ "xxlxor 36, 36, 36 \n\t"
++ "xxlxor 37, 37, 37 \n\t"
++ "xxlxor 38, 38, 38 \n\t"
++ "xxlxor 39, 39, 39 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
++ "lxvd2x 48, 0, %3 \n\t" // y0_r, y0_i
++ "lxvd2x 41, %7, %2 \n\t" // x1_r, x1_i
++ "lxvd2x 49, %7, %3 \n\t" // y1_r, y1_i
++ "lxvd2x 42, %8, %2 \n\t" // x2_r, x2_i
++ "lxvd2x 50, %8, %3 \n\t" // y2_r, y2_i
++ "lxvd2x 43, %9, %2 \n\t" // x3_r, x3_i
++ "lxvd2x 51, %9, %3 \n\t" // y3_r, y3_i
++
++ "xxswapd 0, 48 \n\t" // y0_i, y0_r
++ "xxswapd 1, 49 \n\t" // y1_i, y1_r
++ "xxswapd 2, 50 \n\t" // y2_i, y2_r
++ "xxswapd 3, 51 \n\t" // y3_i, y3_r
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "lxvd2x 44, 0, %2 \n\t" // x0_r, x0_i
++ "lxvd2x 4, 0, %3 \n\t" // y0_r, y0_i
++ "lxvd2x 45, %7, %2 \n\t" // x1_r, x1_i
++ "lxvd2x 5, %7, %3 \n\t" // y1_r, y1_i
++ "lxvd2x 46, %8, %2 \n\t" // x2_r, x2_i
++ "lxvd2x 6, %8, %3 \n\t" // y2_r, y2_i
++ "lxvd2x 47, %9, %2 \n\t" // x3_r, x3_i
++ "lxvd2x 7, %9, %3 \n\t" // y3_r, y3_i
++
++ "xxswapd 8, 4 \n\t" // y0_i, y0_r
++ "xxswapd 9, 5 \n\t" // y1_i, y1_r
++ "xxswapd 10, 6 \n\t" // y2_i, y2_r
++ "xxswapd 11, 7 \n\t" // y3_i, y3_r
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmaddadp 32, 40, 48 \n\t" // x0_r * y0_r , x0_i * y0_i
++ "lxvd2x 48, 0, %3 \n\t" // y0_r, y0_i
++ "xvmaddadp 34, 41, 49 \n\t" // x1_r * y1_r , x1_i * y1_i
++ "lxvd2x 49, %7, %3 \n\t" // y1_r, y1_i
++
++ "xvmaddadp 36, 42, 50 \n\t" // x2_r * y2_r , x2_i * y2_i
++ "lxvd2x 50, %8, %3 \n\t" // y2_r, y2_i
++ "xvmaddadp 38, 43, 51 \n\t" // x3_r * y3_r , x3_i * y3_i
++ "lxvd2x 51, %9, %3 \n\t" // y3_r, y3_i
++
++ "xvmaddadp 33, 40, 0 \n\t" // x0_r * y0_i , x0_i * y0_r
++ "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
++ "xvmaddadp 35, 41, 1 \n\t" // x1_r * y1_i , x1_i * y1_r
++ "lxvd2x 41, %7, %2 \n\t" // x1_r, x1_i
++
++ "xvmaddadp 37, 42, 2 \n\t" // x2_r * y2_i , x2_i * y2_r
++ "lxvd2x 42, %8, %2 \n\t" // x2_r, x2_i
++ "xvmaddadp 39, 43, 3 \n\t" // x3_r * y3_i , x3_i * y3_r
++ "lxvd2x 43, %9, %2 \n\t" // x3_r, x3_i
++
++ "xxswapd 0,48 \n\t" // y0_i, y0_r
++ "xxswapd 1,49 \n\t" // y1_i, y1_r
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "xxswapd 2,50 \n\t" // y2_i, y2_r
++ "xxswapd 3,51 \n\t" // y3_i, y3_r
++
++ "xvmaddadp 32, 44, 4 \n\t" // x0_r * y0_r , x0_i * y0_i
++ "lxvd2x 4, 0, %3 \n\t" // y0_r, y0_i
++ "xvmaddadp 34, 45, 5 \n\t" // x1_r * y1_r , x1_i * y1_i
++ "lxvd2x 5, %7, %3 \n\t" // y1_r, y1_i
++ "xvmaddadp 36, 46, 6 \n\t" // x2_r * y2_r , x2_i * y2_i
++ "lxvd2x 6, %8, %3 \n\t" // y2_r, y2_i
++ "xvmaddadp 38, 47, 7 \n\t" // x3_r * y3_r , x3_i * y3_i
++ "lxvd2x 7, %9, %3 \n\t" // y3_r, y3_i
++
++ "xvmaddadp 33, 44, 8 \n\t" // x0_r * y0_i , x0_i * y0_r
++ "lxvd2x 44, 0, %2 \n\t" // x0_r, x0_i
++ "xvmaddadp 35, 45, 9 \n\t" // x1_r * y1_i , x1_i * y1_r
++ "lxvd2x 45, %7, %2 \n\t" // x1_r, x1_i
++ "xvmaddadp 37, 46, 10 \n\t" // x2_r * y2_i , x2_i * y2_r
++ "lxvd2x 46, %8, %2 \n\t" // x2_r, x2_i
++ "xvmaddadp 39, 47, 11 \n\t" // x3_r * y3_i , x3_i * y3_r
++ "lxvd2x 47, %9, %2 \n\t" // x3_r, x3_i
++
++ "xxswapd 8,4 \n\t" // y0_i, y0_r
++ "xxswapd 9,5 \n\t" // y1_i, y1_r
++
++ "addi %2, %2, 64 \n\t"
++ "addi %3, %3, 64 \n\t"
++
++ "xxswapd 10,6 \n\t" // y2_i, y2_r
++ "xxswapd 11,7 \n\t" // y3_i, y3_r
++
++ "addic. %1, %1, -8 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmaddadp 32, 40, 48 \n\t" // x0_r * y0_r , x0_i * y0_i
++ "xvmaddadp 34, 41, 49 \n\t" // x1_r * y1_r , x1_i * y1_i
++ "xvmaddadp 36, 42, 50 \n\t" // x2_r * y2_r , x2_i * y2_i
++ "xvmaddadp 38, 43, 51 \n\t" // x3_r * y3_r , x3_i * y3_i
++
++ "xvmaddadp 33, 40, 0 \n\t" // x0_r * y0_i , x0_i * y0_r
++ "xvmaddadp 35, 41, 1 \n\t" // x1_r * y1_i , x1_i * y1_r
++ "xvmaddadp 37, 42, 2 \n\t" // x2_r * y2_i , x2_i * y2_r
++ "xvmaddadp 39, 43, 3 \n\t" // x3_r * y3_i , x3_i * y3_r
++
++ "xvmaddadp 32, 44, 4 \n\t" // x0_r * y0_r , x0_i * y0_i
++ "xvmaddadp 34, 45, 5 \n\t" // x1_r * y1_r , x1_i * y1_i
++ "xvmaddadp 36, 46, 6 \n\t" // x2_r * y2_r , x2_i * y2_i
++ "xvmaddadp 38, 47, 7 \n\t" // x3_r * y3_r , x3_i * y3_i
++
++ "xvmaddadp 33, 44, 8 \n\t" // x0_r * y0_i , x0_i * y0_r
++ "xvmaddadp 35, 45, 9 \n\t" // x1_r * y1_i , x1_i * y1_r
++ "xvmaddadp 37, 46, 10 \n\t" // x2_r * y2_i , x2_i * y2_r
++ "xvmaddadp 39, 47, 11 \n\t" // x3_r * y3_i , x3_i * y3_r
++
++ "xvadddp 32, 32, 34 \n\t"
++ "xvadddp 36, 36, 38 \n\t"
++
++ "xvadddp 33, 33, 35 \n\t"
++ "xvadddp 37, 37, 39 \n\t"
++
++ "xvadddp 32, 32, 36 \n\t"
++ "xvadddp 33, 33, 37 \n\t"
++
++ "stxvd2x 32, 0, %6 \n\t"
++ "stxvd2x 33, %7, %6 \n"
++
++ "#n=%1 x=%4=%2 y=%5=%3 dot=%0=%6 o16=%7 o32=%8 o48=%9"
++ :
++ "=m" (*dot),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "+b" (y) // 3
++ :
++ "m" (*x),
++ "m" (*y),
++ "b" (dot), // 6
++ "b" (16), // 7
++ "b" (32), // 8
++ "b" (48) // 9
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51","vs0","vs1","vs2","vs3",
++ "vs4","vs5","vs6","vs7","vs8","vs9","vs10","vs11"
++ );
++}
+diff --git a/kernel/power/zscal.c b/kernel/power/zscal.c
+index 410fc9840..14d677f24 100644
+--- a/kernel/power/zscal.c
++++ b/kernel/power/zscal.c
+@@ -47,15 +47,15 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #ifndef HAVE_KERNEL_8
+
+-static void zscal_kernel_8(BLASLONG n, FLOAT *x, FLOAT *alpha)
++static void zscal_kernel_8(BLASLONG n, FLOAT *x, FLOAT da_r, FLOAT da_i)
+ {
+
+ BLASLONG i=0;
+ FLOAT *x1=x;
+- FLOAT alpha_r1=alpha[0];
+- FLOAT alpha_r2=alpha[1];
+- FLOAT alpha_i1=alpha[2];
+- FLOAT alpha_i2=alpha[3];
++ FLOAT alpha_r1=da_r;
++ FLOAT alpha_r2=da_r;
++ FLOAT alpha_i1=-da_i;
++ FLOAT alpha_i2=da_i;
+ FLOAT temp00, temp01, temp10, temp11, temp20, temp21, temp30, temp31;
+ FLOAT x0_r, x0_i, x1_r, x1_i, x2_r, x2_i, x3_r, x3_i;
+
+@@ -116,7 +116,6 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r,FLOAT da_i, F
+ BLASLONG inc_x2;
+ BLASLONG ip = 0;
+ FLOAT temp;
+- FLOAT alpha[4] __attribute__ ((aligned (16)));;
+ BLASLONG n1;
+
+ if ( n <= 0 )
+@@ -147,11 +146,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da_r,FLOAT da_i, F
+ n1 = n & -8;
+ if ( n1 > 0 )
+ {
+- alpha[0] = da_r;
+- alpha[1] = da_r;
+- alpha[2] = -da_i;
+- alpha[3] = da_i;
+- zscal_kernel_8(n1, x, alpha);
++ zscal_kernel_8(n1, x, da_r, da_i);
+ i=n1;
+ ip = n1 * 2;
+
+diff --git a/kernel/power/zscal_microk_power8.c b/kernel/power/zscal_microk_power8.c
+index 5e09d8d79..aba9029a0 100644
+--- a/kernel/power/zscal_microk_power8.c
++++ b/kernel/power/zscal_microk_power8.c
+@@ -38,187 +38,202 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_8 1
+
+-static void zscal_kernel_8( BLASLONG n, FLOAT *x, FLOAT *alpha) __attribute__ ((noinline));
+-
+-static void zscal_kernel_8( BLASLONG n, FLOAT *x, FLOAT *alpha)
++static void zscal_kernel_8 (long n, double *x, double alpha_r, double alpha_i)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *x2=x+1;
+- BLASLONG pre = 384;
+-
+- __asm__ __volatile__
+- (
+-
+- "lxvd2x 32, 0, %3 \n\t" // alpha_r , alpha_r
+- "lxvd2x 33, %5, %3 \n\t" // -alpha_i , alpha_i
+- "addi %1, %1, -8 \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "ble 2f \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "dcbt %2, %4 \n\t"
+-
+- "xvmuldp 48, 40, 32 \n\t" // x0_r * alpha_r, x0_i * alpha_r
+- "xvmuldp 49, 41, 32 \n\t"
+- "xvmuldp 50, 42, 32 \n\t"
+- "xvmuldp 51, 43, 32 \n\t"
+- "xvmuldp 52, 44, 32 \n\t"
+- "xvmuldp 53, 45, 32 \n\t"
+- "xvmuldp 54, 46, 32 \n\t"
+- "xvmuldp 55, 47, 32 \n\t"
+-
+- "xxswapd 56, 40 \n\t"
+- "xxswapd 57, 41 \n\t"
+- "xxswapd 58, 42 \n\t"
+- "xxswapd 59, 43 \n\t"
+- "xxswapd 60, 44 \n\t"
+- "xxswapd 61, 45 \n\t"
+- "xxswapd 62, 46 \n\t"
+- "xxswapd 63, 47 \n\t"
+-
+- "xvmuldp 56, 56, 33 \n\t" // x0_i * -alpha_i, x0_r * alpha_i
+- "xvmuldp 57, 57, 33 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
+- "lxvd2x 41, %5, %2 \n\t"
+-
+- "xvmuldp 58, 58, 33 \n\t"
+- "xvmuldp 59, 59, 33 \n\t"
+-
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+-
+- "xvmuldp 60, 60, 33 \n\t"
+- "xvmuldp 61, 61, 33 \n\t"
+-
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+-
+- "xvmuldp 62, 62, 33 \n\t"
+- "xvmuldp 63, 63, 33 \n\t"
+-
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "xvadddp 48, 48 , 56 \n\t"
+- "xvadddp 49, 49 , 57 \n\t"
+- "xvadddp 50, 50 , 58 \n\t"
+- "xvadddp 51, 51 , 59 \n\t"
+-
+- "stxvd2x 48, 0, %1 \n\t"
+- "stxvd2x 49, %5, %1 \n\t"
+-
+- "xvadddp 52, 52 , 60 \n\t"
+- "xvadddp 53, 53 , 61 \n\t"
+-
+- "stxvd2x 50, %6, %1 \n\t"
+- "stxvd2x 51, %7, %1 \n\t"
+-
+- "xvadddp 54, 54 , 62 \n\t"
+- "xvadddp 55, 55 , 63 \n\t"
+-
+- "stxvd2x 52, %8, %1 \n\t"
+- "stxvd2x 53, %9, %1 \n\t"
+- "stxvd2x 54, %10, %1 \n\t"
+- "stxvd2x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+- "addi %2, %2, 128 \n\t"
+-
+- "addic. %0 , %0 , -8 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- "xvmuldp 48, 40, 32 \n\t" // x0_r * alpha_r, x0_i * alpha_r
+- "xvmuldp 49, 41, 32 \n\t"
+- "xvmuldp 50, 42, 32 \n\t"
+- "xvmuldp 51, 43, 32 \n\t"
+- "xvmuldp 52, 44, 32 \n\t"
+- "xvmuldp 53, 45, 32 \n\t"
+- "xvmuldp 54, 46, 32 \n\t"
+- "xvmuldp 55, 47, 32 \n\t"
+-
+- "xxswapd 56, 40 \n\t"
+- "xxswapd 57, 41 \n\t"
+- "xxswapd 58, 42 \n\t"
+- "xxswapd 59, 43 \n\t"
+- "xxswapd 60, 44 \n\t"
+- "xxswapd 61, 45 \n\t"
+- "xxswapd 62, 46 \n\t"
+- "xxswapd 63, 47 \n\t"
+-
+- "xvmuldp 56, 56, 33 \n\t" // x0_i * -alpha_i, x0_r * alpha_i
+- "xvmuldp 57, 57, 33 \n\t"
+- "xvmuldp 58, 58, 33 \n\t"
+- "xvmuldp 59, 59, 33 \n\t"
+- "xvmuldp 60, 60, 33 \n\t"
+- "xvmuldp 61, 61, 33 \n\t"
+- "xvmuldp 62, 62, 33 \n\t"
+- "xvmuldp 63, 63, 33 \n\t"
+-
+- "xvadddp 48, 48 , 56 \n\t"
+- "xvadddp 49, 49 , 57 \n\t"
+- "xvadddp 50, 50 , 58 \n\t"
+- "xvadddp 51, 51 , 59 \n\t"
+- "xvadddp 52, 52 , 60 \n\t"
+- "xvadddp 53, 53 , 61 \n\t"
+- "xvadddp 54, 54 , 62 \n\t"
+- "xvadddp 55, 55 , 63 \n\t"
+-
+- "stxvd2x 48, 0, %1 \n\t"
+- "stxvd2x 49, %5, %1 \n\t"
+- "stxvd2x 50, %6, %1 \n\t"
+- "stxvd2x 51, %7, %1 \n\t"
+- "stxvd2x 52, %8, %1 \n\t"
+- "stxvd2x 53, %9, %1 \n\t"
+- "stxvd2x 54, %10, %1 \n\t"
+- "stxvd2x 55, %11, %1 \n\t"
+-
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (x2), // 1
+- "r" (x1), // 2
+- "r" (alpha), // 3
+- "r" (pre), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "memory"
+- );
+-
+-}
+-
+-
++ __vector double t0;
++ __vector double t1;
++ __vector double t2;
++ __vector double t3;
++ __vector double t4;
++ __vector double t5;
++ __vector double t6;
++ __vector double t7;
++ __vector double t8;
++ __vector double t9;
++ __vector double t10;
++ __vector double t11;
++
++ __asm__
++ (
++ "dcbt 0, %2 \n\t"
++
++ "xsnegdp 33, %x16 \n\t" // -alpha_i
++ "xxspltd 32, %x15, 0 \n\t" // alpha_r , alpha_r
++ "xxmrghd 33, 33, %x16 \n\t" // -alpha_i , alpha_i
++
++ "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
++ "lxvd2x 41, %17, %2 \n\t"
++ "lxvd2x 42, %18, %2 \n\t"
++ "lxvd2x 43, %19, %2 \n\t"
++ "lxvd2x 44, %20, %2 \n\t"
++ "lxvd2x 45, %21, %2 \n\t"
++ "lxvd2x 46, %22, %2 \n\t"
++ "lxvd2x 47, %23, %2 \n\t"
++
++ "addi %2, %2, 128 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "ble 2f \n\t"
++
++ ".p2align 5 \n"
++ "1: \n\t"
++
++ "xvmuldp 48, 40, 32 \n\t" // x0_r * alpha_r, x0_i * alpha_r
++ "xvmuldp 49, 41, 32 \n\t"
++ "xvmuldp 50, 42, 32 \n\t"
++ "xvmuldp 51, 43, 32 \n\t"
++ "xvmuldp %x3, 44, 32 \n\t"
++ "xvmuldp %x4, 45, 32 \n\t"
++ "xvmuldp %x5, 46, 32 \n\t"
++ "xvmuldp %x6, 47, 32 \n\t"
++
++ "xxswapd %x7, 40 \n\t"
++ "xxswapd %x8, 41 \n\t"
++ "xxswapd %x9, 42 \n\t"
++ "xxswapd %x10, 43 \n\t"
++ "xxswapd %x11, 44 \n\t"
++ "xxswapd %x12, 45 \n\t"
++ "xxswapd %x13, 46 \n\t"
++ "xxswapd %x14, 47 \n\t"
++
++ "xvmuldp %x7, %x7, 33 \n\t" // x0_i * -alpha_i, x0_r * alpha_i
++ "xvmuldp %x8, %x8, 33 \n\t"
++
++ "lxvd2x 40, 0, %2 \n\t" // x0_r, x0_i
++ "lxvd2x 41, %17, %2 \n\t"
++
++ "xvmuldp %x9, %x9, 33 \n\t"
++ "xvmuldp %x10, %x10, 33 \n\t"
++
++ "lxvd2x 42, %18, %2 \n\t"
++ "lxvd2x 43, %19, %2 \n\t"
++
++ "xvmuldp %x11, %x11, 33 \n\t"
++ "xvmuldp %x12, %x12, 33 \n\t"
++
++ "lxvd2x 44, %20, %2 \n\t"
++ "lxvd2x 45, %21, %2 \n\t"
++
++ "xvmuldp %x13, %x13, 33 \n\t"
++ "xvmuldp %x14, %x14, 33 \n\t"
++
++ "lxvd2x 46, %22, %2 \n\t"
++ "lxvd2x 47, %23, %2 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "xvadddp 48, 48, %x7 \n\t"
++ "xvadddp 49, 49, %x8 \n\t"
++ "xvadddp 50, 50, %x9 \n\t"
++ "xvadddp 51, 51, %x10 \n\t"
++
++ "stxvd2x 48, 0, %2 \n\t"
++ "stxvd2x 49, %17, %2 \n\t"
++
++ "xvadddp %x3, %x3, %x11 \n\t"
++ "xvadddp %x4, %x4, %x12 \n\t"
++
++ "stxvd2x 50, %18, %2 \n\t"
++ "stxvd2x 51, %19, %2 \n\t"
++
++ "xvadddp %x5, %x5, %x13 \n\t"
++ "xvadddp %x6, %x6, %x14 \n\t"
++
++ "stxvd2x %x3, %20, %2 \n\t"
++ "stxvd2x %x4, %21, %2 \n\t"
++ "stxvd2x %x5, %22, %2 \n\t"
++ "stxvd2x %x6, %23, %2 \n\t"
++
++ "addi %2, %2, 256 \n\t"
++
++ "addic. %1, %1, -8 \n\t"
++ "bgt 1b \n"
++
++ "2: \n\t"
++
++ "xvmuldp 48, 40, 32 \n\t" // x0_r * alpha_r, x0_i * alpha_r
++ "xvmuldp 49, 41, 32 \n\t"
++ "xvmuldp 50, 42, 32 \n\t"
++ "xvmuldp 51, 43, 32 \n\t"
++ "xvmuldp %x3, 44, 32 \n\t"
++ "xvmuldp %x4, 45, 32 \n\t"
++ "xvmuldp %x5, 46, 32 \n\t"
++ "xvmuldp %x6, 47, 32 \n\t"
++
++ "xxswapd %x7, 40 \n\t"
++ "xxswapd %x8, 41 \n\t"
++ "xxswapd %x9, 42 \n\t"
++ "xxswapd %x10, 43 \n\t"
++ "xxswapd %x11, 44 \n\t"
++ "xxswapd %x12, 45 \n\t"
++ "xxswapd %x13, 46 \n\t"
++ "xxswapd %x14, 47 \n\t"
++
++ "addi %2, %2, -128 \n\t"
++
++ "xvmuldp %x7, %x7, 33 \n\t" // x0_i * -alpha_i, x0_r * alpha_i
++ "xvmuldp %x8, %x8, 33 \n\t"
++ "xvmuldp %x9, %x9, 33 \n\t"
++ "xvmuldp %x10, %x10, 33 \n\t"
++ "xvmuldp %x11, %x11, 33 \n\t"
++ "xvmuldp %x12, %x12, 33 \n\t"
++ "xvmuldp %x13, %x13, 33 \n\t"
++ "xvmuldp %x14, %x14, 33 \n\t"
++
++ "xvadddp 48, 48, %x7 \n\t"
++ "xvadddp 49, 49, %x8 \n\t"
++ "xvadddp 50, 50, %x9 \n\t"
++ "xvadddp 51, 51, %x10 \n\t"
++
++ "stxvd2x 48, 0, %2 \n\t"
++ "stxvd2x 49, %17, %2 \n\t"
++
++ "xvadddp %x3, %x3, %x11 \n\t"
++ "xvadddp %x4, %x4, %x12 \n\t"
++
++ "stxvd2x 50, %18, %2 \n\t"
++ "stxvd2x 51, %19, %2 \n\t"
++
++ "xvadddp %x5, %x5, %x13 \n\t"
++ "xvadddp %x6, %x6, %x14 \n\t"
++
++ "stxvd2x %x3, %20, %2 \n\t"
++ "stxvd2x %x4, %21, %2 \n\t"
++ "stxvd2x %x5, %22, %2 \n\t"
++ "stxvd2x %x6, %23, %2 \n"
++
++ "#n=%1 x=%0=%2 alpha=(%15,%16) o16=%17 o32=%18 o48=%19 o64=%20 o80=%21 o96=%22 o112=%23\n"
++ "#t0=%x3 t1=%x4 t2=%x5 t3=%x6 t4=%x7 t5=%x8 t6=%x9 t7=%x10 t8=%x11 t9=%x12 t10=%x13 t11=%x14"
++ :
++ "+m" (*x),
++ "+r" (n), // 1
++ "+b" (x), // 2
++ "=wa" (t0), // 3
++ "=wa" (t1), // 4
++ "=wa" (t2), // 5
++ "=wa" (t3), // 6
++ "=wa" (t4), // 7
++ "=wa" (t5), // 8
++ "=wa" (t6), // 9
++ "=wa" (t7), // 10
++ "=wa" (t8), // 11
++ "=wa" (t9), // 12
++ "=wa" (t10), // 13
++ "=wa" (t11) // 14
++ :
++ "d" (alpha_r), // 15
++ "d" (alpha_i), // 16
++ "b" (16), // 17
++ "b" (32), // 18
++ "b" (48), // 19
++ "b" (64), // 20
++ "b" (80), // 21
++ "b" (96), // 22
++ "b" (112) // 23
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51"
++ );
++}
+diff --git a/kernel/power/zswap_microk_power8.c b/kernel/power/zswap_microk_power8.c
+index 9e5623752..54391ba5d 100644
+--- a/kernel/power/zswap_microk_power8.c
++++ b/kernel/power/zswap_microk_power8.c
+@@ -35,146 +35,123 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+ #define HAVE_KERNEL_16 1
+
+-static void zswap_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y) __attribute__ ((noinline));
+-
+-static void zswap_kernel_16( BLASLONG n, FLOAT *x, FLOAT *y)
++static void
++zswap_kernel_16 (long n, double *x, double *y)
+ {
+-
+-
+- BLASLONG i = n;
+- BLASLONG o16 = 16;
+- BLASLONG o32 = 32;
+- BLASLONG o48 = 48;
+- BLASLONG o64 = 64;
+- BLASLONG o80 = 80;
+- BLASLONG o96 = 96;
+- BLASLONG o112 = 112;
+- FLOAT *x1=x;
+- FLOAT *y1=y;
+- FLOAT *x2=x+1;
+- FLOAT *y2=y+1;
+- BLASLONG pre = 384;
+- BLASLONG alpha=0;
+-
+- __asm__ __volatile__
+- (
+-
+- "addi %3, %3, -8 \n\t"
+- "addi %4, %4, -8 \n\t"
+-
+- ".align 5 \n\t"
+- "1: \n\t"
+-
+- "lxvd2x 32, 0, %2 \n\t"
+- "lxvd2x 33, %5, %2 \n\t"
+- "lxvd2x 34, %6, %2 \n\t"
+- "lxvd2x 35, %7, %2 \n\t"
+- "lxvd2x 36, %8, %2 \n\t"
+- "lxvd2x 37, %9, %2 \n\t"
+- "lxvd2x 38, %10, %2 \n\t"
+- "lxvd2x 39, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 40, 0, %2 \n\t"
+- "lxvd2x 41, %5, %2 \n\t"
+- "lxvd2x 42, %6, %2 \n\t"
+- "lxvd2x 43, %7, %2 \n\t"
+- "lxvd2x 44, %8, %2 \n\t"
+- "lxvd2x 45, %9, %2 \n\t"
+- "lxvd2x 46, %10, %2 \n\t"
+- "lxvd2x 47, %11, %2 \n\t"
+-
+- "addi %2, %2, 128 \n\t"
+-
+- "lxvd2x 48, 0, %1 \n\t"
+- "lxvd2x 49, %5, %1 \n\t"
+- "lxvd2x 50, %6, %1 \n\t"
+- "lxvd2x 51, %7, %1 \n\t"
+- "lxvd2x 52, %8, %1 \n\t"
+- "lxvd2x 53, %9, %1 \n\t"
+- "lxvd2x 54, %10, %1 \n\t"
+- "lxvd2x 55, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "lxvd2x 56, 0, %1 \n\t"
+- "lxvd2x 57, %5, %1 \n\t"
+- "lxvd2x 58, %6, %1 \n\t"
+- "lxvd2x 59, %7, %1 \n\t"
+- "lxvd2x 60, %8, %1 \n\t"
+- "lxvd2x 61, %9, %1 \n\t"
+- "lxvd2x 62, %10, %1 \n\t"
+- "lxvd2x 63, %11, %1 \n\t"
+-
+- "addi %1, %1, 128 \n\t"
+-
+- "stxvd2x 32, 0, %3 \n\t"
+- "stxvd2x 33, %5, %3 \n\t"
+- "stxvd2x 34, %6, %3 \n\t"
+- "stxvd2x 35, %7, %3 \n\t"
+- "stxvd2x 36, %8, %3 \n\t"
+- "stxvd2x 37, %9, %3 \n\t"
+- "stxvd2x 38, %10, %3 \n\t"
+- "stxvd2x 39, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvd2x 40, 0, %3 \n\t"
+- "stxvd2x 41, %5, %3 \n\t"
+- "stxvd2x 42, %6, %3 \n\t"
+- "stxvd2x 43, %7, %3 \n\t"
+- "stxvd2x 44, %8, %3 \n\t"
+- "stxvd2x 45, %9, %3 \n\t"
+- "stxvd2x 46, %10, %3 \n\t"
+- "stxvd2x 47, %11, %3 \n\t"
+-
+- "addi %3, %3, 128 \n\t"
+-
+- "stxvd2x 48, 0, %4 \n\t"
+- "stxvd2x 49, %5, %4 \n\t"
+- "stxvd2x 50, %6, %4 \n\t"
+- "stxvd2x 51, %7, %4 \n\t"
+- "stxvd2x 52, %8, %4 \n\t"
+- "stxvd2x 53, %9, %4 \n\t"
+- "stxvd2x 54, %10, %4 \n\t"
+- "stxvd2x 55, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "stxvd2x 56, 0, %4 \n\t"
+- "stxvd2x 57, %5, %4 \n\t"
+- "stxvd2x 58, %6, %4 \n\t"
+- "stxvd2x 59, %7, %4 \n\t"
+- "stxvd2x 60, %8, %4 \n\t"
+- "stxvd2x 61, %9, %4 \n\t"
+- "stxvd2x 62, %10, %4 \n\t"
+- "stxvd2x 63, %11, %4 \n\t"
+-
+- "addi %4, %4, 128 \n\t"
+-
+- "addic. %0 , %0 , -16 \n\t"
+- "bgt 1b \n\t"
+-
+- "2: \n\t"
+-
+- :
+- :
+- "r" (i), // 0
+- "r" (y1), // 1
+- "r" (x1), // 2
+- "r" (y2), // 3
+- "r" (x2), // 4
+- "r" (o16), // 5
+- "r" (o32), // 6
+- "r" (o48), // 7
+- "r" (o64), // 8
+- "r" (o80), // 9
+- "r" (o96), // 10
+- "r" (o112) // 11
+- : "cr0", "%0", "%2" , "%1", "%3", "%4", "memory"
+- );
+-
+-}
+-
+-
++ __asm__
++ (
++ ".p2align 5 \n"
++ "1: \n\t"
++ "lxvd2x 32, 0, %4 \n\t"
++ "lxvd2x 33, %5, %4 \n\t"
++ "lxvd2x 34, %6, %4 \n\t"
++ "lxvd2x 35, %7, %4 \n\t"
++ "lxvd2x 36, %8, %4 \n\t"
++ "lxvd2x 37, %9, %4 \n\t"
++ "lxvd2x 38, %10, %4 \n\t"
++ "lxvd2x 39, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "lxvd2x 40, 0, %4 \n\t"
++ "lxvd2x 41, %5, %4 \n\t"
++ "lxvd2x 42, %6, %4 \n\t"
++ "lxvd2x 43, %7, %4 \n\t"
++ "lxvd2x 44, %8, %4 \n\t"
++ "lxvd2x 45, %9, %4 \n\t"
++ "lxvd2x 46, %10, %4 \n\t"
++ "lxvd2x 47, %11, %4 \n\t"
++
++ "addi %4, %4, -128 \n\t"
++
++ "lxvd2x 48, 0, %3 \n\t"
++ "lxvd2x 49, %5, %3 \n\t"
++ "lxvd2x 50, %6, %3 \n\t"
++ "lxvd2x 51, %7, %3 \n\t"
++ "lxvd2x 0, %8, %3 \n\t"
++ "lxvd2x 1, %9, %3 \n\t"
++ "lxvd2x 2, %10, %3 \n\t"
++ "lxvd2x 3, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "lxvd2x 4, 0, %3 \n\t"
++ "lxvd2x 5, %5, %3 \n\t"
++ "lxvd2x 6, %6, %3 \n\t"
++ "lxvd2x 7, %7, %3 \n\t"
++ "lxvd2x 8, %8, %3 \n\t"
++ "lxvd2x 9, %9, %3 \n\t"
++ "lxvd2x 10, %10, %3 \n\t"
++ "lxvd2x 11, %11, %3 \n\t"
++
++ "addi %3, %3, -128 \n\t"
++
++ "stxvd2x 32, 0, %3 \n\t"
++ "stxvd2x 33, %5, %3 \n\t"
++ "stxvd2x 34, %6, %3 \n\t"
++ "stxvd2x 35, %7, %3 \n\t"
++ "stxvd2x 36, %8, %3 \n\t"
++ "stxvd2x 37, %9, %3 \n\t"
++ "stxvd2x 38, %10, %3 \n\t"
++ "stxvd2x 39, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 40, 0, %3 \n\t"
++ "stxvd2x 41, %5, %3 \n\t"
++ "stxvd2x 42, %6, %3 \n\t"
++ "stxvd2x 43, %7, %3 \n\t"
++ "stxvd2x 44, %8, %3 \n\t"
++ "stxvd2x 45, %9, %3 \n\t"
++ "stxvd2x 46, %10, %3 \n\t"
++ "stxvd2x 47, %11, %3 \n\t"
++
++ "addi %3, %3, 128 \n\t"
++
++ "stxvd2x 48, 0, %4 \n\t"
++ "stxvd2x 49, %5, %4 \n\t"
++ "stxvd2x 50, %6, %4 \n\t"
++ "stxvd2x 51, %7, %4 \n\t"
++ "stxvd2x 0, %8, %4 \n\t"
++ "stxvd2x 1, %9, %4 \n\t"
++ "stxvd2x 2, %10, %4 \n\t"
++ "stxvd2x 3, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++
++ "stxvd2x 4, 0, %4 \n\t"
++ "stxvd2x 5, %5, %4 \n\t"
++ "stxvd2x 6, %6, %4 \n\t"
++ "stxvd2x 7, %7, %4 \n\t"
++ "stxvd2x 8, %8, %4 \n\t"
++ "stxvd2x 9, %9, %4 \n\t"
++ "stxvd2x 10, %10, %4 \n\t"
++ "stxvd2x 11, %11, %4 \n\t"
++
++ "addi %4, %4, 128 \n\t"
++ "addic. %2, %2, -16 \n\t"
++ "bgt 1b \n"
++
++ "#n=%2 x=%0=%3 y=%1=%4 o16=%5 o32=%6 o48=%7 o64=%8 o80=%9 o96=%10 o112=%11"
++ :
++ "+m" (*x),
++ "+m" (*y),
++ "+r" (n), // 2
++ "+b" (x), // 3
++ "+b" (y) // 4
++ :
++ "b" (16), // 5
++ "b" (32), // 6
++ "b" (48), // 7
++ "b" (64), // 8
++ "b" (80), // 9
++ "b" (96), // 10
++ "b" (112) // 11
++ :
++ "cr0",
++ "vs32","vs33","vs34","vs35","vs36","vs37","vs38","vs39",
++ "vs40","vs41","vs42","vs43","vs44","vs45","vs46","vs47",
++ "vs48","vs49","vs50","vs51","vs0","vs1","vs2","vs3",
++ "vs4","vs5","vs6","vs7","vs8","vs9","vs10","vs11"
++ );
++}
diff --git a/var/spack/repos/builtin/packages/opencoarrays/package.py b/var/spack/repos/builtin/packages/opencoarrays/package.py
index 387bc45946..cba5651fc7 100644
--- a/var/spack/repos/builtin/packages/opencoarrays/package.py
+++ b/var/spack/repos/builtin/packages/opencoarrays/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,12 +34,19 @@ class Opencoarrays(CMakePackage):
"""
homepage = "http://www.opencoarrays.org/"
- url = "https://github.com/sourceryinstitute/opencoarrays/releases/download/1.7.4/OpenCoarrays-1.7.4.tar.gz"
+ url = "https://github.com/sourceryinstitute/OpenCoarrays/releases/download/1.8.4/OpenCoarrays-1.8.4.tar.gz"
+ version('1.8.10', '9ba1670647db4d986634abf743abfd6a')
+ version('1.8.4', '7c9eaffc3a0b5748d0d840e52ec9d4ad')
version('1.8.0', 'ca78d1507b2a118c75128c6c2e093e27')
version('1.7.4', '85ba87def461e3ff5a164de2e6482930')
version('1.6.2', '5a4da993794f3e04ea7855a6678981ba')
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo',
+ 'MinSizeRel', 'CodeCoverage'))
+
depends_on('mpi')
def cmake_args(self):
diff --git a/var/spack/repos/builtin/packages/opencv/package.py b/var/spack/repos/builtin/packages/opencv/package.py
index 8a721032a6..e76f763ffb 100644
--- a/var/spack/repos/builtin/packages/opencv/package.py
+++ b/var/spack/repos/builtin/packages/opencv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,10 +23,9 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-from glob import glob
-class Opencv(Package):
+class Opencv(CMakePackage):
"""OpenCV is released under a BSD license and hence it's free for both
academic and commercial use. It has C++, C, Python and Java interfaces and
supports Windows, Linux, Mac OS, iOS and Android. OpenCV was designed for
@@ -43,12 +42,19 @@ class Opencv(Package):
homepage = 'http://opencv.org/'
url = 'https://github.com/Itseez/opencv/archive/3.1.0.tar.gz'
- version('3.1.0', '70e1dd07f0aa06606f1bc0e3fa15abd3')
+ version('master', git="https://github.com/opencv/opencv.git", branch="master")
+ version('3.3.0', '98a4e4c6f23ec725e808a891dc11eec4')
+ version('3.2.0', 'a43b65488124ba33dde195fea9041b70')
+ version('3.1.0', '70e1dd07f0aa06606f1bc0e3fa15abd3')
+ version('2.4.13.2', 'fe52791ce523681a67036def4c25261b')
+ version('2.4.13.1', 'f6d354500d5013e60dc0fc44b07a63d1')
+ version('2.4.13', '8feb45a71adad89b8017a777477c3eff')
+ version('2.4.12.3', '2496a4a4caf8fecfbfc294fbe6a814b0')
+ version('2.4.12.2', 'bc0c60c2ea1cf4078deef99569912fc7')
+ version('2.4.12.1', '7192f51434710904b5e3594872b897c3')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
variant('eigen', default=True, description='Activates support for eigen')
variant('ipp', default=True, description='Activates support for IPP')
@@ -61,32 +67,38 @@ class Opencv(Package):
description='Enables the build of Python extensions')
variant('java', default=False,
description='Activates support for Java')
-
- depends_on('cmake', type='build')
- depends_on('eigen', when='+eigen', type='build')
-
- depends_on('zlib')
- depends_on('libpng')
- depends_on('libjpeg-turbo')
- depends_on('libtiff')
+ variant('openmp', default=False, description='Activates support for OpenMP threads')
+ variant('core', default=True, description='Include opencv_core module into the OpenCV build')
+ variant('highgui', default=False, description='Include opencv_highgui module into the OpenCV build')
+ variant('imgproc', default=False, description='Include opencv_imgproc module into the OpenCV build')
+ variant('jpeg', default=False, description='Include JPEG support')
+ variant('png', default=False, description='Include PNG support')
+ variant('tiff', default=False, description='Include TIFF support')
+ variant('zlib', default=False, description='Build zlib from source')
+ variant('dnn', default=False, description='Build DNN support')
+
+ depends_on('eigen~mpfr', when='+eigen', type='build')
+
+ depends_on('zlib', when='+zlib')
+ depends_on('libpng', when='+png')
+ depends_on('jpeg', when='+jpeg')
+ depends_on('libtiff', when='+tiff')
depends_on('jasper', when='+jasper')
depends_on('cuda', when='+cuda')
depends_on('gtkplus', when='+gtk')
depends_on('vtk', when='+vtk')
depends_on('qt', when='+qt')
- depends_on('jdk', when='+java')
+ depends_on('java', when='+java')
depends_on('py-numpy', when='+python', type=('build', 'run'))
+ depends_on('protobuf@3.1.0', when='@3.3.0: +dnn')
extends('python', when='+python')
- def install(self, spec, prefix):
- cmake_options = []
- cmake_options.extend(std_cmake_args)
+ def cmake_args(self):
+ spec = self.spec
- cmake_options.extend([
- '-DCMAKE_BUILD_TYPE:STRING={0}'.format((
- 'Debug' if '+debug' in spec else 'Release')),
+ args = [
'-DBUILD_SHARED_LIBS:BOOL={0}'.format((
'ON' if '+shared' in spec else 'OFF')),
'-DENABLE_PRECOMPILED_HEADERS:BOOL=OFF',
@@ -100,89 +112,102 @@ class Opencv(Package):
'ON' if '+vtk' in spec else 'OFF')),
'-DBUILD_opencv_java:BOOL={0}'.format((
'ON' if '+java' in spec else 'OFF')),
- ])
+ '-DBUILD_opencv_core:BOOL={0}'.format((
+ 'ON' if '+core' in spec else 'OFF')),
+ '-DBUILD_opencv_highgui:BOOL={0}'.format((
+ 'ON' if '+highgui' in spec else 'OFF')),
+ '-DBUILD_opencv_imgproc:BOOL={0}'.format((
+ 'ON' if '+imgproc' in spec else 'OFF')),
+ '-DWITH_JPEG:BOOL={0}'.format((
+ 'ON' if '+jpeg' in spec else 'OFF')),
+ '-DWITH_PNG:BOOL={0}'.format((
+ 'ON' if '+png' in spec else 'OFF')),
+ '-DWITH_TIFF:BOOL={0}'.format((
+ 'ON' if '+tiff' in spec else 'OFF')),
+ '-DWITH_ZLIB:BOOL={0}'.format((
+ 'ON' if '+zlib' in spec else 'OFF')),
+ '-DWITH_OPENMP:BOOL={0}'.format((
+ 'ON' if '+openmp' in spec else 'OFF')),
+ '-DBUILD_opencv_dnn:BOOL={0}'.format((
+ 'ON' if '+dnn' in spec else 'OFF')),
+ ]
# Media I/O
- zlib = spec['zlib']
- cmake_options.extend([
- '-DZLIB_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
- join_path(zlib.prefix.lib,
- 'libz.{0}'.format(dso_suffix))),
- '-DZLIB_INCLUDE_DIR:PATH={0}'.format(zlib.prefix.include)
- ])
-
- libpng = spec['libpng']
- cmake_options.extend([
- '-DPNG_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
- join_path(libpng.prefix.lib,
- 'libpng.{0}'.format(dso_suffix))),
- '-DPNG_INCLUDE_DIR:PATH={0}'.format(libpng.prefix.include)
- ])
-
- libjpeg = spec['libjpeg-turbo']
- cmake_options.extend([
- '-DJPEG_LIBRARY:FILEPATH={0}'.format(
- join_path(libjpeg.prefix.lib,
- 'libjpeg.{0}'.format(dso_suffix))),
- '-DJPEG_INCLUDE_DIR:PATH={0}'.format(libjpeg.prefix.include)
- ])
-
- libtiff = spec['libtiff']
- cmake_options.extend([
- '-DTIFF_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
- join_path(libtiff.prefix.lib,
- 'libtiff.{0}'.format(dso_suffix))),
- '-DTIFF_INCLUDE_DIR:PATH={0}'.format(libtiff.prefix.include)
- ])
-
- jasper = spec['jasper']
- cmake_options.extend([
- '-DJASPER_LIBRARY_{0}:FILEPATH={1}'.format((
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
- join_path(jasper.prefix.lib,
- 'libjasper.{0}'.format(dso_suffix))),
- '-DJASPER_INCLUDE_DIR:PATH={0}'.format(jasper.prefix.include)
- ])
+ if '+zlib' in spec:
+ zlib = spec['zlib']
+ args.extend([
+ '-DZLIB_LIBRARY_{0}:FILEPATH={1}'.format((
+ 'DEBUG' if '+debug' in spec else 'RELEASE'),
+ join_path(zlib.prefix.lib,
+ 'libz.{0}'.format(dso_suffix))),
+ '-DZLIB_INCLUDE_DIR:PATH={0}'.format(zlib.prefix.include)
+ ])
+
+ if '+png' in spec:
+ libpng = spec['libpng']
+ args.extend([
+ '-DPNG_LIBRARY_{0}:FILEPATH={1}'.format((
+ 'DEBUG' if '+debug' in spec else 'RELEASE'),
+ join_path(libpng.prefix.lib,
+ 'libpng.{0}'.format(dso_suffix))),
+ '-DPNG_INCLUDE_DIR:PATH={0}'.format(libpng.prefix.include)
+ ])
+
+ if '+jpeg' in spec:
+ libjpeg = spec['jpeg']
+ args.extend([
+ '-DBUILD_JPEG:BOOL=OFF',
+ '-DJPEG_LIBRARY:FILEPATH={0}'.format(
+ join_path(libjpeg.prefix.lib,
+ 'libjpeg.{0}'.format(dso_suffix))),
+ '-DJPEG_INCLUDE_DIR:PATH={0}'.format(libjpeg.prefix.include)
+ ])
+
+ if '+tiff' in spec:
+ libtiff = spec['libtiff']
+ args.extend([
+ '-DTIFF_LIBRARY_{0}:FILEPATH={1}'.format((
+ 'DEBUG' if '+debug' in spec else 'RELEASE'),
+ join_path(libtiff.prefix.lib,
+ 'libtiff.{0}'.format(dso_suffix))),
+ '-DTIFF_INCLUDE_DIR:PATH={0}'.format(libtiff.prefix.include)
+ ])
+
+ if '+jasper' in spec:
+ jasper = spec['jasper']
+ args.extend([
+ '-DJASPER_LIBRARY_{0}:FILEPATH={1}'.format((
+ 'DEBUG' if '+debug' in spec else 'RELEASE'),
+ join_path(jasper.prefix.lib,
+ 'libjasper.{0}'.format(dso_suffix))),
+ '-DJASPER_INCLUDE_DIR:PATH={0}'.format(jasper.prefix.include)
+ ])
# GUI
if '+gtk' not in spec:
- cmake_options.extend([
+ args.extend([
'-DWITH_GTK:BOOL=OFF',
'-DWITH_GTK_2_X:BOOL=OFF'
])
elif '^gtkplus@3:' in spec:
- cmake_options.extend([
+ args.extend([
'-DWITH_GTK:BOOL=ON',
'-DWITH_GTK_2_X:BOOL=OFF'
])
elif '^gtkplus@2:3' in spec:
- cmake_options.extend([
+ args.extend([
'-DWITH_GTK:BOOL=OFF',
'-DWITH_GTK_2_X:BOOL=ON'
])
# Python
if '+python' in spec:
- python = spec['python']
-
- try:
- python_lib = glob(join_path(
- python.prefix.lib, 'libpython*.{0}'.format(dso_suffix)))[0]
- except KeyError:
- raise InstallError('Cannot find libpython')
-
- try:
- python_include_dir = glob(join_path(python.prefix.include,
- 'python*'))[0]
- except KeyError:
- raise InstallError('Cannot find python include directory')
+ python_exe = spec['python'].command.path
+ python_lib = spec['python'].libs[0]
+ python_include_dir = spec['python'].headers.directories[0]
if '^python@3:' in spec:
- python_exe = join_path(python.prefix.bin, 'python3')
- cmake_options.extend([
+ args.extend([
'-DBUILD_opencv_python3=ON',
'-DPYTHON3_EXECUTABLE={0}'.format(python_exe),
'-DPYTHON3_LIBRARY={0}'.format(python_lib),
@@ -190,8 +215,7 @@ class Opencv(Package):
'-DBUILD_opencv_python2=OFF',
])
elif '^python@2:3' in spec:
- python_exe = join_path(python.prefix.bin, 'python2')
- cmake_options.extend([
+ args.extend([
'-DBUILD_opencv_python2=ON',
'-DPYTHON2_EXECUTABLE={0}'.format(python_exe),
'-DPYTHON2_LIBRARY={0}'.format(python_lib),
@@ -199,12 +223,9 @@ class Opencv(Package):
'-DBUILD_opencv_python3=OFF',
])
else:
- cmake_options.extend([
+ args.extend([
'-DBUILD_opencv_python2=OFF',
'-DBUILD_opencv_python3=OFF'
])
- with working_dir('spack_build', create=True):
- cmake('..', *cmake_options)
- make('VERBOSE=1')
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/openexr/package.py b/var/spack/repos/builtin/packages/openexr/package.py
index 3619bd063c..ad463bc792 100644
--- a/var/spack/repos/builtin/packages/openexr/package.py
+++ b/var/spack/repos/builtin/packages/openexr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/openfast/package.py b/var/spack/repos/builtin/packages/openfast/package.py
new file mode 100644
index 0000000000..74d1881de9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfast/package.py
@@ -0,0 +1,93 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Openfast(CMakePackage):
+ """Wind turbine simulation package from NREL"""
+
+ homepage = "http://openfast.readthedocs.io/en/latest/"
+ url = "https://github.com/OpenFAST/openfast.git"
+
+ maintainers = ['jrood-nrel']
+
+ version('develop',
+ git='https://github.com/OpenFAST/openfast.git',
+ branch='dev')
+ version('master',
+ git='https://github.com/OpenFAST/openfast.git',
+ branch='master')
+
+ variant('shared', default=False,
+ description="Build shared libraries")
+ variant('double-precision', default=True,
+ description="Treat REAL as double precision")
+ variant('dll-interface', default=True,
+ description="Enable dynamic library loading interface")
+ variant('cxx', default=False,
+ description="Enable C++ bindings")
+
+ # Dependencies for OpenFAST Fortran
+ depends_on('blas')
+ depends_on('lapack')
+
+ # Additional dependencies when compiling C++ library
+ depends_on('mpi', when='+cxx')
+ depends_on('yaml-cpp', when='+cxx')
+ depends_on('hdf5+mpi+cxx', when='+cxx')
+ depends_on('zlib', when='+cxx')
+ depends_on('libxml2', when='+cxx')
+
+ # Disable parallel builds because of OpenFOAM Types modules dependencies
+ parallel = False
+
+ def cmake_args(self):
+ spec = self.spec
+
+ options = []
+
+ options.extend([
+ '-DBUILD_SHARED_LIBS:BOOL=%s' % (
+ 'ON' if '+shared' in spec else 'OFF'),
+ '-DDOUBLE_PRECISION:BOOL=%s' % (
+ 'ON' if '+double-precision' in spec else 'OFF'),
+ '-DUSE_DLL_INTERFACE:BOOL=%s' % (
+ 'ON' if '+dll-interface' in spec else 'OFF'),
+ '-DBUILD_FAST_CPP_API:BOOL=%s' % (
+ 'ON' if '+cxx' in spec else 'OFF'),
+ ])
+
+ if '+cxx' in spec:
+ options.extend([
+ '-DHDF5_ROOT:PATH=%s' % spec['hdf5'].prefix,
+ '-DYAML_ROOT:PATH=%s' % spec['yaml-cpp'].prefix,
+ ])
+
+ if '~shared' in spec:
+ options.extend([
+ '-DHDF5_USE_STATIC_LIBRARIES=ON',
+ ])
+
+ return options
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-bin.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-bin.patch
new file mode 100644
index 0000000000..b9e87a7ec8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-bin.patch
@@ -0,0 +1,503 @@
+--- OpenFOAM-v1612+.orig/bin/foamEtcFile 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/bin/foamEtcFile 2017-03-23 10:08:37.296887070 +0100
+@@ -4,7 +4,7 @@
+ # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+ # \\ / O peration |
+ # \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
+-# \\/ M anipulation |
++# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
+ #-------------------------------------------------------------------------------
+ # License
+ # This file is part of OpenFOAM.
+@@ -26,7 +26,7 @@
+ # foamEtcFile
+ #
+ # Description
+-# Locate user/group/shipped file with semantics similar to the
++# Locate user/group/other files with semantics similar to the
+ # ~OpenFOAM/fileName expansion.
+ #
+ # The -mode option can be used to allow chaining from
+@@ -34,40 +34,53 @@
+ #
+ # For example, within the user ~/.OpenFOAM/<VER>/prefs.sh:
+ # \code
+-# foamPrefs=`$WM_PROJECT_DIR/bin/foamEtcFile -m go prefs.sh` \
+-# && _foamSource $foamPrefs
++# eval $(foamEtcFile -sh -mode=go prefs.sh)
+ # \endcode
+ #
++# Environment
++# - WM_PROJECT: (unset defaults to OpenFOAM)
++# - WM_PROJECT_SITE: (unset defaults to PREFIX/site)
++# - WM_PROJECT_VERSION: (unset defaults to detect from path)
++#
+ # Note
+-# This script must exist in $FOAM_INST_DIR/OpenFOAM-<VERSION>/bin/
+-# or $FOAM_INST_DIR/openfoam<VERSION>/bin/ (for the debian version)
++# This script must exist in one of these locations:
++# - $WM_PROJECT_INST_DIR/OpenFOAM-<VERSION>/bin
++# - $WM_PROJECT_INST_DIR/openfoam-<VERSION>/bin
++# - $WM_PROJECT_INST_DIR/OpenFOAM+<VERSION>/bin
++# - $WM_PROJECT_INST_DIR/openfoam+<VERSION>/bin
++# - $WM_PROJECT_INST_DIR/openfoam<VERSION>/bin (debian version)
+ #
+ #-------------------------------------------------------------------------------
++unset optQuiet optSilent
+ usage() {
+ [ "${optQuiet:-$optSilent}" = true ] && exit 1
+-
+ exec 1>&2
+ while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+ cat<<USAGE
+
+-Usage: ${0##*/} [OPTION] fileName
+- ${0##*/} [OPTION] -list
++Usage: foamEtcFile [OPTION] fileName
++ foamEtcFile [OPTION] [-list|-list-test] [fileName]
+ options:
+- -all return all files (otherwise stop after the first match)
+- -list list the directories to be searched
+- -mode <mode> any combination of u(user), g(group), o(other)
+- -prefix <dir> specify an alternative installation prefix
+- -quiet suppress all normal output
+- -silent suppress all stderr output
+- -version <ver> specify an alternative OpenFOAM version
+- in the form Maj.Min.Rev (eg, 1.7.0)
+- -help print the usage
++ -a, -all Return all files (otherwise stop after the first match)
++ -l, -list List directories or files to be checked
++ -list-test List (existing) directories or files to be checked
++ -mode=MODE Any combination of u(user), g(group), o(other)
++ -prefix=DIR Specify an alternative installation prefix
++ -version=VER Specify alternative OpenFOAM version (eg, 3.0, 1612, ...)
++ -csh | -sh Produce output suitable for a csh or sh 'eval'
++ -csh-verbose | -sh-verbose
++ As per -csh | -sh, with additional verbosity
++ -q, -quiet Suppress all normal output
++ -s, -silent Suppress stderr, except -csh-verbose, -sh-verbose output
++ -help Print the usage
+
+- Locate user/group/shipped file with semantics similar to the
++ Locate user/group/other file with semantics similar to the
+ ~OpenFOAM/fileName expansion.
+
+- The options can also be specified as a single character
+- (eg, '-q' instead of '-quiet'), but must not be grouped.
++ Single character options must not be grouped. Equivalent options:
++ -mode=MODE, -mode MODE, -m MODE
++ -prefix=DIR, -prefix DIR, -p DIR
++ -version=VER, -version VER, -v VER
+
+ Exit status
+ 0 when the file is found. Print resolved path to stdout.
+@@ -78,61 +91,117 @@
+ exit 1
+ }
+
+-#-------------------------------------------------------------------------------
++# Report error and exit
++die()
++{
++ [ "${optQuiet:-$optSilent}" = true ] && exit 1
++ exec 1>&2
++ echo
++ echo "Error encountered:"
++ while [ "$#" -ge 1 ]; do echo " $1"; shift; done
++ echo
++ echo "See 'foamEtcFile -help' for usage"
++ echo
++ exit 1
++}
+
+-# the bin dir:
+-binDir="${0%/*}"
++#-------------------------------------------------------------------------------
++binDir="${0%/*}" # The bin dir
++projectDir="${binDir%/bin}" # The project dir
++prefixDir="${projectDir%/*}" # The prefix dir (same as $WM_PROJECT_INST_DIR)
+
+-# the project dir:
++# Could not resolve projectDir, prefixDir? (eg, called as ./bin/foamEtcFile)
++if [ "$prefixDir" = "$projectDir" ]
++then
++ binDir="$(cd $binDir && pwd -L)"
+ projectDir="${binDir%/bin}"
+-
+-# the prefix dir (same as $FOAM_INST_DIR):
+ prefixDir="${projectDir%/*}"
++fi
++projectDirName="${projectDir##*/}" # The project directory name
+
+-# the name used for the project directory
+-projectDirName="${projectDir##*/}"
++projectName="${WM_PROJECT:-OpenFOAM}" # The project name
++projectVersion="$WM_PROJECT_VERSION" # Empty? - will be treated later
+
+-# version number used for debian packaging
+-unset versionNum
+
++#-------------------------------------------------------------------------------
++
++# Guess project version or simply get the stem part of the projectDirName.
++# Handle standard and debian naming conventions.
+ #
+-# handle standard and debian naming convention
++# - projectVersion: update unless already set
+ #
+-case "$projectDirName" in
+-OpenFOAM-*) # standard naming convention OpenFOAM-<VERSION>
+- version="${projectDirName##OpenFOAM-}"
+- ;;
++# Helper variables:
++# - dirBase (for reassembling name) == projectDirName without the version
++# - versionNum (debian packaging)
++unset dirBase versionNum
++guessVersion()
++{
++ local version
+
+-openfoam[0-9]* | openfoam-dev) # debian naming convention 'openfoam<VERSION>'
+- versionNum="${projectDirName##openfoam}"
+- case "$versionNum" in
+- ??) # convert 2 digit version number to decimal delineated
+- version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)@\1.\2@')
+- ;;
+- ???) # convert 3 digit version number to decimal delineated
+- version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)@\1.\2.\3@')
+- ;;
+- ????) # convert 4 digit version number to decimal delineated
+- version=$(echo "$versionNum" | sed -e 's@\(.\)\(.\)\(.\)\(.\)@\1.\2.\3.\4@')
+- ;;
+- *) # failback - use current environment setting
+- version="$WM_PROJECT_VERSION"
++ case "$projectDirName" in
++ (OpenFOAM-* | openfoam-*)
++ # Standard naming: OpenFOAM-<VERSION> or openfoam-<VERSION>
++ dirBase="${projectDirName%%-*}-"
++ version="${projectDirName#*-}"
++ version="${version%%*-}" # Extra safety, eg openfoam-version-packager
++ ;;
++
++ (OpenFOAM+* | openfoam+*)
++ # Alternative naming: OpenFOAM+<VERSION> or openfoam+<VERSION>
++ dirBase="${projectDirName%%+*}+"
++ version="${projectDirName#*+}"
++ version="${version%%*-}" # Extra safety, eg openfoam-version-packager
++ ;;
++
++ (openfoam[0-9]*)
++ # Debian naming: openfoam<VERSION>
++ dirBase="openfoam"
++ version="${projectDirName#openfoam}"
++ versionNum="$version"
++
++ # Convert digits version number to decimal delineated
++ case "${#versionNum}" in (2|3|4)
++ version=$(echo "$versionNum" | sed -e 's@\([0-9]\)@\1.@g')
++ version="${version%.}"
+ ;;
+ esac
++
++ # Ignore special treatment if no decimals were inserted.
++ [ "${#version}" -gt "${#versionNum}" ] || unset versionNum
+ ;;
+
+-*)
+- echo "Error : unknown/unsupported naming convention"
+- exit 1
++ (*)
++ die "unknown/unsupported naming convention for '$projectDirName'"
+ ;;
+ esac
+
++ # Set projectVersion if required
++ : ${projectVersion:=$version}
++}
++
++
++# Set projectVersion and update versionNum, projectDirName accordingly
++setVersion()
++{
++ projectVersion="$1"
++
++ # Need dirBase when reassembling projectDirName
++ [ -n "$dirBase" ] || guessVersion
++
++ # Debian: update x.y.z -> xyz version
++ if [ -n "$versionNum" ]
++ then
++ versionNum=$(echo "$projectVersion" | sed -e 's@\.@@g')
++ fi
++
++ projectDirName="$dirBase${versionNum:-$projectVersion}"
++}
++
+
+-# default mode is 'ugo'
+-mode=ugo
+-unset optAll optList optQuiet optSilent
++optMode=ugo # Default mode is always 'ugo'
++unset optAll optList optShell optVersion
+
+-# parse options
++# Parse options
+ while [ "$#" -gt 0 ]
+ do
+ case "$1" in
+@@ -141,27 +210,45 @@
+ ;;
+ -a | -all)
+ optAll=true
++ unset optShell
+ ;;
+ -l | -list)
+ optList=true
++ unset optShell
++ ;;
++ -list-test)
++ optList='test'
++ unset optShell
++ ;;
++ -csh | -sh | -csh-verbose | -sh-verbose)
++ optShell="${1#-}"
++ unset optAll
++ ;;
++ -mode=[ugo]*)
++ optMode="${1#*=}"
++ ;;
++ -prefix=/*)
++ prefixDir="${1#*=}"
++ prefixDir="${prefixDir%/}"
++ ;;
++ -version=*)
++ optVersion="${1#*=}"
+ ;;
+ -m | -mode)
+- [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
+- mode="$2"
+-
+- # sanity check:
+- case "$mode" in
+- *u* | *g* | *o* )
++ optMode="$2"
++ shift
++ # Sanity check. Handles missing argument too.
++ case "$optMode" in
++ ([ugo]*)
+ ;;
+- *)
+- usage "'$1' option with invalid mode '$mode'"
++ (*)
++ die "invalid mode '$optMode'"
+ ;;
+ esac
+- shift
+ ;;
+ -p | -prefix)
+- [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
+- prefixDir="$2"
++ [ "$#" -ge 2 ] || die "'$1' option requires an argument"
++ prefixDir="${2%/}"
+ shift
+ ;;
+ -q | -quiet)
+@@ -171,13 +258,8 @@
+ optSilent=true
+ ;;
+ -v | -version)
+- [ "$#" -ge 2 ] || usage "'$1' option requires an argument"
+- version="$2"
+- # convert x.y.z -> xyz version (if installation looked like debian)
+- if [ -n "$versionNum" ]
+- then
+- versionNum=$(echo "$version" | sed -e 's@\.@@g')
+- fi
++ [ "$#" -ge 2 ] || die "'$1' option requires an argument"
++ optVersion="$2"
+ shift
+ ;;
+ --)
+@@ -185,7 +267,7 @@
+ break
+ ;;
+ -*)
+- usage "unknown option: '$*'"
++ die "unknown option: '$1'"
+ ;;
+ *)
+ break
+@@ -195,11 +277,28 @@
+ done
+
+
+-# debugging:
+-# echo "Installed locations:"
+-# for i in projectDir prefixDir projectDirName version versionNum
++#-------------------------------------------------------------------------------
++
++if [ -n "$optVersion" ]
++then
++ setVersion $optVersion
++elif [ -z "$projectVersion" ]
++then
++ guessVersion
++fi
++
++# Updates:
++# - projectDir for changes via -prefix or -version
++# - projectSite for changes via -prefix
++projectDir="$prefixDir/$projectDirName"
++projectSite="${WM_PROJECT_SITE:-$prefixDir/site}"
++
++
++# Debugging:
++# echo "Installed locations:" 1>&2
++# for i in projectDir prefixDir projectDirName projectVersion
+ # do
+-# eval echo "$i=\$$i"
++# eval echo "$i=\$$i" 1>&2
+ # done
+
+
+@@ -210,30 +309,18 @@
+
+ # Define the various places to be searched:
+ unset dirList
+-case "$mode" in
+-*u*) # user
+- userDir="$HOME/.${WM_PROJECT:-OpenFOAM}"
+- dirList="$dirList $userDir/$version $userDir"
++case "$optMode" in (*u*) # (U)ser
++ dirList="$dirList $HOME/.$projectName/$projectVersion $HOME/.$projectName"
+ ;;
+ esac
+
+-case "$mode" in
+-*g*) # group (site)
+- siteDir="${WM_PROJECT_SITE:-$prefixDir/site}"
+- dirList="$dirList $siteDir/$version $siteDir"
++case "$optMode" in (*g*) # (G)roup == site
++ dirList="$dirList $projectSite/$projectVersion $projectSite"
+ ;;
+ esac
+
+-case "$mode" in
+-*o*) # other (shipped)
+- if [ -n "$versionNum" ]
+- then
+- # debian packaging
+- dirList="$dirList $prefixDir/openfoam$versionNum/etc"
+- else
+- # standard packaging
+- dirList="$dirList $prefixDir/${WM_PROJECT:-OpenFOAM}-$version/etc"
+- fi
++case "$optMode" in (*o*) # (O)ther == shipped
++ dirList="$dirList $projectDir/etc"
+ ;;
+ esac
+ set -- $dirList
+@@ -244,50 +331,87 @@
+ #
+
+ exitCode=0
+-if [ "$optList" = true ]
++if [ -n "$optList" ]
+ then
+
+- # list directories, or potential file locations
+- [ "$nArgs" -le 1 ] || usage
++ # List directories, or potential file locations
++ [ "$nArgs" -le 1 ] || \
++ die "-list expects 0 or 1 filename, but $nArgs provided"
++
++ # A silly combination, but -quiet does have precedence
++ [ -n "$optQuiet" ] && exit 0
+
+- # a silly combination, but -quiet does have precedence
+- [ "$optQuiet" = true ] && exit 0
++ # Test for directory or file too?
++ if [ "$optList" = "test" ]
++ then
++ exitCode=2 # Fallback to a general error (file not found)
+
++ if [ "$nArgs" -eq 1 ]
++ then
+ for dir
+ do
+- if [ "$nArgs" -eq 1 ]
++ resolved="$dir/$fileName"
++ if [ -f "$resolved" ]
+ then
+- echo "$dir/$fileName"
++ echo "$resolved"
++ exitCode=0 # OK
++ fi
++ done
+ else
++ for dir
++ do
++ if [ -d "$dir" ]
++ then
+ echo "$dir"
++ exitCode=0 # OK
+ fi
+ done
++ fi
++ else
++ for dir
++ do
++ echo "$dir${fileName:+/}$fileName"
++ done
++ fi
+
+ else
+
+- [ "$nArgs" -eq 1 ] || usage
++ [ "$nArgs" -eq 1 ] || die "One filename expected - $nArgs provided"
+
+- # general error, eg file not found
+- exitCode=2
++ exitCode=2 # Fallback to a general error (file not found)
+
+ for dir
+ do
+ if [ -f "$dir/$fileName" ]
+ then
+ exitCode=0
+- if [ "$optQuiet" = true ]
+- then
++ [ -n "$optQuiet" ] && break
++
++ case "$optShell" in
++ (*verbose)
++ echo "Using: $dir/$fileName" 1>&2
++ ;;
++ esac
++
++ case "$optShell" in
++ csh*)
++ echo "source $dir/$fileName"
+ break
+- else
++ ;;
++ sh*)
++ echo ". $dir/$fileName"
++ break
++ ;;
++ *)
+ echo "$dir/$fileName"
+- [ "$optAll" = true ] || break
+- fi
++ [ -n "$optAll" ] || break
++ ;;
++ esac
+ fi
+ done
+
+ fi
+
+-
+ exit $exitCode
+
+ #------------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-build.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-build.patch
new file mode 100644
index 0000000000..26e2d8f085
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-build.patch
@@ -0,0 +1,17 @@
+--- OpenFOAM-v1612+.orig/Allwmake 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/Allwmake 2017-03-29 09:08:15.503865203 +0200
+@@ -17,6 +17,14 @@
+ exit 1
+ }
+
++#------------------------------------------------------------------------------
++echo "========================================"
++date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown"
++echo "Starting ${WM_PROJECT_DIR##*/} ${0##*}"
++echo " $WM_COMPILER $WM_COMPILER_TYPE compiler"
++echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}"
++echo
++
+ # Compile wmake support applications
+ (cd wmake/src && make)
+
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-etc.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-etc.patch
new file mode 100644
index 0000000000..dd8146e953
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-etc.patch
@@ -0,0 +1,41 @@
+--- OpenFOAM-v1612+.orig/etc/bashrc 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/bashrc 2017-03-22 16:05:05.751237072 +0100
+@@ -42,7 +42,8 @@
+ #
+ # Please set to the appropriate path if the default is not correct.
+ #
+-[ $BASH_SOURCE ] && FOAM_INST_DIR=$(\cd ${BASH_SOURCE%/*/*/*} && \pwd -P) || \
++rc="${BASH_SOURCE:-${ZSH_NAME:+$0}}"
++[ -n "$rc" ] && FOAM_INST_DIR=$(\cd $(dirname $rc)/../.. && \pwd -L) || \
+ FOAM_INST_DIR=$HOME/$WM_PROJECT
+ # FOAM_INST_DIR=~$WM_PROJECT
+ # FOAM_INST_DIR=/opt/$WM_PROJECT
+@@ -135,8 +136,10 @@
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ . $WM_PROJECT_DIR/etc/config.sh/functions
+
+-# Add in preset user or site preferences:
+-_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.sh`
++# Override definitions via prefs, with 'other' first so the sys-admin
++# can provide base values independent of WM_PROJECT_SITE
++_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -mode o prefs.sh`
++_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -mode ug prefs.sh`
+
+ # Evaluate command-line parameters and record settings for later
+ # these can be used to set/unset values, or specify alternative pref files
+diff -uw OpenFOAM-v1612+.orig/etc/cshrc OpenFOAM-v1612+/etc/cshrc
+--- OpenFOAM-v1612+.orig/etc/cshrc 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/cshrc 2017-03-22 16:04:51.839291067 +0100
+@@ -148,8 +148,10 @@
+ # Source files, possibly with some verbosity
+ alias _foamSource 'if ($?FOAM_VERBOSE && $?prompt) echo "Sourcing: \!*"; if (\!* != "") source \!*'
+
+-# Add in preset user or site preferences:
+-_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile prefs.csh`
++# Override definitions via prefs, with 'other' first so the sys-admin
++# can provide base values independent of WM_PROJECT_SITE
++_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -mode o prefs.csh`
++_foamSource `$WM_PROJECT_DIR/bin/foamEtcFile -mode ug prefs.csh`
+
+ # Evaluate command-line parameters and record settings for later
+ # these can be used to set/unset values, or specify alternative pref files
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-mgridgen-lib.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-mgridgen-lib.patch
new file mode 100644
index 0000000000..8dc0b995ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-mgridgen-lib.patch
@@ -0,0 +1,41 @@
+--- OpenFOAM-v1612+.orig/src/fvAgglomerationMethods/Allwmake 2017-01-02 09:56:17.578558265 +0100
++++ OpenFOAM-v1612+/src/fvAgglomerationMethods/Allwmake 2017-04-18 18:58:38.236795902 +0200
+@@ -4,9 +4,13 @@
+ # Parse arguments for library compilation
+ . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
+
+-export ParMGridGen=$WM_THIRD_PARTY_DIR/ParMGridGen-1.0
++unset MGRIDGEN_ARCH_PATH
++if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/mgridgen)
++then
++ . $settings
++fi
+
+-if [ -e "$FOAM_LIBBIN/libMGridGen.so" ]
++if [ -e "$MGRIDGEN_ARCH_PATH/include/mgridgen.h" ]
+ then
+ wmake $targetType MGridGenGamgAgglomeration
+ fi
+--- OpenFOAM-v1612+.orig/src/fvAgglomerationMethods/MGridGenGamgAgglomeration/Make/options 2017-01-02 09:56:17.578558265 +0100
++++ OpenFOAM-v1612+/src/fvAgglomerationMethods/MGridGenGamgAgglomeration/Make/options 2017-04-18 18:59:16.860662811 +0200
+@@ -1,15 +1,9 @@
+-/* Needs ParMGridGen environment variable set. (see Allwmake script) */
+-
+-TYPE_REAL=
+-#if defined(WM_SP)
+-TYPE_REAL=-DTYPE_REAL
+-#endif
+-
+ EXE_INC = \
+ -I$(LIB_SRC)/finiteVolume/lnInclude \
+- -I$(ParMGridGen)/MGridGen/Lib/lnInclude \
+- -I$(ParMGridGen)/MGridGen/IMlib/lnInclude \
+- $(TYPE_REAL)
++ -I$(MGRIDGEN_ARCH_PATH)/include
+
+ LIB_LIBS = \
+- -L$(FOAM_EXT_LIBBIN) -lMGridGen
++ -L$(FOAM_EXT_LIBBIN) \
++ -L$(MGRIDGEN_ARCH_PATH)/lib \
++ -L$(MGRIDGEN_ARCH_PATH)/lib$(WM_COMPILER_LIB_ARCH) \
++ -lmgrid
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-mpi.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-mpi.patch
new file mode 100644
index 0000000000..b3663b0a49
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-mpi.patch
@@ -0,0 +1,36 @@
+--- OpenFOAM-v1612+.orig/etc/config.sh/mpi 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.sh/mpi 2017-03-29 13:55:57.507980699 +0200
+@@ -75,8 +75,15 @@
+ _foamAddMan $MPI_ARCH_PATH/share/man
+ ;;
+
++USERMPI)
++ # Use an arbitrary, user-specified mpi implementation
++ export FOAM_MPI=mpi-user
++ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi-user`
++ ;;
++
+ SYSTEMMPI)
+ export FOAM_MPI=mpi-system
++ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.sh/mpi-system`
+
+ if [ -z "$MPI_ROOT" ]
+ then
+--- OpenFOAM-v1612+.orig/etc/config.csh/mpi 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.csh/mpi 2017-03-29 13:56:36.347835938 +0200
+@@ -71,8 +71,15 @@
+ _foamAddMan $MPI_ARCH_PATH/share/man
+ breaksw
+
++case USERMPI:
++ # Use an arbitrary, user-specified mpi implementation
++ setenv FOAM_MPI mpi-user
++ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/mpi-user`
++ breaksw
++
+ case SYSTEMMPI:
+ setenv FOAM_MPI mpi-system
++ _foamSource `$WM_PROJECT_DIR/bin/foamEtcFile config.csh/mpi-system`
+
+ if ( ! ($?MPI_ROOT) ) then
+ echo
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-scotch-metis-lib.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-scotch-metis-lib.patch
new file mode 100644
index 0000000000..b7530e6320
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-scotch-metis-lib.patch
@@ -0,0 +1,48 @@
+--- OpenFOAM-v1612+.orig/src/parallel/decompose/Allwmake 2017-03-21 16:34:44.599021283 +0100
++++ OpenFOAM-v1612+/src/parallel/decompose/Allwmake 2017-03-21 16:28:57.243969660 +0100
+@@ -36,6 +36,7 @@
+
+ # Library
+ [ -r $FOAM_EXT_LIBBIN/libmetis.so ] || \
++ [ -r $METIS_ARCH_PATH/lib/libmetis.so ] || \
+ [ -r $METIS_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libmetis.so ] || \
+ [ "${METIS_ARCH_PATH##*-}" = system ] || {
+ echo "$warning (missing library)"
+@@ -90,6 +91,7 @@
+
+ # Library
+ [ -r $FOAM_EXT_LIBBIN/libscotch.so ] || \
++ [ -r $SCOTCH_ARCH_PATH/lib/libscotch.so ] || \
+ [ -r $SCOTCH_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH/libscotch.so ] || \
+ [ "${SCOTCH_ARCH_PATH##*-}" = system ] || {
+ echo "$warning (missing library)"
+--- OpenFOAM-v1612+.orig/src/parallel/decompose/metisDecomp/Make/options 2017-03-21 16:34:25.383075328 +0100
++++ OpenFOAM-v1612+/src/parallel/decompose/metisDecomp/Make/options 2017-03-21 16:30:15.727758338 +0100
+@@ -8,6 +8,7 @@
+ * to support central, non-thirdparty installations
+ */
+ LIB_LIBS = \
++ -L$(METIS_ARCH_PATH)/lib \
+ -L$(METIS_ARCH_PATH)/lib$(WM_COMPILER_LIB_ARCH) \
+ -L$(FOAM_EXT_LIBBIN) \
+ -lmetis
+--- OpenFOAM-v1612+.orig/src/parallel/decompose/ptscotchDecomp/Make/options 2017-03-21 16:34:34.607049385 +0100
++++ OpenFOAM-v1612+/src/parallel/decompose/ptscotchDecomp/Make/options 2017-03-21 16:30:00.479799399 +0100
+@@ -16,6 +16,7 @@
+ * to support central, non-thirdparty installations
+ */
+ LIB_LIBS = \
++ -L$(SCOTCH_ARCH_PATH)/lib \
+ -L$(SCOTCH_ARCH_PATH)/lib$(WM_COMPILER_LIB_ARCH) \
+ -L$(FOAM_EXT_LIBBIN) \
+ -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \
+--- OpenFOAM-v1612+.orig/src/parallel/decompose/scotchDecomp/Make/options 2017-03-21 16:34:39.159036582 +0100
++++ OpenFOAM-v1612+/src/parallel/decompose/scotchDecomp/Make/options 2017-03-21 16:29:46.719836452 +0100
+@@ -16,6 +16,7 @@
+ * to support central, non-thirdparty installations
+ */
+ LIB_LIBS = \
++ -L$(SCOTCH_ARCH_PATH)/lib \
+ -L$(SCOTCH_ARCH_PATH)/lib$(WM_COMPILER_LIB_ARCH) \
+ -L$(FOAM_EXT_LIBBIN) \
+ -lscotch \
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-site.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-site.patch
new file mode 100644
index 0000000000..d988c2f9b8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-site.patch
@@ -0,0 +1,42 @@
+diff -uw OpenFOAM-v1612+.orig/etc/config.sh/settings OpenFOAM-v1612+/etc/config.sh/settings
+--- OpenFOAM-v1612+.orig/etc/config.sh/settings 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.sh/settings 2017-03-23 12:22:52.002101020 +0100
+@@ -141,7 +141,7 @@
+ #------------------------------------------------------------------------------
+
+ # Location of the jobControl directory
+-export FOAM_JOB_DIR=$WM_PROJECT_INST_DIR/jobControl
++export FOAM_JOB_DIR=$HOME/.OpenFOAM/jobControl #SPACK: non-central location
+
+ # wmake configuration
+ export WM_DIR=$WM_PROJECT_DIR/wmake
+@@ -157,7 +157,7 @@
+ export FOAM_EXT_LIBBIN=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/lib
+
+ # Site-specific directory
+-siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_INST_DIR/site}"
++siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_DIR/site}" #SPACK: not in parent directory
+
+ # Shared site executables/libraries
+ # Similar naming convention as ~OpenFOAM expansion
+diff -uw OpenFOAM-v1612+.orig/etc/config.csh/settings OpenFOAM-v1612+/etc/config.csh/settings
+--- OpenFOAM-v1612+.orig/etc/config.csh/settings 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.csh/settings 2017-03-23 12:23:52.737891912 +0100
+@@ -137,7 +137,7 @@
+ #------------------------------------------------------------------------------
+
+ # Location of the jobControl directory
+-setenv FOAM_JOB_DIR $WM_PROJECT_INST_DIR/jobControl
++setenv FOAM_JOB_DIR=$HOME/.OpenFOAM/jobControl #SPACK: non-central location
+
+ # wmake configuration
+ setenv WM_DIR $WM_PROJECT_DIR/wmake
+@@ -156,7 +156,7 @@
+ if ( $?WM_PROJECT_SITE ) then
+ set siteDir=$WM_PROJECT_SITE
+ else
+- set siteDir=$WM_PROJECT_INST_DIR/site
++ set siteDir=$WM_PROJECT_DIR/site #SPACK: not in parent directory
+ endif
+
+ # Shared site executables/libraries
diff --git a/var/spack/repos/builtin/packages/openfoam-com/1612-zoltan-lib.patch b/var/spack/repos/builtin/packages/openfoam-com/1612-zoltan-lib.patch
new file mode 100644
index 0000000000..712e6a7dfd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/1612-zoltan-lib.patch
@@ -0,0 +1,84 @@
+--- OpenFOAM-v1612+.orig/applications/utilities/mesh/manipulation/renumberMesh/Allwmake 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/applications/utilities/mesh/manipulation/renumberMesh/Allwmake 2017-03-28 11:13:35.222727218 +0200
+@@ -4,20 +4,35 @@
+ # Parse arguments for compilation (at least for error catching)
+ . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
+
+-export COMPILE_FLAGS=''
+-export LINK_FLAGS=''
++unset COMP_FLAGS LINK_FLAGS
+
+ if [ -f "${FOAM_LIBBIN}/libSloanRenumber.so" ]
+ then
+- echo "Found libSloanRenumber.so -- enabling Sloan renumbering support."
++ echo " found libSloanRenumber -- enabling sloan renumbering support."
+ export LINK_FLAGS="${LINK_FLAGS} -lSloanRenumber"
+ fi
+
+-if [ -f "${ZOLTAN_ARCH_PATH}/lib/libzoltan.a" -a -f "${FOAM_LIBBIN}/libzoltanRenumber.so" ]
++if [ -f "${FOAM_LIBBIN}/libzoltanRenumber.so" ]
+ then
+- echo "Found libzoltanRenumber.so -- enabling zoltan renumbering support."
+- export COMPILE_FLAGS="-DFOAM_USE_ZOLTAN"
+- export LINK_FLAGS="${LINK_FLAGS} -lzoltanRenumber -L${ZOLTAN_ARCH_PATH}/lib -lzoltan"
++ if [ -z "$ZOLTAN_ARCH_PATH" ]
++ then
++ # Optional: get ZOLTAN_ARCH_PATH
++ if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/zoltan)
++ then
++ . $settings
++ fi
++ fi
++
++ for libdir in lib "lib${WM_COMPILER_LIB_ARCH}"
++ do
++ if [ -f "$ZOLTAN_ARCH_PATH/$libdir/libzoltan.a" ]
++ then
++ echo " found libzoltanRenumber -- enabling zoltan renumbering support."
++ export COMP_FLAGS="-DFOAM_USE_ZOLTAN"
++ export LINK_FLAGS="${LINK_FLAGS} -lzoltanRenumber -L$ZOLTAN_ARCH_PATH/$libdir -lzoltan"
++ break
++ fi
++ done
+ fi
+
+ wmake $targetType
+--- OpenFOAM-v1612+.orig/src/renumber/Allwmake 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/src/renumber/Allwmake 2017-03-28 11:10:22.195543610 +0200
+@@ -5,14 +5,11 @@
+ targetType=libso
+ . $WM_PROJECT_DIR/wmake/scripts/AllwmakeParseArguments
+
+-## Get ZOLTAN_ARCH_PATH
+-#if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/zoltan)
+-#then
+-# . $settings
+-# echo "using ZOLTAN_ARCH_PATH=$ZOLTAN_ARCH_PATH"
+-#else
+-# echo "Error: no config.sh/zoltan settings"
+-#fi
++# Optional: get ZOLTAN_ARCH_PATH
++if settings=$($WM_PROJECT_DIR/bin/foamEtcFile config.sh/zoltan)
++then
++ . $settings
++fi
+
+ wmake $targetType renumberMethods
+
+--- OpenFOAM-v1612+.orig/src/renumber/zoltanRenumber/Make/options 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/src/renumber/zoltanRenumber/Make/options 2017-03-28 11:50:46.484343848 +0200
+@@ -4,10 +4,13 @@
+ EXE_INC = \
+ /* -DFULLDEBUG -g -O0 */ \
+ $(PFLAGS) $(PINC) \
++ ${c++LESSWARN} \
+ -I$(FOAM_SRC)/renumber/renumberMethods/lnInclude \
+ -I$(ZOLTAN_ARCH_PATH)/include/ \
+ -I$(LIB_SRC)/meshTools/lnInclude
+
+ LIB_LIBS = \
+- /* -L$(ZOLTAN_ARCH_PATH)/lib -lzoltan */ \
++ -L$(ZOLTAN_ARCH_PATH)/lib \
++ -L$(ZOLTAN_ARCH_PATH)/lib$(WM_COMPILER_LIB_ARCH) \
++ -lzoltan \
+ -lmeshTools
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/README b/var/spack/repos/builtin/packages/openfoam-com/common/README
new file mode 100644
index 0000000000..d116bbaa23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/README
@@ -0,0 +1,2 @@
+Some helper tools for packaging applications/libraries dependent on an
+openfoam provider.
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/README-spack b/var/spack/repos/builtin/packages/openfoam-com/common/README-spack
new file mode 100644
index 0000000000..83b606dda1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/README-spack
@@ -0,0 +1,15 @@
+Additional notes for spack
+--------------------------
+
+OpenFOAM largely manages its own PATH and LD_LIBRARY_PATH settings.
+The spack build currently also follows this and only provides
+a minimum modules environment.
+
+The variable FOAM_PROJECT_DIR points to the location of the OpenFOAM project
+and shall contain a $FOAM_PROJECT_DIR/etc/bashrc file for OpenFOAM.
+The variable FOAM_INST_DIR may also be provided for older OpenFOAM versions.
+
+It is the aim for the future to use spack to provide the environment directly,
+but this still needs more work.
+
+2017-04-18
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/change-sitedir.sh b/var/spack/repos/builtin/packages/openfoam-com/common/change-sitedir.sh
new file mode 100644
index 0000000000..61d9c3ea8b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/change-sitedir.sh
@@ -0,0 +1,94 @@
+#----------------------------------*-sh-*--------------------------------------
+# ========= |
+# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+# \\ / O peration |
+# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
+# \\/ M anipulation |
+#------------------------------------------------------------------------------
+# License
+# This file is part of OpenFOAM.
+#
+# OpenFOAM is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+# . change-sitedir.sh PREFIX [SUFFIX]
+#
+# Shortcuts (prefix)
+# -prefix "$WM_PROJECT_INST_DIR/site"
+# -project "$WM_PROJECT_DIR/site"
+# -none remove from environment
+#
+# Shortcuts (suffix)
+# -platforms "platforms/$WM_OPTIONS"
+#
+# Description
+# Change WM_PROJECT_SITE, FOAM_SITE_APPBIN, FOAM_SITE_LIBBIN
+# and the respective entries in PATH, LD_LIBRARY_PATH.
+#
+# This can be useful when temporarily reassigning the site directory
+# when packaging OpenFOAM.
+#
+# The suffix value should normally include "platforms/$WM_OPTIONS"
+#
+# Example
+# . /path/change-sitedir.sh -prefix -platforms
+#
+# corresponds to the standard site location:
+#
+# $WM_PROJECT_INST_DIR/site{/$WM_PROJECT_VERSION/platforms/$WM_OPTIONS}
+#
+#------------------------------------------------------------------------------
+
+if [ "$#" -ge 1 ]
+then
+ prefix="$1"
+ suffix="$2"
+
+ foamOldDirs="$FOAM_SITE_APPBIN $FOAM_SITE_LIBBIN \
+ $WM_PROJECT_SITE $WM_PROJECT_INST_DIR/site $WM_PROJECT_DIR/site"
+ foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
+ if [ -x "$foamClean" ]
+ then
+ cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
+ cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") \
+ && LD_LIBRARY_PATH="$cleaned"
+ fi
+
+ case "$suffix" in
+ -plat*) suffix="platforms/$WM_OPTIONS" ;;
+ esac
+ case "$prefix" in
+ -prefix) prefix="$WM_PROJECT_INST_DIR/site" ;;
+ -project) prefix="$WM_PROJECT_DIR/site" ;;
+ -none) unset prefix ;;
+ esac
+
+ if [ -n "$prefix" ]
+ then
+ export WM_PROJECT_SITE="$prefix"
+
+ prefix="$prefix/${WM_PROJECT_VERSION:-unknown}${suffix:+/}${suffix}"
+
+ export FOAM_SITE_APPBIN="$prefix/bin"
+ export FOAM_SITE_LIBBIN="$prefix/lib"
+ PATH="$FOAM_SITE_APPBIN:$PATH"
+ LD_LIBRARY_PATH="$FOAM_SITE_LIBBIN:$LD_LIBRARY_PATH"
+ else
+ unset WM_PROJECT_SITE FOAM_SITE_APPBIN FOAM_SITE_LIBBIN
+ fi
+fi
+
+unset foamClean foamOldDirs cleaned prefix suffix
+
+#------------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/change-userdir.sh b/var/spack/repos/builtin/packages/openfoam-com/common/change-userdir.sh
new file mode 100644
index 0000000000..d126fcfe5d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/change-userdir.sh
@@ -0,0 +1,94 @@
+#----------------------------------*-sh-*--------------------------------------
+# ========= |
+# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+# \\ / O peration |
+# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
+# \\/ M anipulation |
+#------------------------------------------------------------------------------
+# License
+# This file is part of OpenFOAM.
+#
+# OpenFOAM is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+# . change-userdir.sh PREFIX [SUFFIX]
+#
+# Shortcuts (prefix)
+# -home "$HOME/OpenFOAM/$USER-$WM_PROJECT_VERSION"
+# -none remove from environment
+#
+# Shortcuts (suffix)
+# -platforms "platforms/$WM_OPTIONS"
+#
+# Description
+# Change WM_PROJECT_USER_DIR, FOAM_USER_APPBIN, FOAM_USER_LIBBIN
+# and the respective entries in PATH, LD_LIBRARY_PATH.
+# Also adjusts FOAM_RUN.
+#
+# This can be useful with compiling additional OpenFOAM programs
+# (that use FOAM_USER_APPBIN, FOAM_USER_LIBBIN for their build),
+# to avoid conflicts with the normal user bin/lib files.
+#
+# The suffix value should normally include "platforms/$WM_OPTIONS"
+#
+# Example
+# . /path/change-userdir.sh -home -platforms
+#
+# corresponds to the standard user location:
+#
+# $HOME/OpenFOAM/$USER-$WM_PROJECT_VERSION/platforms/$WM_OPTIONS
+#
+#------------------------------------------------------------------------------
+
+if [ "$#" -ge 1 ]
+then
+ prefix="$1"
+ suffix="$2"
+
+ foamOldDirs="$FOAM_USER_APPBIN $FOAM_USER_LIBBIN"
+ foamClean=$WM_PROJECT_DIR/bin/foamCleanPath
+ if [ -x "$foamClean" ]
+ then
+ cleaned=$($foamClean "$PATH" "$foamOldDirs") && PATH="$cleaned"
+ cleaned=$($foamClean "$LD_LIBRARY_PATH" "$foamOldDirs") \
+ && LD_LIBRARY_PATH="$cleaned"
+ fi
+
+ case "$suffix" in
+ -plat*) suffix="platforms/$WM_OPTIONS" ;;
+ esac
+ case "$prefix" in
+ -home) prefix="$HOME/OpenFOAM/$USER-${WM_PROJECT_VERSION:-unknown}" ;;
+ -none) unset prefix ;;
+ esac
+
+ if [ -n "$prefix" ]
+ then
+ export WM_PROJECT_USER_DIR="$prefix"
+ export FOAM_RUN="$prefix/run"
+
+ prefix="$prefix${suffix:+/}${suffix}"
+ export FOAM_USER_APPBIN="$prefix/bin"
+ export FOAM_USER_LIBBIN="$prefix/lib"
+
+ PATH="$FOAM_USER_APPBIN:$PATH"
+ LD_LIBRARY_PATH="$FOAM_USER_LIBBIN:$LD_LIBRARY_PATH"
+ else
+ unset WM_PROJECT_USER_DIR FOAM_RUN FOAM_USER_APPBIN FOAM_USER_LIBBIN
+ fi
+fi
+
+unset foamClean foamOldDirs cleaned prefix suffix
+
+#------------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/spack-Allwmake b/var/spack/repos/builtin/packages/openfoam-com/common/spack-Allwmake
new file mode 100755
index 0000000000..cff22daf10
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/spack-Allwmake
@@ -0,0 +1,22 @@
+#!/bin/bash
+# Build wrapper script - FOAM_INST_DIR is only required by foam-extend
+export FOAM_INST_DIR=$(cd .. && pwd -L)
+. $PWD/etc/bashrc '' # No arguments
+mkdir -p $FOAM_APPBIN $FOAM_LIBBIN 2>/dev/null # Allow interrupt
+echo "Build openfoam with SPACK ($@)"
+echo WM_PROJECT_DIR = $WM_PROJECT_DIR
+./Allwmake $@ # Pass arguments
+
+# Link non-dummy MPI_FOAM type to parent-dir, where rpath can find it
+if [ "${FOAM_MPI:=dummy}" != dummy -a -d "$FOAM_LIBBIN/$FOAM_MPI" ]
+then
+(
+ cd "$FOAM_LIBBIN" || exit 1
+ for i in $FOAM_MPI/lib*.so
+ do
+ [ -f $i ] && ln -sf $i "${i##*/}"
+ done
+)
+fi
+
+# -----------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-com/common/spack-derived-Allwmake b/var/spack/repos/builtin/packages/openfoam-com/common/spack-derived-Allwmake
new file mode 100755
index 0000000000..407ad734e8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/common/spack-derived-Allwmake
@@ -0,0 +1,26 @@
+#!/bin/bash
+# The openfoam providers must export 'FOAM_PROJECT_DIR'
+# The package is expected to supply an appropriate Allwmake file.
+
+[ -d "$FOAM_PROJECT_DIR" -a -f "$FOAM_PROJECT_DIR/etc/bashrc" ] || {
+ echo "Error: no PROJECT=$FOAM_PROJECT_DIR" 1>&2
+ echo " or no etc/bashrc found" 1>&2
+ exit 1
+}
+
+export FOAM_INST_DIR=$(cd $FOAM_PROJECT_DIR/.. && pwd -L) # Needed by foam-extend
+. $FOAM_PROJECT_DIR/etc/bashrc '' # No arguments
+
+# Package-specific adjustments
+[ -f spack-config.sh ] && . ./spack-config.sh '' # No arguments
+
+echo "========================================"
+date "+%Y-%m-%d %H:%M:%S %z" 2>/dev/null || echo "date is unknown"
+echo "Build with ${WM_PROJECT}-${WM_PROJECT_VERSION}"
+echo " WM_PROJECT_DIR = $WM_PROJECT_DIR"
+echo " $WM_COMPILER $WM_COMPILER_TYPE compiler"
+echo " $WM_OPTIONS - with $WM_MPLIB $FOAM_MPI"
+echo
+
+./Allwmake $@ # Pass arguments
+# -----------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-com/openfoam-site.patch b/var/spack/repos/builtin/packages/openfoam-com/openfoam-site.patch
new file mode 100644
index 0000000000..a1f5d8a08a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/openfoam-site.patch
@@ -0,0 +1,35 @@
+diff -uw OpenFOAM-plus.orig/etc/config.sh/settings OpenFOAM-plus/etc/config.sh/settings
+--- OpenFOAM-plus.orig/etc/config.sh/settings 2017-04-04 17:34:29.875873400 +0200
++++ OpenFOAM-plus/etc/config.sh/settings 2017-04-04 17:38:40.174992466 +0200
+@@ -154,10 +154,10 @@
+ export FOAM_LIBBIN=$WM_PROJECT_DIR/platforms/$WM_OPTIONS/lib
+
+ # External (ThirdParty) libraries
+-export FOAM_EXT_LIBBIN=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/lib
++unset FOAM_EXT_LIBBIN #SPACK: none
+
+ # Site-specific directory
+-siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_INST_DIR/site}"
++siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_DIR/site}" #SPACK: not in parent directory
+
+ # Shared site executables/libraries
+ # Similar naming convention as ~OpenFOAM expansion
+diff -uw OpenFOAM-plus.orig/etc/config.csh/settings OpenFOAM-plus/etc/config.csh/settings
+--- OpenFOAM-plus.orig/etc/config.csh/settings 2017-04-04 17:34:28.255879107 +0200
++++ OpenFOAM-plus/etc/config.csh/settings 2017-04-04 17:39:22.214844670 +0200
+@@ -151,13 +151,13 @@
+ setenv FOAM_LIBBIN $WM_PROJECT_DIR/platforms/$WM_OPTIONS/lib
+
+ # External (ThirdParty) libraries
+-setenv FOAM_EXT_LIBBIN $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/lib
++unsetenv FOAM_EXT_LIBBIN #SPACK: none
+
+ # Site-specific directory
+ if ( $?WM_PROJECT_SITE ) then
+ set siteDir=$WM_PROJECT_SITE
+ else
+- set siteDir=$WM_PROJECT_INST_DIR/site
++ set siteDir=$WM_PROJECT_DIR/site #SPACK: not in parent directory
+ endif
+
+ # Shared site executables/libraries
diff --git a/var/spack/repos/builtin/packages/openfoam-com/package.py b/var/spack/repos/builtin/packages/openfoam-com/package.py
new file mode 100644
index 0000000000..d184365720
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-com/package.py
@@ -0,0 +1,807 @@
+##############################################################################
+# Copyright (c) 2017 Mark Olesen, OpenCFD Ltd.
+#
+# This file was authored by Mark Olesen <mark.olesen@esi-group.com>
+# and is released as part of spack under the LGPL license.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for the LLNL notice and LGPL.
+#
+# License
+# -------
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# Legal Notice
+# ------------
+# OPENFOAM is a trademark owned by OpenCFD Ltd
+# (producer and distributor of the OpenFOAM software via www.openfoam.com).
+# The trademark information must remain visible and unadulterated in this
+# file and via the "spack info" and comply with the term set by
+# http://openfoam.com/legal/trademark-policy.php
+#
+# This file is not part of OpenFOAM, nor does it constitute a component of an
+# OpenFOAM distribution.
+#
+##############################################################################
+#
+# Notes
+# - mpi handling: WM_MPLIB=USERMPI and use spack to populate an appropriate
+# configuration and generate wmake rules for 'USER' and 'USERMPI'
+# mpi implementations.
+#
+# - Resolution of flex, zlib needs more attention (within OpenFOAM)
+# - +paraview:
+# depends_on should just be 'paraview+plugins' but that resolves poorly.
+# Workaround: use preferred variants "+plugins +qt"
+# packages:
+# paraview:
+# variants: +plugins +qt
+# in ~/.spack/packages.yaml
+#
+# Known issues
+# - Combining +zoltan with +int64 has not been tested, but probably won't work.
+# - Combining +mgridgen with +int64 or +float32 probably won't work.
+#
+# The spack 'develop' version of openfoam-com retains the upstream
+# WM_PROJECT_VERSION=plus naming internally.
+#
+##############################################################################
+import glob
+import re
+import shutil
+import os
+
+from spack import *
+import llnl.util.tty as tty
+
+
+# Not the nice way of doing things, but is a start for refactoring
+__all__ = [
+ 'add_extra_files',
+ 'write_environ',
+ 'rewrite_environ_files',
+ 'mplib_content',
+ 'foamAddPath',
+ 'foamAddLib',
+ 'OpenfoamArch',
+]
+
+
+def add_extra_files(foam_pkg, common, local, **kwargs):
+ """Copy additional common and local files into the stage.source_path
+ from the openfoam-com/common and the package/assets directories,
+ respectively
+ """
+ outdir = foam_pkg.stage.source_path
+
+ indir = join_path(os.path.dirname(__file__), 'common')
+ for f in common:
+ tty.info('Added file {0}'.format(f))
+ install(join_path(indir, f), join_path(outdir, f))
+
+ indir = join_path(foam_pkg.package_dir, 'assets')
+ for f in local:
+ tty.info('Added file {0}'.format(f))
+ install(join_path(indir, f), join_path(outdir, f))
+
+
+def format_export(key, value):
+ """Format key,value pair as 'export' with newline for POSIX shell.
+ A leading '#' for key adds a comment character to the entire line.
+ A value of 'None' corresponds to 'unset'.
+ """
+ if key.startswith('#'):
+ return '## export {0}={1}\n'.format(re.sub(r'^#+\s*', '', key), value)
+ elif value is None:
+ return 'unset {0}\n'.format(key)
+ else:
+ return 'export {0}={1}\n'.format(key, value)
+
+
+def format_setenv(key, value):
+ """Format key,value pair as 'setenv' with newline for C-shell.
+ A leading '#' for key adds a comment character to the entire line.
+ A value of 'None' corresponds to 'unsetenv'.
+ """
+ if key.startswith('#'):
+ return '## setenv {0} {1}\n'.format(re.sub(r'^#+\s*', '', key), value)
+ elif value is None:
+ return 'unsetenv {0}\n'.format(key)
+ else:
+ return 'setenv {0} {1}\n'.format(key, value)
+
+
+def _write_environ_entries(outfile, environ, formatter):
+ """Write environment settings as 'export' or 'setenv'.
+ If environ is a dict, write in sorted order.
+ If environ is a list, write pair-wise.
+ Also descends into sub-dict and sub-list, but drops the key.
+ """
+ if isinstance(environ, dict):
+ for key in sorted(environ):
+ entry = environ[key]
+ if isinstance(entry, dict):
+ _write_environ_entries(outfile, entry, formatter)
+ elif isinstance(entry, list):
+ _write_environ_entries(outfile, entry, formatter)
+ else:
+ outfile.write(formatter(key, entry))
+ elif isinstance(environ, list):
+ for item in environ:
+ outfile.write(formatter(item[0], item[1]))
+
+
+def _write_environ_file(output, environ, formatter):
+ """Write environment settings as 'export' or 'setenv'.
+ If environ is a dict, write in sorted order.
+ If environ is a list, write pair-wise.
+ Also descends into sub-dict and sub-list, but drops the key.
+ """
+ with open(output, 'w') as outfile:
+ outfile.write('# SPACK settings\n\n')
+ _write_environ_entries(outfile, environ, formatter)
+
+
+def write_environ(environ, **kwargs):
+ """Write environment settings as 'export' or 'setenv'.
+ If environ is a dict, write in sorted order.
+ If environ is a list, write pair-wise.
+
+ Keyword Options:
+ posix[=None] If set, the name of the POSIX file to rewrite.
+ cshell[=None] If set, the name of the C-shell file to rewrite.
+ """
+ posix = kwargs.get('posix', None)
+ if posix:
+ _write_environ_file(posix, environ, format_export)
+ cshell = kwargs.get('cshell', None)
+ if cshell:
+ _write_environ_file(cshell, environ, format_setenv)
+
+
+def rewrite_environ_files(environ, **kwargs):
+ """Use filter_file to rewrite (existing) POSIX shell or C-shell files.
+ Keyword Options:
+ posix[=None] If set, the name of the POSIX file to rewrite.
+ cshell[=None] If set, the name of the C-shell file to rewrite.
+ """
+ posix = kwargs.get('posix', None)
+ if posix and os.path.isfile(posix):
+ for k, v in environ.items():
+ filter_file(
+ r'^(\s*export\s+%s)=.*$' % k,
+ r'\1=%s' % v,
+ posix,
+ backup=False)
+ cshell = kwargs.get('cshell', None)
+ if cshell and os.path.isfile(cshell):
+ for k, v in environ.items():
+ filter_file(
+ r'^(\s*setenv\s+%s)\s+.*$' % k,
+ r'\1 %s' % v,
+ cshell,
+ backup=False)
+
+
+def foamAddPath(*args):
+ """A string with args prepended to 'PATH'"""
+ return '"' + ':'.join(args) + ':${PATH}"'
+
+
+def foamAddLib(*args):
+ """A string with args prepended to 'LD_LIBRARY_PATH'"""
+ return '"' + ':'.join(args) + ':${LD_LIBRARY_PATH}"'
+
+
+def pkglib(package, pre=None):
+ """Get lib64 or lib from package prefix.
+
+ Optional parameter 'pre' to provide alternative prefix
+ """
+ libdir = package.prefix.lib64
+ if not os.path.isdir(libdir):
+ libdir = package.prefix.lib
+ if pre:
+ return join_path(pre, os.path.basename(libdir))
+ else:
+ return libdir
+
+
+def mplib_content(spec, pre=None):
+ """The mpi settings to have wmake
+ use spack information with minimum modifications to OpenFOAM.
+
+ Optional parameter 'pre' to provide alternative prefix
+ """
+ mpi_spec = spec['mpi']
+ bin = mpi_spec.prefix.bin
+ inc = mpi_spec.prefix.include
+ lib = pkglib(mpi_spec)
+ if pre:
+ bin = join_path(pre, os.path.basename(bin))
+ inc = join_path(pre, os.path.basename(inc))
+ lib = join_path(pre, os.path.basename(lib))
+ else:
+ pre = mpi_spec.prefix
+
+ info = {
+ 'name': '{0}-{1}'.format(mpi_spec.name, mpi_spec.version),
+ 'prefix': pre,
+ 'include': inc,
+ 'bindir': bin,
+ 'libdir': lib,
+ 'FLAGS': '-DOMPI_SKIP_MPICXX -DMPICH_IGNORE_CXX_SEEK',
+ 'PINC': '-I{0}'.format(inc),
+ 'PLIBS': '-L{0} -lmpi'.format(lib),
+ }
+ return info
+
+
+# -----------------------------------------------------------------------------
+
+class OpenfoamCom(Package):
+ """OpenFOAM is a GPL-opensource C++ CFD-toolbox.
+ This offering is supported by OpenCFD Ltd,
+ producer and distributor of the OpenFOAM software via www.openfoam.com,
+ and owner of the OPENFOAM trademark.
+ OpenCFD Ltd has been developing and releasing OpenFOAM since its debut
+ in 2004.
+ """
+
+ homepage = "http://www.openfoam.com/"
+ baseurl = "https://sourceforge.net/projects/openfoamplus/files/"
+ gitrepo = "https://develop.openfoam.com/Development/OpenFOAM-plus.git"
+
+ version('1706', '630d30770f7b54d6809efbf94b7d7c8f',
+ url=baseurl + 'v1706/OpenFOAM-v1706.tgz')
+ version('1612', 'ca02c491369150ab127cbb88ec60fbdf',
+ url=baseurl + 'v1612+/OpenFOAM-v1612+.tgz')
+ version('develop', branch='develop', git=gitrepo) # Needs credentials
+
+ variant('int64', default=False,
+ description='Compile with 64-bit label')
+ variant('float32', default=False,
+ description='Compile with 32-bit scalar (single-precision)')
+ variant('knl', default=False,
+ description='Use KNL compiler settings')
+ variant('scotch', default=True,
+ description='With scotch/ptscotch for decomposition')
+ variant('metis', default=False,
+ description='With metis for decomposition')
+ variant('zoltan', default=False,
+ description='With zoltan renumbering')
+ # TODO?# variant('scalasca', default=False,
+ # TODO?# description='With scalasca profiling')
+ variant('mgridgen', default=False, description='With mgridgen support')
+ variant('paraview', default=True,
+ description='Build paraview plugins and runtime post-processing')
+ variant('source', default=True,
+ description='Install library/application sources and tutorials')
+
+ provides('openfoam')
+ depends_on('mpi')
+
+ # After 1712 require openmpi+thread_multiple for collated output
+ conflicts('^openmpi~thread_multiple', when='@1712:')
+
+ depends_on('zlib')
+ depends_on('fftw')
+ depends_on('boost')
+ depends_on('cgal')
+ depends_on('flex', type='build')
+ depends_on('cmake', type='build')
+
+ # Require scotch with ptscotch - corresponds to standard OpenFOAM setup
+ depends_on('scotch~metis+mpi~int64', when='+scotch~int64')
+ depends_on('scotch~metis+mpi+int64', when='+scotch+int64')
+ depends_on('metis@5:', when='+metis')
+ depends_on('metis+int64', when='+metis+int64')
+ # mgridgen is statically linked
+ depends_on('parmgridgen', when='+mgridgen', type='build')
+ depends_on('zoltan', when='+zoltan')
+ # TODO?# depends_on('scalasca', when='+scalasca')
+
+ # For OpenFOAM plugins and run-time post-processing this should just be
+ # 'paraview+plugins' but that resolves poorly.
+ # Workaround: use preferred variants "+plugins +qt" in
+ # ~/.spack/packages.yaml
+
+ # 1706 ok with newer paraview but avoid pv-5.2, pv-5.3 readers
+ depends_on('paraview@5.4:', when='@1706:+paraview')
+ # 1612 plugins need older paraview
+ depends_on('paraview@:5.0.1', when='@1612+paraview')
+
+ # General patches
+ common = ['spack-Allwmake', 'README-spack']
+ assets = []
+
+ # Version-specific patches
+ patch('1612-bin.patch', when='@1612')
+ patch('1612-build.patch', when='@1612')
+ patch('1612-etc.patch', when='@1612')
+ patch('1612-site.patch', when='@1612')
+ patch('1612-mpi.patch', when='@1612')
+ patch('1612-mgridgen-lib.patch', when='@1612')
+ patch('1612-scotch-metis-lib.patch', when='@1612')
+ patch('1612-zoltan-lib.patch', when='@1612')
+
+ # This patch is reasonably version-invariant
+ # 1) default site directly under WM_PROJECT_DIR
+ # 2) no FOAM_EXT_LIBBIN required
+ patch('openfoam-site.patch', when='@1706:')
+
+ # Some user config settings
+ # default: 'compile-option': 'RpathOpt',
+ # default: 'mplib': 'USERMPI', # Use user mpi for spack
+ config = {
+ # Add links into bin/, lib/ (eg, for other applications)
+ 'link': False
+ }
+
+ # The openfoam architecture, compiler information etc
+ _foam_arch = None
+
+ # Content for etc/prefs.{csh,sh}
+ etc_prefs = {}
+
+ # Content for etc/config.{csh,sh}/ files
+ etc_config = {}
+
+ phases = ['configure', 'build', 'install']
+ build_script = './spack-Allwmake' # From patch() method.
+
+ #
+ # - End of definitions / setup -
+ #
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('FOAM_PROJECT_DIR', self.projectdir)
+ run_env.set('WM_PROJECT_DIR', self.projectdir)
+ for d in ['wmake', self.archbin]: # bin already added automatically
+ run_env.prepend_path('PATH', join_path(self.projectdir, d))
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Provide location of the OpenFOAM project.
+ This is identical to the WM_PROJECT_DIR value, but we avoid that
+ variable since it would mask the normal OpenFOAM cleanup of
+ previous versions.
+ """
+ spack_env.set('FOAM_PROJECT_DIR', self.projectdir)
+
+ @property
+ def projectdir(self):
+ """Absolute location of project directory: WM_PROJECT_DIR/"""
+ return self.prefix # <- install directly under prefix
+
+ @property
+ def foam_arch(self):
+ if not self._foam_arch:
+ self._foam_arch = OpenfoamArch(self.spec, **self.config)
+ return self._foam_arch
+
+ @property
+ def archbin(self):
+ """Relative location of architecture-specific executables"""
+ return join_path('platforms', self.foam_arch, 'bin')
+
+ @property
+ def archlib(self):
+ """Relative location of architecture-specific libraries"""
+ return join_path('platforms', self.foam_arch, 'lib')
+
+ def patch(self):
+ """Adjust OpenFOAM build for spack.
+ Where needed, apply filter as an alternative to normal patching."""
+ add_extra_files(self, self.common, self.assets)
+
+ # Avoid WM_PROJECT_INST_DIR for ThirdParty, site or jobControl.
+ # Use openfoam-site.patch to handle jobControl, site.
+ #
+ # Filtering: bashrc,cshrc (using a patch is less flexible)
+ edits = {
+ 'WM_THIRD_PARTY_DIR':
+ r'$WM_PROJECT_DIR/ThirdParty #SPACK: No separate third-party',
+ }
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path('etc', 'bashrc'),
+ cshell=join_path('etc', 'cshrc'))
+
+ def configure(self, spec, prefix):
+ """Make adjustments to the OpenFOAM configuration files in their various
+ locations: etc/bashrc, etc/config.sh/FEATURE and customizations that
+ don't properly fit get placed in the etc/prefs.sh file (similiarly for
+ csh).
+ """
+ # Filtering bashrc, cshrc
+ edits = {}
+ edits.update(self.foam_arch.foam_dict())
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path('etc', 'bashrc'),
+ cshell=join_path('etc', 'cshrc'))
+
+ # Content for etc/prefs.{csh,sh}
+ self.etc_prefs = {
+ # TODO
+ # 'CMAKE_ARCH_PATH': spec['cmake'].prefix,
+ # 'FLEX_ARCH_PATH': spec['flex'].prefix,
+ # 'ZLIB_ARCH_PATH': spec['zlib'].prefix,
+ }
+
+ # MPI content, using MPI_ARCH_PATH
+ user_mpi = mplib_content(spec, '${MPI_ARCH_PATH}')
+
+ # Content for etc/config.{csh,sh}/ files
+ self.etc_config = {
+ 'CGAL': [
+ ('BOOST_ARCH_PATH', spec['boost'].prefix),
+ ('CGAL_ARCH_PATH', spec['cgal'].prefix),
+ ('LD_LIBRARY_PATH',
+ foamAddLib(
+ pkglib(spec['boost'], '${BOOST_ARCH_PATH}'),
+ pkglib(spec['cgal'], '${CGAL_ARCH_PATH}'))),
+ ],
+ 'FFTW': [
+ ('FFTW_ARCH_PATH', spec['fftw'].prefix), # Absolute
+ ('LD_LIBRARY_PATH',
+ foamAddLib(
+ pkglib(spec['fftw'], '${BOOST_ARCH_PATH}'))),
+ ],
+ # User-defined MPI
+ 'mpi-user': [
+ ('MPI_ARCH_PATH', spec['mpi'].prefix), # Absolute
+ ('LD_LIBRARY_PATH', foamAddLib(user_mpi['libdir'])),
+ ('PATH', foamAddPath(user_mpi['bindir'])),
+ ],
+ 'scotch': {},
+ 'metis': {},
+ 'paraview': [],
+ 'gperftools': [], # Currently unused
+ }
+
+ if '+scotch' in spec:
+ self.etc_config['scotch'] = {
+ 'SCOTCH_ARCH_PATH': spec['scotch'].prefix,
+ # For src/parallel/decompose/Allwmake
+ 'SCOTCH_VERSION': 'scotch-{0}'.format(spec['scotch'].version),
+ }
+
+ if '+metis' in spec:
+ self.etc_config['metis'] = {
+ 'METIS_ARCH_PATH': spec['metis'].prefix,
+ }
+
+ if '+paraview' in spec:
+ pvMajor = 'paraview-{0}'.format(spec['paraview'].version.up_to(2))
+ self.etc_config['paraview'] = [
+ ('ParaView_DIR', spec['paraview'].prefix),
+ ('ParaView_INCLUDE_DIR', '${ParaView_DIR}/include/' + pvMajor),
+ ('PV_PLUGIN_PATH', '$FOAM_LIBBIN/' + pvMajor),
+ ('PATH', foamAddPath('${ParaView_DIR}/bin')),
+ ]
+
+ # Optional
+ if '+mgridgen' in spec:
+ self.etc_config['mgridgen'] = {
+ 'MGRIDGEN_ARCH_PATH': spec['parmgridgen'].prefix
+ }
+
+ # Optional
+ if '+zoltan' in spec:
+ self.etc_config['zoltan'] = {
+ 'ZOLTAN_ARCH_PATH': spec['zoltan'].prefix
+ }
+
+ # Write prefs files according to the configuration.
+ # Only need prefs.sh for building, but install both for end-users
+ if self.etc_prefs:
+ write_environ(
+ self.etc_prefs,
+ posix=join_path('etc', 'prefs.sh'),
+ cshell=join_path('etc', 'prefs.csh'))
+
+ # Adjust components to use SPACK variants
+ for component, subdict in self.etc_config.items():
+ write_environ(
+ subdict,
+ posix=join_path('etc', 'config.sh', component),
+ cshell=join_path('etc', 'config.csh', component))
+
+ def build(self, spec, prefix):
+ """Build using the OpenFOAM Allwmake script, with a wrapper to source
+ its environment first.
+ Only build if the compiler is known to be supported.
+ """
+ self.foam_arch.has_rule(self.stage.source_path)
+ self.foam_arch.create_rules(self.stage.source_path, self)
+
+ args = ['-silent']
+ if self.parallel: # Build in parallel? - pass as an argument
+ args.append('-j{0}'.format(make_jobs))
+ builder = Executable(self.build_script)
+ builder(*args)
+
+ def install(self, spec, prefix):
+ """Install under the projectdir"""
+ mkdirp(self.projectdir)
+ projdir = os.path.basename(self.projectdir)
+ # Filtering: bashrc, cshrc
+ edits = {
+ 'WM_PROJECT_INST_DIR': os.path.dirname(self.projectdir),
+ 'WM_PROJECT_DIR': join_path('$WM_PROJECT_INST_DIR', projdir),
+ }
+
+ # All top-level files, except spack build info and possibly Allwmake
+ if '+source' in spec:
+ ignored = re.compile(r'^spack-.*')
+ else:
+ ignored = re.compile(r'^(Allwmake|spack-).*')
+
+ files = [
+ f for f in glob.glob("*")
+ if os.path.isfile(f) and not ignored.search(f)
+ ]
+ for f in files:
+ install(f, self.projectdir)
+
+ # Having wmake and ~source is actually somewhat pointless...
+ # Install 'etc' before 'bin' (for symlinks)
+ dirs = ['etc', 'bin', 'wmake']
+ if '+source' in spec:
+ dirs.extend(['applications', 'src', 'tutorials'])
+
+ for d in dirs:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ symlinks=True)
+
+ dirs = ['platforms']
+ if '+source' in spec:
+ dirs.extend(['doc'])
+
+ # Install platforms (and doc) skipping intermediate targets
+ ignored = ['src', 'applications', 'html', 'Guides']
+ for d in dirs:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ ignore=shutil.ignore_patterns(*ignored),
+ symlinks=True)
+
+ etc_dir = join_path(self.projectdir, 'etc')
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path(etc_dir, 'bashrc'),
+ cshell=join_path(etc_dir, 'cshrc'))
+ self.install_links()
+
+ def install_links(self):
+ """Add symlinks into bin/, lib/ (eg, for other applications)"""
+ # Make build log visible - it contains OpenFOAM-specific information
+ with working_dir(self.projectdir):
+ os.symlink(
+ join_path('.spack', 'build.out'),
+ join_path('log.' + str(self.foam_arch)))
+
+ if not self.config['link']:
+ return
+
+ # ln -s platforms/linux64GccXXX/lib lib
+ with working_dir(self.projectdir):
+ if os.path.isdir(self.archlib):
+ os.symlink(self.archlib, 'lib')
+
+ # (cd bin && ln -s ../platforms/linux64GccXXX/bin/* .)
+ with working_dir(join_path(self.projectdir, 'bin')):
+ for f in [
+ f for f in glob.glob(join_path('..', self.archbin, "*"))
+ if os.path.isfile(f)
+ ]:
+ os.symlink(f, os.path.basename(f))
+
+ def openfoam_run_environment(self, projdir):
+ # This seems to bomb out with an ImportError 'site'!
+ # mods = EnvironmentModifications.from_sourcing_files(
+ # join_path(projdir, 'etc/bashrc'))
+ pass
+
+
+# -----------------------------------------------------------------------------
+
+class OpenfoamArch(object):
+ """OpenfoamArch represents architecture/compiler settings for OpenFOAM.
+ The string representation is WM_OPTIONS.
+
+ Keywords
+ label-size=[True] supports int32/int64
+ compile-option[=RpathOpt]
+ mplib[=USERMPI]
+ """
+
+ #: Map spack compiler names to OpenFOAM compiler names
+ # By default, simply capitalize the first letter
+ compiler_mapping = {'intel': 'icc'}
+
+ def __init__(self, spec, **kwargs):
+ # Some user settings, to be adjusted manually or via variants
+ self.compiler = None # <- %compiler
+ self.arch_option = '64' # (32/64-bit on x86_64)
+ self.label_size = None # <- +int64
+ self.precision_option = 'DP' # <- +float32
+ self.compile_option = kwargs.get('compile-option', 'RpathOpt')
+ self.arch = None
+ self.options = None
+ self.rule = None
+ self.mplib = kwargs.get('mplib', 'USERMPI')
+
+ # Normally support WM_LABEL_OPTION, but not yet for foam-extend
+ if '+int64' in spec:
+ self.label_size = '64'
+ elif kwargs.get('label-size', True):
+ self.label_size = '32'
+
+ if '+float32' in spec:
+ self.precision_option = 'SP'
+
+ # spec.architecture.platform is like `uname -s`, but lower-case
+ platform = spec.architecture.platform
+
+ # spec.architecture.target is like `uname -m`
+ target = spec.architecture.target
+
+ if platform == 'linux':
+ if target == 'i686':
+ self.arch_option = '32' # Force consistency
+ elif target == 'x86_64':
+ if self.arch_option == '64':
+ platform += '64'
+ elif target == 'ia64':
+ platform += 'ia64'
+ elif target == 'armv7l':
+ platform += 'ARM7'
+ elif target == 'ppc64':
+ platform += 'PPC64'
+ elif target == 'ppc64le':
+ platform += 'PPC64le'
+ elif platform == 'darwin':
+ if target == 'x86_64':
+ platform += 'Intel'
+ if self.arch_option == '64':
+ platform += '64'
+ # ... and others?
+
+ self.arch = platform
+
+ # Capitalized version of the compiler name, which usually corresponds
+ # to how OpenFOAM will camel-case things.
+ # Use compiler_mapping to handing special cases.
+ # Also handle special compiler options (eg, KNL)
+ comp = spec.compiler.name
+
+ if comp in self.compiler_mapping:
+ comp = self.compiler_mapping[comp]
+ comp = comp.capitalize()
+
+ if '+knl' in spec:
+ comp += 'KNL'
+ self.compiler = comp
+ self.rule = self.arch + self.compiler
+
+ # Build WM_OPTIONS
+ # ----
+ # WM_LABEL_OPTION=Int$WM_LABEL_SIZE
+ # WM_OPTIONS=$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION$WM_COMPILE_OPTION
+ # or
+ # WM_OPTIONS=$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_COMPILE_OPTION
+ # ----
+ self.options = ''.join([
+ self.rule,
+ self.precision_option,
+ ('Int' + self.label_size if self.label_size else ''),
+ self.compile_option])
+
+ def __str__(self):
+ return self.options
+
+ def __repr__(self):
+ return str(self)
+
+ def foam_dict(self):
+ """Returns a dictionary for OpenFOAM prefs, bashrc, cshrc."""
+ return dict([
+ ('WM_COMPILER', self.compiler),
+ ('WM_ARCH_OPTION', self.arch_option),
+ ('WM_LABEL_SIZE', self.label_size),
+ ('WM_PRECISION_OPTION', self.precision_option),
+ ('WM_COMPILE_OPTION', self.compile_option),
+ ('WM_MPLIB', self.mplib),
+ ])
+
+ def _rule_directory(self, projdir=None, general=False):
+ """The wmake/rules/ compiler directory"""
+ if general:
+ relative = os.path.join('wmake', 'rules', 'General')
+ else:
+ relative = os.path.join('wmake', 'rules', self.rule)
+ if projdir:
+ return os.path.join(projdir, relative)
+ else:
+ return relative
+
+ def has_rule(self, projdir):
+ """Verify that a wmake/rules/ compiler rule exists in the project
+ directory.
+ """
+ # Insist on a wmake rule for this architecture/compiler combination
+ rule_dir = self._rule_directory(projdir)
+
+ if not os.path.isdir(rule_dir):
+ raise InstallError(
+ 'No wmake rule for {0}'.format(self.rule))
+ if not re.match(r'.+Opt$', self.compile_option):
+ raise InstallError(
+ "WM_COMPILE_OPTION={0} is not type '*Opt'"
+ .format(self.compile_option))
+ return True
+
+ def create_rules(self, projdir, foam_pkg):
+ """ Create cRpathOpt,c++RpathOpt and mplibUSER,mplibUSERMPI
+ rules in the specified project directory.
+ The compiler rules are based on the respective cOpt,c++Opt rules
+ but with additional rpath information for the OpenFOAM libraries.
+
+ The rpath rules allow wmake to use spack information with minimal
+ modification to OpenFOAM.
+ The rpath is used for the installed libpath (continue to use
+ LD_LIBRARY_PATH for values during the build).
+ """
+ # Note: the 'c' rules normally don't need rpath, since they are just
+ # used for statically linked wmake utilities, but left in anyhow.
+
+ # rpath for installed OpenFOAM libraries
+ rpath = '{0}{1}'.format(
+ foam_pkg.compiler.cxx_rpath_arg,
+ join_path(foam_pkg.projectdir, foam_pkg.archlib))
+
+ user_mpi = mplib_content(foam_pkg.spec)
+ rule_dir = self._rule_directory(projdir)
+
+ with working_dir(rule_dir):
+ # Compiler: copy existing cOpt,c++Opt and modify '*DBUG' value
+ for lang in ['c', 'c++']:
+ src = '{0}Opt'.format(lang)
+ dst = '{0}{1}'.format(lang, self.compile_option)
+ with open(src, 'r') as infile:
+ with open(dst, 'w') as outfile:
+ for line in infile:
+ line = line.rstrip()
+ outfile.write(line)
+ if re.match(r'^\S+DBUG\s*=', line):
+ outfile.write(' ')
+ outfile.write(rpath)
+ outfile.write('\n')
+
+ # MPI rules
+ for mplib in ['mplibUSER', 'mplibUSERMPI']:
+ with open(mplib, 'w') as out:
+ out.write("""# Use mpi from spack ({name})\n
+PFLAGS = {FLAGS}
+PINC = {PINC}
+PLIBS = {PLIBS}
+""".format(**user_mpi))
+
+# -----------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-org/41-etc.patch b/var/spack/repos/builtin/packages/openfoam-org/41-etc.patch
new file mode 100644
index 0000000000..6fe3b7b4d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-org/41-etc.patch
@@ -0,0 +1,25 @@
+--- OpenFOAM-4.x.orig/etc/bashrc 2016-10-16 16:11:45.000000000 +0200
++++ OpenFOAM-4.x/etc/bashrc 2017-03-24 12:41:25.233267894 +0100
+@@ -43,17 +43,17 @@
+ # Please set to the appropriate path if the default is not correct.
+ #
+ [ $BASH_SOURCE ] && \
+-export FOAM_INST_DIR=$(cd ${BASH_SOURCE%/*/*/*} && pwd -P) || \
+-export FOAM_INST_DIR=$HOME/$WM_PROJECT
+-# export FOAM_INST_DIR=~$WM_PROJECT
+-# export FOAM_INST_DIR=/opt/$WM_PROJECT
+-# export FOAM_INST_DIR=/usr/local/$WM_PROJECT
++FOAM_INST_DIR=$(\cd $(dirname $BASH_SOURCE)/../.. && \pwd -P) || \
++FOAM_INST_DIR=$HOME/$WM_PROJECT
++# FOAM_INST_DIR=/opt/$WM_PROJECT
++# FOAM_INST_DIR=/usr/local/$WM_PROJECT
+ #
+ # Build foamyHexMesh
+ export FOAMY_HEX_MESH=yes
+ #
+ # END OF (NORMAL) USER EDITABLE PART
+ ################################################################################
++export FOAM_INST_DIR
+
+ # The default environment variables below can be overridden in a prefs.sh file
+ # located in ~/.OpenFOAM/$WM_PROJECT_VERSION, ~/.OpenFOAM,
diff --git a/var/spack/repos/builtin/packages/openfoam-org/41-site.patch b/var/spack/repos/builtin/packages/openfoam-org/41-site.patch
new file mode 100644
index 0000000000..d988c2f9b8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-org/41-site.patch
@@ -0,0 +1,42 @@
+diff -uw OpenFOAM-v1612+.orig/etc/config.sh/settings OpenFOAM-v1612+/etc/config.sh/settings
+--- OpenFOAM-v1612+.orig/etc/config.sh/settings 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.sh/settings 2017-03-23 12:22:52.002101020 +0100
+@@ -141,7 +141,7 @@
+ #------------------------------------------------------------------------------
+
+ # Location of the jobControl directory
+-export FOAM_JOB_DIR=$WM_PROJECT_INST_DIR/jobControl
++export FOAM_JOB_DIR=$HOME/.OpenFOAM/jobControl #SPACK: non-central location
+
+ # wmake configuration
+ export WM_DIR=$WM_PROJECT_DIR/wmake
+@@ -157,7 +157,7 @@
+ export FOAM_EXT_LIBBIN=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/lib
+
+ # Site-specific directory
+-siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_INST_DIR/site}"
++siteDir="${WM_PROJECT_SITE:-$WM_PROJECT_DIR/site}" #SPACK: not in parent directory
+
+ # Shared site executables/libraries
+ # Similar naming convention as ~OpenFOAM expansion
+diff -uw OpenFOAM-v1612+.orig/etc/config.csh/settings OpenFOAM-v1612+/etc/config.csh/settings
+--- OpenFOAM-v1612+.orig/etc/config.csh/settings 2016-12-23 15:22:59.000000000 +0100
++++ OpenFOAM-v1612+/etc/config.csh/settings 2017-03-23 12:23:52.737891912 +0100
+@@ -137,7 +137,7 @@
+ #------------------------------------------------------------------------------
+
+ # Location of the jobControl directory
+-setenv FOAM_JOB_DIR $WM_PROJECT_INST_DIR/jobControl
++setenv FOAM_JOB_DIR=$HOME/.OpenFOAM/jobControl #SPACK: non-central location
+
+ # wmake configuration
+ setenv WM_DIR $WM_PROJECT_DIR/wmake
+@@ -156,7 +156,7 @@
+ if ( $?WM_PROJECT_SITE ) then
+ set siteDir=$WM_PROJECT_SITE
+ else
+- set siteDir=$WM_PROJECT_INST_DIR/site
++ set siteDir=$WM_PROJECT_DIR/site #SPACK: not in parent directory
+ endif
+
+ # Shared site executables/libraries
diff --git a/var/spack/repos/builtin/packages/openfoam-org/assets/bin/foamEtcFile b/var/spack/repos/builtin/packages/openfoam-org/assets/bin/foamEtcFile
new file mode 100755
index 0000000000..294cc26505
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-org/assets/bin/foamEtcFile
@@ -0,0 +1,417 @@
+#!/bin/sh
+#------------------------------------------------------------------------------
+# ========= |
+# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+# \\ / O peration |
+# \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
+# \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd.
+#-------------------------------------------------------------------------------
+# License
+# This file is part of OpenFOAM.
+#
+# OpenFOAM is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
+#
+# Script
+# foamEtcFile
+#
+# Description
+# Locate user/group/other files with semantics similar to the
+# ~OpenFOAM/fileName expansion.
+#
+# The -mode option can be used to allow chaining from
+# personal settings to site-wide settings.
+#
+# For example, within the user ~/.OpenFOAM/<VER>/prefs.sh:
+# \code
+# eval $(foamEtcFile -sh -mode=go prefs.sh)
+# \endcode
+#
+# Environment
+# - WM_PROJECT: (unset defaults to OpenFOAM)
+# - WM_PROJECT_SITE: (unset defaults to PREFIX/site)
+# - WM_PROJECT_VERSION: (unset defaults to detect from path)
+#
+# Note
+# This script must exist in one of these locations:
+# - $WM_PROJECT_INST_DIR/OpenFOAM-<VERSION>/bin
+# - $WM_PROJECT_INST_DIR/openfoam-<VERSION>/bin
+# - $WM_PROJECT_INST_DIR/OpenFOAM+<VERSION>/bin
+# - $WM_PROJECT_INST_DIR/openfoam+<VERSION>/bin
+# - $WM_PROJECT_INST_DIR/openfoam<VERSION>/bin (debian version)
+#
+#-------------------------------------------------------------------------------
+unset optQuiet optSilent
+usage() {
+ [ "${optQuiet:-$optSilent}" = true ] && exit 1
+ exec 1>&2
+ while [ "$#" -ge 1 ]; do echo "$1"; shift; done
+ cat<<USAGE
+
+Usage: foamEtcFile [OPTION] fileName
+ foamEtcFile [OPTION] [-list|-list-test] [fileName]
+
+options:
+ -a, -all Return all files (otherwise stop after the first match)
+ -l, -list List directories or files to be checked
+ -list-test List (existing) directories or files to be checked
+ -mode=MODE Any combination of u(user), g(group), o(other)
+ -prefix=DIR Specify an alternative installation prefix
+ -version=VER Specify alternative OpenFOAM version (eg, 3.0, 1612, ...)
+ -csh | -sh Produce output suitable for a csh or sh 'eval'
+ -csh-verbose | -sh-verbose
+ As per -csh | -sh, with additional verbosity
+ -q, -quiet Suppress all normal output
+ -s, -silent Suppress stderr, except -csh-verbose, -sh-verbose output
+ -help Print the usage
+
+Locate user/group/other file with semantics similar to the
+~OpenFOAM/fileName expansion.
+
+Single character options must not be grouped. Equivalent options:
+ -mode=MODE, -mode MODE, -m MODE
+ -prefix=DIR, -prefix DIR, -p DIR
+ -version=VER, -version VER, -v VER
+
+Exit status
+ 0 when the file is found. Print resolved path to stdout.
+ 1 for miscellaneous errors.
+ 2 when the file is not found.
+
+USAGE
+ exit 1
+}
+
+# Report error and exit
+die()
+{
+ [ "${optQuiet:-$optSilent}" = true ] && exit 1
+ exec 1>&2
+ echo
+ echo "Error encountered:"
+ while [ "$#" -ge 1 ]; do echo " $1"; shift; done
+ echo
+ echo "See 'foamEtcFile -help' for usage"
+ echo
+ exit 1
+}
+
+#-------------------------------------------------------------------------------
+binDir="${0%/*}" # The bin dir
+projectDir="${binDir%/bin}" # The project dir
+prefixDir="${projectDir%/*}" # The prefix dir (same as $WM_PROJECT_INST_DIR)
+
+# Could not resolve projectDir, prefixDir? (eg, called as ./bin/foamEtcFile)
+if [ "$prefixDir" = "$projectDir" ]
+then
+ binDir="$(cd $binDir && pwd -L)"
+ projectDir="${binDir%/bin}"
+ prefixDir="${projectDir%/*}"
+fi
+projectDirName="${projectDir##*/}" # The project directory name
+
+projectVersion="$WM_PROJECT_VERSION" # Empty? - will be treated later
+userDir="$HOME/.OpenFOAM" # Hard-coded as per foamVersion.H
+
+#-------------------------------------------------------------------------------
+
+# Guess project version or simply get the stem part of the projectDirName.
+# Handle standard and debian naming conventions.
+#
+# - projectVersion: update unless already set
+#
+# Helper variables:
+# - dirBase (for reassembling name) == projectDirName without the version
+# - versionNum (debian packaging)
+unset dirBase versionNum
+guessVersion()
+{
+ local version
+
+ case "$projectDirName" in
+ (OpenFOAM-* | openfoam-*)
+ # Standard naming: OpenFOAM-<VERSION> or openfoam-<VERSION>
+ dirBase="${projectDirName%%-*}-"
+ version="${projectDirName#*-}"
+ version="${version%%*-}" # Extra safety, eg openfoam-version-packager
+ ;;
+
+ (OpenFOAM+* | openfoam+*)
+ # Alternative naming: OpenFOAM+<VERSION> or openfoam+<VERSION>
+ dirBase="${projectDirName%%+*}+"
+ version="${projectDirName#*+}"
+ version="${version%%*-}" # Extra safety, eg openfoam-version-packager
+ ;;
+
+ (openfoam[0-9]*)
+ # Debian naming: openfoam<VERSION>
+ dirBase="openfoam"
+ version="${projectDirName#openfoam}"
+ versionNum="$version"
+
+ # Convert digits version number to decimal delineated
+ case "${#versionNum}" in (2|3|4)
+ version=$(echo "$versionNum" | sed -e 's@\([0-9]\)@\1.@g')
+ version="${version%.}"
+ ;;
+ esac
+
+ # Ignore special treatment if no decimals were inserted.
+ [ "${#version}" -gt "${#versionNum}" ] || unset versionNum
+ ;;
+
+ (*)
+ die "unknown/unsupported naming convention for '$projectDirName'"
+ ;;
+ esac
+
+ # Set projectVersion if required
+ : ${projectVersion:=$version}
+}
+
+
+# Set projectVersion and update versionNum, projectDirName accordingly
+setVersion()
+{
+ projectVersion="$1"
+
+ # Need dirBase when reassembling projectDirName
+ [ -n "$dirBase" ] || guessVersion
+
+ # Debian: update x.y.z -> xyz version
+ if [ -n "$versionNum" ]
+ then
+ versionNum=$(echo "$projectVersion" | sed -e 's@\.@@g')
+ fi
+
+ projectDirName="$dirBase${versionNum:-$projectVersion}"
+}
+
+
+optMode=ugo # Default mode is always 'ugo'
+unset optAll optList optShell optVersion
+
+# Parse options
+while [ "$#" -gt 0 ]
+do
+ case "$1" in
+ -h | -help)
+ usage
+ ;;
+ -a | -all)
+ optAll=true
+ unset optShell
+ ;;
+ -l | -list)
+ optList=true
+ unset optShell
+ ;;
+ -list-test)
+ optList='test'
+ unset optShell
+ ;;
+ -csh | -sh | -csh-verbose | -sh-verbose)
+ optShell="${1#-}"
+ unset optAll
+ ;;
+ -mode=[ugo]*)
+ optMode="${1#*=}"
+ ;;
+ -prefix=/*)
+ prefixDir="${1#*=}"
+ prefixDir="${prefixDir%/}"
+ ;;
+ -version=*)
+ optVersion="${1#*=}"
+ ;;
+ -m | -mode)
+ optMode="$2"
+ shift
+ # Sanity check. Handles missing argument too.
+ case "$optMode" in
+ ([ugo]*)
+ ;;
+ (*)
+ die "invalid mode '$optMode'"
+ ;;
+ esac
+ ;;
+ -p | -prefix)
+ [ "$#" -ge 2 ] || die "'$1' option requires an argument"
+ prefixDir="${2%/}"
+ shift
+ ;;
+ -q | -quiet)
+ optQuiet=true
+ ;;
+ -s | -silent)
+ optSilent=true
+ ;;
+ -v | -version)
+ [ "$#" -ge 2 ] || die "'$1' option requires an argument"
+ optVersion="$2"
+ shift
+ ;;
+ --)
+ shift
+ break
+ ;;
+ -*)
+ die "unknown option: '$1'"
+ ;;
+ *)
+ break
+ ;;
+ esac
+ shift
+done
+
+
+#-------------------------------------------------------------------------------
+
+if [ -n "$optVersion" ]
+then
+ setVersion $optVersion
+elif [ -z "$projectVersion" ]
+then
+ guessVersion
+fi
+
+# Updates:
+# - projectDir for changes via -prefix or -version
+# - groupDir for changes via -prefix
+projectDir="$prefixDir/$projectDirName"
+groupDir="${WM_PROJECT_SITE:-$prefixDir/site}"
+
+
+# Debugging:
+# echo "Installed locations:" 1>&2
+# for i in projectDir prefixDir projectDirName projectVersion
+# do
+# eval echo "$i=\$$i" 1>&2
+# done
+
+
+# Save the essential bits of information
+# silently remove leading ~OpenFOAM/ (used in Foam::findEtcFile)
+nArgs=$#
+fileName="${1#~OpenFOAM/}"
+
+# Define the various places to be searched:
+unset dirList
+case "$optMode" in (*u*) # (U)ser
+ dirList="$dirList $userDir/$projectVersion $userDir"
+ ;;
+esac
+
+case "$optMode" in (*g*) # (G)roup == site
+ dirList="$dirList $groupDir/$projectVersion $groupDir"
+ ;;
+esac
+
+case "$optMode" in (*o*) # (O)ther == shipped
+ dirList="$dirList $projectDir/etc"
+ ;;
+esac
+set -- $dirList
+
+
+#
+# The main routine
+#
+
+exitCode=0
+if [ -n "$optList" ]
+then
+
+ # List directories, or potential file locations
+ [ "$nArgs" -le 1 ] || \
+ die "-list expects 0 or 1 filename, but $nArgs provided"
+
+ # A silly combination, but -quiet does have precedence
+ [ -n "$optQuiet" ] && exit 0
+
+ # Test for directory or file too?
+ if [ "$optList" = "test" ]
+ then
+ exitCode=2 # Fallback to a general error (file not found)
+
+ if [ "$nArgs" -eq 1 ]
+ then
+ for dir
+ do
+ resolved="$dir/$fileName"
+ if [ -f "$resolved" ]
+ then
+ echo "$resolved"
+ exitCode=0 # OK
+ fi
+ done
+ else
+ for dir
+ do
+ if [ -d "$dir" ]
+ then
+ echo "$dir"
+ exitCode=0 # OK
+ fi
+ done
+ fi
+ else
+ for dir
+ do
+ echo "$dir${fileName:+/}$fileName"
+ done
+ fi
+
+else
+
+ [ "$nArgs" -eq 1 ] || die "One filename expected - $nArgs provided"
+
+ exitCode=2 # Fallback to a general error (file not found)
+
+ for dir
+ do
+ if [ -f "$dir/$fileName" ]
+ then
+ exitCode=0
+ [ -n "$optQuiet" ] && break
+
+ case "$optShell" in
+ (*verbose)
+ echo "Using: $dir/$fileName" 1>&2
+ ;;
+ esac
+
+ case "$optShell" in
+ csh*)
+ echo "source $dir/$fileName"
+ break
+ ;;
+ sh*)
+ echo ". $dir/$fileName"
+ break
+ ;;
+ *)
+ echo "$dir/$fileName"
+ [ -n "$optAll" ] || break
+ ;;
+ esac
+ fi
+ done
+
+fi
+
+exit $exitCode
+
+#------------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfoam-org/package.py b/var/spack/repos/builtin/packages/openfoam-org/package.py
new file mode 100644
index 0000000000..c176adcbe5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfoam-org/package.py
@@ -0,0 +1,359 @@
+##############################################################################
+# Copyright (c) 2017 Mark Olesen, OpenCFD Ltd.
+#
+# This file was authored by Mark Olesen <mark.olesen@esi-group.com>
+# and is released as part of spack under the LGPL license.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for the LLNL notice and LGPL.
+#
+# License
+# -------
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# Legal Notice
+# ------------
+# OPENFOAM is a trademark owned by OpenCFD Ltd
+# (producer and distributor of the OpenFOAM software via www.openfoam.com).
+# The trademark information must remain visible and unadulterated in this
+# file and via the "spack info" and comply with the term set by
+# http://openfoam.com/legal/trademark-policy.php
+#
+# This file is not part of OpenFOAM, nor does it constitute a component of an
+# OpenFOAM distribution.
+#
+##############################################################################
+#
+# Notes
+# - The openfoam-org package is a modified version of the openfoam-com package.
+# If changes are needed here, consider if they should also be applied there.
+#
+# - Building with boost/cgal is not included, since some of the logic is not
+# entirely clear and thus untested.
+# - Resolution of flex, zlib needs more attention (within OpenFOAM)
+#
+# - mpi handling: WM_MPLIB=SYSTEMMPI and use spack to populate prefs.sh for it.
+# Provide wmake rules for special purpose 'USER' and 'USERMPI'
+# mpi implementations, in case these are required.
+#
+# Known issues
+# - Combining +zoltan with +int64 has not been tested, but probably won't work.
+# - Combining +mgridgen with +int64 or +float32 probably won't work.
+#
+##############################################################################
+import glob
+import re
+import shutil
+import os
+
+import llnl.util.tty as tty
+
+from spack import *
+from spack.pkg.builtin.openfoam_com import add_extra_files
+from spack.pkg.builtin.openfoam_com import write_environ
+from spack.pkg.builtin.openfoam_com import rewrite_environ_files
+from spack.pkg.builtin.openfoam_com import mplib_content
+from spack.pkg.builtin.openfoam_com import OpenfoamArch
+
+
+class OpenfoamOrg(Package):
+ """OpenFOAM is a GPL-opensource C++ CFD-toolbox.
+ The openfoam.org release is managed by the OpenFOAM Foundation Ltd as
+ a licensee of the OPENFOAM trademark.
+ This offering is not approved or endorsed by OpenCFD Ltd,
+ producer and distributor of the OpenFOAM software via www.openfoam.com,
+ and owner of the OPENFOAM trademark.
+ """
+
+ homepage = "http://www.openfoam.org/"
+ baseurl = "https://github.com/OpenFOAM"
+ url = "https://github.com/OpenFOAM/OpenFOAM-4.x/archive/version-4.1.tar.gz"
+
+ version('4.1', '318a446c4ae6366c7296b61184acd37c',
+ url=baseurl + '/OpenFOAM-4.x/archive/version-4.1.tar.gz')
+ version('develop', git='https://github.com/OpenFOAM/OpenFOAM-dev.git')
+
+ variant('int64', default=False,
+ description='Compile with 64-bit label')
+ variant('float32', default=False,
+ description='Compile with 32-bit scalar (single-precision)')
+ variant('source', default=True,
+ description='Install library/application sources and tutorials')
+
+ provides('openfoam')
+ depends_on('mpi')
+ depends_on('zlib')
+ depends_on('flex', type='build')
+ depends_on('cmake', type='build')
+
+ # Require scotch with ptscotch - corresponds to standard OpenFOAM setup
+ depends_on('scotch~metis+mpi~int64', when='~int64')
+ depends_on('scotch~metis+mpi+int64', when='+int64')
+
+ # General patches - foamEtcFile as per openfoam.com (robuster)
+ common = ['spack-Allwmake', 'README-spack']
+ assets = ['bin/foamEtcFile']
+
+ # Version-specific patches
+ patch('41-etc.patch', when='@4.1')
+ patch('41-site.patch', when='@4.1')
+
+ # Some user config settings
+ config = {
+ 'mplib': 'SYSTEMMPI', # Use system mpi for spack
+ # Add links into bin/, lib/ (eg, for other applications)
+ 'link': False
+ }
+
+ # The openfoam architecture, compiler information etc
+ _foam_arch = None
+
+ # Content for etc/prefs.{csh,sh}
+ etc_prefs = {}
+
+ # Content for etc/config.{csh,sh}/ files
+ etc_config = {}
+
+ phases = ['configure', 'build', 'install']
+ build_script = './spack-Allwmake' # <- Added by patch() method.
+
+ #
+ # - End of definitions / setup -
+ #
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('FOAM_PROJECT_DIR', self.projectdir)
+ run_env.set('WM_PROJECT_DIR', self.projectdir)
+ for d in ['wmake', self.archbin]: # bin already added automatically
+ run_env.prepend_path('PATH', join_path(self.projectdir, d))
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Provide location of the OpenFOAM project.
+ This is identical to the WM_PROJECT_DIR value, but we avoid that
+ variable since it would mask the normal OpenFOAM cleanup of
+ previous versions.
+ """
+ spack_env.set('FOAM_PROJECT_DIR', self.projectdir)
+
+ @property
+ def projectdir(self):
+ """Absolute location of project directory: WM_PROJECT_DIR/"""
+ return self.prefix # <- install directly under prefix
+
+ @property
+ def foam_arch(self):
+ if not self._foam_arch:
+ self._foam_arch = OpenfoamArch(self.spec, **self.config)
+ return self._foam_arch
+
+ @property
+ def archbin(self):
+ """Relative location of architecture-specific executables"""
+ return join_path('platforms', self.foam_arch, 'bin')
+
+ @property
+ def archlib(self):
+ """Relative location of architecture-specific libraries"""
+ return join_path('platforms', self.foam_arch, 'lib')
+
+ def rename_source(self):
+ """This is fairly horrible.
+ The github tarfiles have weird names that do not correspond to the
+ canonical name. We need to rename these, but leave a symlink for
+ spack to work with.
+ """
+ # Note that this particular OpenFOAM requires absolute directories
+ # to build correctly!
+ parent = os.path.dirname(self.stage.source_path)
+ original = os.path.basename(self.stage.source_path)
+ target = 'OpenFOAM-{0}'.format(self.version)
+ # Could also grep through etc/bashrc for WM_PROJECT_VERSION
+ with working_dir(parent):
+ if original != target and not os.path.lexists(target):
+ os.rename(original, target)
+ os.symlink(target, original)
+ tty.info('renamed {0} -> {1}'.format(original, target))
+
+ def patch(self):
+ """Adjust OpenFOAM build for spack.
+ Where needed, apply filter as an alternative to normal patching."""
+ self.rename_source()
+ add_extra_files(self, self.common, self.assets)
+
+ # Avoid WM_PROJECT_INST_DIR for ThirdParty, site or jobControl.
+ # Use openfoam-site.patch to handle jobControl, site.
+ #
+ # Filtering: bashrc,cshrc (using a patch is less flexible)
+ edits = {
+ 'WM_THIRD_PARTY_DIR':
+ r'$WM_PROJECT_DIR/ThirdParty #SPACK: No separate third-party',
+ 'WM_VERSION': self.version, # consistency
+ 'FOAMY_HEX_MESH': '', # This is horrible (unset variable?)
+ }
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path('etc', 'bashrc'),
+ cshell=join_path('etc', 'cshrc'))
+
+ def configure(self, spec, prefix):
+ """Make adjustments to the OpenFOAM configuration files in their various
+ locations: etc/bashrc, etc/config.sh/FEATURE and customizations that
+ don't properly fit get placed in the etc/prefs.sh file (similiarly for
+ csh).
+ """
+ # Filtering bashrc, cshrc
+ edits = {}
+ edits.update(self.foam_arch.foam_dict())
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path('etc', 'bashrc'),
+ cshell=join_path('etc', 'cshrc'))
+
+ # MPI content, with absolute paths
+ user_mpi = mplib_content(spec)
+
+ # Content for etc/prefs.{csh,sh}
+ self.etc_prefs = {
+ r'MPI_ROOT': spec['mpi'].prefix, # Absolute
+ r'MPI_ARCH_FLAGS': '"%s"' % user_mpi['FLAGS'],
+ r'MPI_ARCH_INC': '"%s"' % user_mpi['PINC'],
+ r'MPI_ARCH_LIBS': '"%s"' % user_mpi['PLIBS'],
+ }
+
+ # Content for etc/config.{csh,sh}/ files
+ self.etc_config = {
+ 'CGAL': {},
+ 'scotch': {},
+ 'metis': {},
+ 'paraview': [],
+ 'gperftools': [], # Currently unused
+ }
+
+ if True:
+ self.etc_config['scotch'] = {
+ 'SCOTCH_ARCH_PATH': spec['scotch'].prefix,
+ # For src/parallel/decompose/Allwmake
+ 'SCOTCH_VERSION': 'scotch-{0}'.format(spec['scotch'].version),
+ }
+
+ # Write prefs files according to the configuration.
+ # Only need prefs.sh for building, but install both for end-users
+ if self.etc_prefs:
+ write_environ(
+ self.etc_prefs,
+ posix=join_path('etc', 'prefs.sh'),
+ cshell=join_path('etc', 'prefs.csh'))
+
+ # Adjust components to use SPACK variants
+ for component, subdict in self.etc_config.items():
+ write_environ(
+ subdict,
+ posix=join_path('etc', 'config.sh', component),
+ cshell=join_path('etc', 'config.csh', component))
+
+ def build(self, spec, prefix):
+ """Build using the OpenFOAM Allwmake script, with a wrapper to source
+ its environment first.
+ Only build if the compiler is known to be supported.
+ """
+ self.foam_arch.has_rule(self.stage.source_path)
+ self.foam_arch.create_rules(self.stage.source_path, self)
+
+ args = []
+ if self.parallel: # Build in parallel? - pass via the environment
+ os.environ['WM_NCOMPPROCS'] = str(make_jobs)
+ builder = Executable(self.build_script)
+ builder(*args)
+
+ def install(self, spec, prefix):
+ """Install under the projectdir"""
+ mkdirp(self.projectdir)
+ projdir = os.path.basename(self.projectdir)
+ # Filtering: bashrc, cshrc
+ edits = {
+ 'WM_PROJECT_INST_DIR': os.path.dirname(self.projectdir),
+ 'WM_PROJECT_DIR': join_path('$WM_PROJECT_INST_DIR', projdir),
+ }
+
+ # All top-level files, except spack build info and possibly Allwmake
+ if '+source' in spec:
+ ignored = re.compile(r'^spack-.*')
+ else:
+ ignored = re.compile(r'^(Allwmake|spack-).*')
+
+ files = [
+ f for f in glob.glob("*")
+ if os.path.isfile(f) and not ignored.search(f)
+ ]
+ for f in files:
+ install(f, self.projectdir)
+
+ # Having wmake and ~source is actually somewhat pointless...
+ # Install 'etc' before 'bin' (for symlinks)
+ dirs = ['etc', 'bin', 'wmake']
+ if '+source' in spec:
+ dirs.extend(['applications', 'src', 'tutorials'])
+
+ for d in dirs:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ symlinks=True)
+
+ dirs = ['platforms']
+ if '+source' in spec:
+ dirs.extend(['doc'])
+
+ # Install platforms (and doc) skipping intermediate targets
+ ignored = ['src', 'applications', 'html', 'Guides']
+ for d in dirs:
+ install_tree(
+ d,
+ join_path(self.projectdir, d),
+ ignore=shutil.ignore_patterns(*ignored),
+ symlinks=True)
+
+ etc_dir = join_path(self.projectdir, 'etc')
+ rewrite_environ_files( # Adjust etc/bashrc and etc/cshrc
+ edits,
+ posix=join_path(etc_dir, 'bashrc'),
+ cshell=join_path(etc_dir, 'cshrc'))
+ self.install_links()
+
+ def install_links(self):
+ """Add symlinks into bin/, lib/ (eg, for other applications)"""
+ # Make build log visible - it contains OpenFOAM-specific information
+ with working_dir(self.projectdir):
+ os.symlink(
+ join_path('.spack', 'build.out'),
+ join_path('log.' + str(self.foam_arch)))
+
+ if not self.config['link']:
+ return
+
+ # ln -s platforms/linux64GccXXX/lib lib
+ with working_dir(self.projectdir):
+ if os.path.isdir(self.archlib):
+ os.symlink(self.archlib, 'lib')
+
+ # (cd bin && ln -s ../platforms/linux64GccXXX/bin/* .)
+ with working_dir(join_path(self.projectdir, 'bin')):
+ for f in [
+ f for f in glob.glob(join_path('..', self.archbin, "*"))
+ if os.path.isfile(f)
+ ]:
+ os.symlink(f, os.path.basename(f))
+
+# -----------------------------------------------------------------------------
diff --git a/var/spack/repos/builtin/packages/openfst/openfst-1.4.1.patch b/var/spack/repos/builtin/packages/openfst/openfst-1.4.1.patch
new file mode 100644
index 0000000000..1037b24231
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfst/openfst-1.4.1.patch
@@ -0,0 +1,227 @@
+*** openfst-1.4.1/src/include/fst/minimize.h
+***************
+*** 134,140 ****
+ typedef typename A::Weight Weight;
+ typedef ReverseArc<A> RevA;
+
+! CyclicMinimizer(const ExpandedFst<A>& fst) {
+ Initialize(fst);
+ Compute(fst);
+ }
+--- 134,147 ----
+ typedef typename A::Weight Weight;
+ typedef ReverseArc<A> RevA;
+
+! CyclicMinimizer(const ExpandedFst<A>& fst):
+! // tell the Partition data-member to expect multiple repeated
+! // calls to SplitOn with the same element if we are non-deterministic.
+! P_(fst.Properties(kIDeterministic, true) == 0) {
+! if(fst.Properties(kIDeterministic, true) == 0)
+! CHECK(Weight::Properties() & kIdempotent); // this minimization
+! // algorithm for non-deterministic FSTs can only work with idempotent
+! // semirings.
+ Initialize(fst);
+ Compute(fst);
+ }
+***************
+*** 315,321 ****
+ typedef typename A::StateId ClassId;
+ typedef typename A::Weight Weight;
+
+! AcyclicMinimizer(const ExpandedFst<A>& fst) {
+ Initialize(fst);
+ Refine(fst);
+ }
+--- 322,334 ----
+ typedef typename A::StateId ClassId;
+ typedef typename A::Weight Weight;
+
+! AcyclicMinimizer(const ExpandedFst<A>& fst):
+! // tell the Partition data-member to expect multiple repeated
+! // calls to SplitOn with the same element if we are non-deterministic.
+! partition_(fst.Properties(kIDeterministic, true) == 0) {
+! if(fst.Properties(kIDeterministic, true) == 0)
+! CHECK(Weight::Properties() & kIdempotent); // minimization for
+! // non-deterministic FSTs can only work with idempotent semirings.
+ Initialize(fst);
+ Refine(fst);
+ }
+***************
+*** 531,543 ****
+ void Minimize(MutableFst<A>* fst,
+ MutableFst<A>* sfst = 0,
+ float delta = kDelta) {
+! uint64 props = fst->Properties(kAcceptor | kIDeterministic|
+! kWeighted | kUnweighted, true);
+! if (!(props & kIDeterministic)) {
+! FSTERROR() << "FST is not deterministic";
+! fst->SetProperties(kError, kError);
+! return;
+! }
+
+ if (!(props & kAcceptor)) { // weighted transducer
+ VectorFst< GallicArc<A, STRING_LEFT> > gfst;
+--- 544,550 ----
+ void Minimize(MutableFst<A>* fst,
+ MutableFst<A>* sfst = 0,
+ float delta = kDelta) {
+! uint64 props = fst->Properties(kAcceptor | kWeighted | kUnweighted, true);
+
+ if (!(props & kAcceptor)) { // weighted transducer
+ VectorFst< GallicArc<A, STRING_LEFT> > gfst;
+*** openfst-1.4.1/src/include/fst/partition.h
+***************
+*** 43,50 ****
+ friend class PartitionIterator<T>;
+
+ struct Element {
+! Element() : value(0), next(0), prev(0) {}
+! Element(T v) : value(v), next(0), prev(0) {}
+
+ T value;
+ Element* next;
+--- 43,50 ----
+ friend class PartitionIterator<T>;
+
+ struct Element {
+! Element() : value(0), next(0), prev(0) {}
+! Element(T v) : value(v), next(0), prev(0) {}
+
+ T value;
+ Element* next;
+***************
+*** 52,60 ****
+ };
+
+ public:
+! Partition() {}
+
+! Partition(T num_states) {
+ Initialize(num_states);
+ }
+
+--- 52,62 ----
+ };
+
+ public:
+! Partition(bool allow_repeated_split):
+! allow_repeated_split_(allow_repeated_split) {}
+
+! Partition(bool allow_repeated_split, T num_states):
+! allow_repeated_split_(allow_repeated_split) {
+ Initialize(num_states);
+ }
+
+***************
+*** 137,152 ****
+ if (class_size_[class_id] == 1) return;
+
+ // first time class is split
+! if (split_size_[class_id] == 0)
+ visited_classes_.push_back(class_id);
+!
+ // increment size of split (set of element at head of chain)
+ split_size_[class_id]++;
+!
+ // update split point
+! if (class_split_[class_id] == 0)
+! class_split_[class_id] = classes_[class_id];
+! if (class_split_[class_id] == elements_[element_id])
+ class_split_[class_id] = elements_[element_id]->next;
+
+ // move to head of chain in same class
+--- 139,154 ----
+ if (class_size_[class_id] == 1) return;
+
+ // first time class is split
+! if (split_size_[class_id] == 0) {
+ visited_classes_.push_back(class_id);
+! class_split_[class_id] = classes_[class_id];
+! }
+ // increment size of split (set of element at head of chain)
+ split_size_[class_id]++;
+!
+ // update split point
+! if (class_split_[class_id] != 0
+! && class_split_[class_id] == elements_[element_id])
+ class_split_[class_id] = elements_[element_id]->next;
+
+ // move to head of chain in same class
+***************
+*** 157,180 ****
+ // class indices of the newly created class. Returns the new_class id
+ // or -1 if no new class was created.
+ T SplitRefine(T class_id) {
+ // only split if necessary
+! if (class_size_[class_id] == split_size_[class_id]) {
+! class_split_[class_id] = 0;
+ split_size_[class_id] = 0;
+ return -1;
+ } else {
+-
+ T new_class = AddClass();
+ size_t remainder = class_size_[class_id] - split_size_[class_id];
+ if (remainder < split_size_[class_id]) { // add smaller
+- Element* split_el = class_split_[class_id];
+ classes_[new_class] = split_el;
+- class_size_[class_id] = split_size_[class_id];
+- class_size_[new_class] = remainder;
+ split_el->prev->next = 0;
+ split_el->prev = 0;
+ } else {
+- Element* split_el = class_split_[class_id];
+ classes_[new_class] = classes_[class_id];
+ class_size_[class_id] = remainder;
+ class_size_[new_class] = split_size_[class_id];
+--- 159,189 ----
+ // class indices of the newly created class. Returns the new_class id
+ // or -1 if no new class was created.
+ T SplitRefine(T class_id) {
++
++ Element* split_el = class_split_[class_id];
+ // only split if necessary
+! //if (class_size_[class_id] == split_size_[class_id]) {
+! if(split_el == NULL) { // we split on everything...
+ split_size_[class_id] = 0;
+ return -1;
+ } else {
+ T new_class = AddClass();
++
++ if(allow_repeated_split_) { // split_size_ is possibly
++ // inaccurate, so work it out exactly.
++ size_t split_count; Element *e;
++ for(split_count=0,e=classes_[class_id];
++ e != split_el; split_count++, e=e->next);
++ split_size_[class_id] = split_count;
++ }
+ size_t remainder = class_size_[class_id] - split_size_[class_id];
+ if (remainder < split_size_[class_id]) { // add smaller
+ classes_[new_class] = split_el;
+ split_el->prev->next = 0;
+ split_el->prev = 0;
++ class_size_[class_id] = split_size_[class_id];
++ class_size_[new_class] = remainder;
+ } else {
+ classes_[new_class] = classes_[class_id];
+ class_size_[class_id] = remainder;
+ class_size_[new_class] = split_size_[class_id];
+***************
+*** 245,254 ****
+--- 254,269 ----
+ vector<T> class_size_;
+
+ // size of split for each class
++ // in the nondeterministic case, split_size_ is actually an upper
++ // bound on the size of split for each class.
+ vector<T> split_size_;
+
+ // set of visited classes to be used in split refine
+ vector<T> visited_classes_;
++
++ // true if input fst was deterministic: we can make
++ // certain assumptions in this case that speed up the algorithm.
++ bool allow_repeated_split_;
+ };
+
+
+
diff --git a/var/spack/repos/builtin/packages/openfst/openfst_gcc41up.patch b/var/spack/repos/builtin/packages/openfst/openfst_gcc41up.patch
new file mode 100644
index 0000000000..0e3eb87e8b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfst/openfst_gcc41up.patch
@@ -0,0 +1,28 @@
+*** openfst-1.4.1/src/include/fst/lock.h
+***************
+*** 78,85 ****
+ RefCounter() : count_(1) {}
+
+ int count() const { return count_; }
+! int Incr() const { return ++count_; }
+! int Decr() const { return --count_; }
+
+ private:
+ mutable int count_;
+--- 78,93 ----
+ RefCounter() : count_(1) {}
+
+ int count() const { return count_; }
+!
+! // below lines are modifications of openfst for multi-thrads support,
+! // from tools/extras/openfst_gcc41up.patch, applied by tools/Makefile,
+! // applicable to gcc 4.1 or above
+! // int Incr() const { return ++count_; }
+! // int Decr() const { return --count_; }
+!
+! int Incr() const { return __sync_add_and_fetch(&count_, 1); }
+! int Decr() const { return __sync_sub_and_fetch(&count_, 1); }
+! // end modifications
+
+ private:
+ mutable int count_;
diff --git a/var/spack/repos/builtin/packages/openfst/package.py b/var/spack/repos/builtin/packages/openfst/package.py
new file mode 100644
index 0000000000..29b5eca02d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openfst/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Openfst(AutotoolsPackage):
+ """OpenFst is a library for constructing, combining, optimizing,
+ and searching weighted finite-state transducers (FSTs). Weighted
+ finite-state transducers are automata where each transition has
+ an input label, an output label, and a weight."""
+
+ homepage = "http://www.openfst.org"
+ url = "http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.6.1.tar.gz"
+ list_url = "http://www.openfst.org/twiki/bin/view/FST/FstDownload"
+
+ version('1.6.1', '1173066ed987072183b950b54bdc9315')
+ version('1.6.0', '2b7bcfde6b629857dc5f9ad7edd6ece9')
+ version('1.5.4', 'e52bd59ec9d9edde0c1268a382662741')
+ version('1.5.3', 'f04e580b5bc574571854304c9656a3e2')
+ version('1.5.2', 'e9d43874f7cadf791394caab3925eee4')
+ version('1.5.1', '8869e44c5a4af65409ae78b9f482b40e')
+ version('1.5.0', 'a24fee5ffe28744c6fb7b1a49e0006c4')
+ version('1.4.1-patch', 'ca8f1730b9b9b281e515611fa9ae23c0',
+ url='http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.4.1.tar.gz')
+ version('1.4.1', 'ca8f1730b9b9b281e515611fa9ae23c0')
+ version('1.4.0', '662367ec91084ffab48ee9b5716de39c')
+
+ conflicts('%intel@16:')
+ conflicts('%gcc@6:')
+
+ # Patch openfst-1.4.1 for kaldi@c024e8
+ # See https://github.com/kaldi-asr/kaldi/blob/c024e8aa0a727bf76c91a318f76a1f8b0b59249e/tools/Makefile#L82-L88
+ patch('openfst-1.4.1.patch', when='@1.4.1-patch')
+ patch('openfst_gcc41up.patch', when='@1.4.1-patch')
diff --git a/var/spack/repos/builtin/packages/openjpeg/package.py b/var/spack/repos/builtin/packages/openjpeg/package.py
index 9790c52e7d..1998885502 100644
--- a/var/spack/repos/builtin/packages/openjpeg/package.py
+++ b/var/spack/repos/builtin/packages/openjpeg/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -43,7 +43,3 @@ class Openjpeg(CMakePackage):
version('2.0', 'cdf266530fee8af87454f15feb619609')
version('1.5.2', '545f98923430369a6b046ef3632ef95c')
version('1.5.1', 'd774e4b5a0db5f0f171c4fc0aabfa14e')
-
- def url_for_version(self, version):
- fmt = 'https://github.com/uclouvain/openjpeg/archive/version.{0}.tar.gz'
- return fmt.format(version.dotted)
diff --git a/var/spack/repos/builtin/packages/openmc/package.py b/var/spack/repos/builtin/packages/openmc/package.py
new file mode 100644
index 0000000000..b48928c02c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openmc/package.py
@@ -0,0 +1,91 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Openmc(MakefilePackage):
+ """The OpenMC project aims to provide a fully-featured Monte Carlo particle
+ transport code based on modern methods. It is a constructive solid
+ geometry, continuous-energy transport code that uses ACE format cross
+ sections. The project started under the Computational Reactor Physics
+ Group at MIT."""
+
+ homepage = "https://github.com/ANL-CESAR/"
+ url = "https://github.com/ANL-CESAR/openmc.git"
+
+ tags = ['proxy-app']
+
+ version('develop', git='https://github.com/ANL-CESAR/openmc.git')
+
+ build_directory = 'src'
+
+ parallel = False
+
+ @property
+ def build_targets(self):
+
+ targets = []
+
+ if self.compiler.name == 'gcc':
+ targets.append('COMPILER=gnu')
+ targets.append('MACHINE=UNKNOWN')
+ if self.compiler.name == 'intel':
+ targets.append('COMPILER=intel')
+ if self.compiler.name == 'pgi':
+ targets.append('COMPILER=pgi')
+ if self.compiler.name == 'xl':
+ targets.append('COMPILER=ibm')
+ if self.compiler.name == 'cce':
+ targets.append('COMPILER=cray')
+
+ return targets
+
+ def install(self, spec, prefix):
+ with working_dir('src'):
+ pth_st_cmp = join_path(prefix.bin, 'statepoint_cmp')
+ pth_st_histogram = join_path(prefix.bin, 'statepoint_histogram')
+ pth_st_meshpoint = join_path(prefix.bin, 'statepoint_meshpoint')
+ pth_openmc = join_path(prefix, 'share/man/man1/openmc.1')
+ pth_copyright = join_path(prefix, 'share/doc/openmc/copyright')
+ mkdir(prefix.bin)
+ mkdirp(pth_st_cmp)
+ mkdirp(pth_st_histogram)
+ mkdirp(pth_st_meshpoint)
+ mkdirp(pth_openmc)
+ mkdirp(pth_copyright)
+
+ install('openmc', prefix.bin)
+ install('utils/statepoint_cmp.py', pth_st_cmp)
+ install('utils/statepoint_histogram.py',
+ pth_st_histogram)
+ install('utils/statepoint_meshplot.py',
+ pth_st_meshpoint)
+ install('man/man1/openmc.1', pth_openmc)
+ install('LICENSE', pth_copyright)
+ install_tree('docs/', prefix.docs)
+ install_tree('examples/', prefix.examples)
+ install_tree('data/', prefix.data)
+ install_tree('tests/', prefix.tests)
diff --git a/var/spack/repos/builtin/packages/openmpi/fix_multidef_pmi_class.patch b/var/spack/repos/builtin/packages/openmpi/fix_multidef_pmi_class.patch
new file mode 100644
index 0000000000..28ebd9aeca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openmpi/fix_multidef_pmi_class.patch
@@ -0,0 +1,54 @@
+diff -Naur openmpi-2.0.1.orig/opal/mca/pmix/cray/pmix_cray.c openmpi-2.0.1/opal/mca/pmix/cray/pmix_cray.c
+--- openmpi-2.0.1.orig/opal/mca/pmix/cray/pmix_cray.c 2016-08-23 04:56:37.000000000 +0800
++++ openmpi-2.0.1/opal/mca/pmix/cray/pmix_cray.c 2017-01-31 01:05:34.302807465 +0800
+@@ -6,7 +6,7 @@
+ * Copyright (c) 2011-2015 Los Alamos National Security, LLC. All
+ * rights reserved.
+ * Copyright (c) 2013-2015 Intel, Inc. All rights reserved.
+- * Copyright (c) 2014-2015 Research Organization for Information Science
++ * Copyright (c) 2014-2016 Research Organization for Information Science
+ * and Technology (RIST). All rights reserved.
+ * $COPYRIGHT$
+ *
+@@ -127,7 +127,7 @@
+ opal_pmix_op_cbfunc_t opcbfunc;
+ void *cbdata;
+ } pmi_opcaddy_t;
+-OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
++static OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
+ opal_object_t,
+ NULL, NULL);
+
+diff -Naur openmpi-2.0.1.orig/opal/mca/pmix/s1/pmix_s1.c openmpi-2.0.1/opal/mca/pmix/s1/pmix_s1.c
+--- openmpi-2.0.1.orig/opal/mca/pmix/s1/pmix_s1.c 2016-08-23 04:56:37.000000000 +0800
++++ openmpi-2.0.1/opal/mca/pmix/s1/pmix_s1.c 2017-01-31 01:06:08.014808847 +0800
+@@ -1,7 +1,7 @@
+ /* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
+ /*
+ * Copyright (c) 2014-2015 Intel, Inc. All rights reserved.
+- * Copyright (c) 2014-2015 Research Organization for Information Science
++ * Copyright (c) 2014-2016 Research Organization for Information Science
+ * and Technology (RIST). All rights reserved.
+ * $COPYRIGHT$
+ *
+@@ -88,7 +88,7 @@
+ opal_pmix_op_cbfunc_t opcbfunc;
+ void *cbdata;
+ } pmi_opcaddy_t;
+-OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
++static OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
+ opal_object_t,
+ NULL, NULL);
+
+diff -Naur openmpi-2.0.1.orig/opal/mca/pmix/s2/pmix_s2.c openmpi-2.0.1/opal/mca/pmix/s2/pmix_s2.c
+--- openmpi-2.0.1.orig/opal/mca/pmix/s2/pmix_s2.c 2016-08-23 04:56:37.000000000 +0800
++++ openmpi-2.0.1/opal/mca/pmix/s2/pmix_s2.c 2017-01-31 01:06:27.718809655 +0800
+@@ -95,7 +95,7 @@
+ opal_pmix_op_cbfunc_t opcbfunc;
+ void *cbdata;
+ } pmi_opcaddy_t;
+-OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
++static OBJ_CLASS_INSTANCE(pmi_opcaddy_t,
+ opal_object_t,
+ NULL, NULL);
+
diff --git a/var/spack/repos/builtin/packages/openmpi/package.py b/var/spack/repos/builtin/packages/openmpi/package.py
index 754cc8d93e..5563198649 100644
--- a/var/spack/repos/builtin/packages/openmpi/package.py
+++ b/var/spack/repos/builtin/packages/openmpi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,13 +22,16 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
+
import os
+from spack import *
+
def _verbs_dir():
"""Try to find the directory where the OpenFabrics verbs package is
- installed. Return None if not found."""
+ installed. Return None if not found.
+ """
try:
# Try to locate Verbs by looking for a utility in the path
ibv_devices = which("ibv_devices")
@@ -39,8 +42,25 @@ def _verbs_dir():
# Remove executable name and "bin" directory
path = os.path.dirname(path)
path = os.path.dirname(path)
+ # There's usually no "/include" on Unix; use "/usr/include" instead
+ if path == "/":
+ path = "/usr"
return path
- except:
+ except TypeError:
+ return None
+ except ProcessError:
+ return None
+
+
+def _mxm_dir():
+ """Look for default directory where the Mellanox package is
+ installed. Return None if not found.
+ """
+ # Only using default directory; make this more flexible in the future
+ path = "/opt/mellanox/mxm"
+ if os.path.isdir(path):
+ return path
+ else:
return None
@@ -56,39 +76,117 @@ class Openmpi(AutotoolsPackage):
"""
homepage = "http://www.open-mpi.org"
- url = "http://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.1.tar.bz2"
+ url = "https://www.open-mpi.org/software/ompi/v3.0/downloads/openmpi-3.0.0.tar.bz2"
list_url = "http://www.open-mpi.org/software/ompi/"
- list_depth = 3
- version('2.0.1', '6f78155bd7203039d2448390f3b51c96')
- version('2.0.0', 'cdacc800cb4ce690c1f1273cb6366674')
- version('1.10.3', 'e2fe4513200e2aaa1500b762342c674b')
- version('1.10.2', 'b2f43d9635d2d52826e5ef9feb97fd4c')
- version('1.10.1', 'f0fcd77ed345b7eafb431968124ba16e')
- version('1.10.0', '280cf952de68369cebaca886c5ce0304')
- version('1.8.8', '0dab8e602372da1425e9242ae37faf8c')
- version('1.6.5', '03aed2a4aa4d0b27196962a2a65fc475')
+ # Current
+ version('3.0.0', '757d51719efec08f9f1a7f32d58b3305') # libmpi.so.40.00.0
+
+ # Still supported
+ version('2.1.2', 'ff2e55cc529802e7b0738cf87acd3ee4') # libmpi.so.20.10.2
+ version('2.1.1', 'ae542f5cf013943ffbbeb93df883731b') # libmpi.so.20.10.1
+ version('2.1.0', '4838a5973115c44e14442c01d3f21d52') # libmpi.so.20.10.0
+ version('2.0.3', '6c09e56ac2230c4f9abd8ba029f03edd') # libmpi.so.20.0.3
+ version('2.0.2', 'ecd99aa436a1ca69ce936a96d6a3fa48') # libmpi.so.20.0.2
+ version('2.0.1', '6f78155bd7203039d2448390f3b51c96') # libmpi.so.20.0.1
+ version('2.0.0', 'cdacc800cb4ce690c1f1273cb6366674') # libmpi.so.20.0.0
+
+ version('1.10.7', 'c87c613f9acb1a4eee21fa1ac8042579') # libmpi.so.12.0.7
+ version('1.10.6', '2e65008c1867b1f47c32f9f814d41706') # libmpi.so.12.0.6
+ version('1.10.5', 'd32ba9530a869d9c1eae930882ea1834') # libmpi.so.12.0.5
+ version('1.10.4', '9d2375835c5bc5c184ecdeb76c7c78ac') # libmpi.so.12.0.4
+ version('1.10.3', 'e2fe4513200e2aaa1500b762342c674b') # libmpi.so.12.0.3
+ version('1.10.2', 'b2f43d9635d2d52826e5ef9feb97fd4c') # libmpi.so.12.0.2
+ version('1.10.1', 'f0fcd77ed345b7eafb431968124ba16e') # libmpi.so.12.0.1
+ version('1.10.0', '280cf952de68369cebaca886c5ce0304') # libmpi.so.12.0.0
+
+ # Retired
+ version('1.8.8', '0dab8e602372da1425e9242ae37faf8c') # libmpi.so.1.6.3
+ version('1.8.7', '2485ed6fa0fab9bb5b4e7a9f63718630') # libmpi.so.1.6.2
+ version('1.8.6', 'eb569e7dc97eeaa5b1876cccf114f377') # libmpi.so.1.6.1
+ version('1.8.5', '93e958914ff0e4d9634d668d2d48c793') # libmpi.so.1.6.0
+ version('1.8.4', '93b7ea2c4ebae76947f942579608ae4a') # libmpi.so.1.6.0
+ version('1.8.3', '2067d00853e0c33d498153fc7d268d2b') # libmpi.so.1.6.0
+ version('1.8.2', '339a9fc199563bacbb359875ce8c9e20') # libmpi.so.1.5.2
+ version('1.8.1', '0e12c24a28a605f681ff9a19a1aca2f1') # libmpi.so.1.5.0
+ version('1.8', '5999cfb177a50c480b5d0bced379aff1') # libmpi.so.1.5.0
+
+ version('1.7.5', '321ab81147ac69a5bbca72652fb3b468') # libmpi.so.1.4.0
+ version('1.7.4', '4aea4fb00f8956dd56ccf50e5784e03f') # libmpi.so.1.3.0
+ version('1.7.3', '7d0779f73c43eb1d098ad037d60649bc') # libmpi.so.1.2.0
+ version('1.7.2', 'b897b92100bd13b367e651df483421d5') # libmpi.so.1.1.2
+ version('1.7.1', 'f25b446a9dcbbd6a105a99d926d34441') # libmpi.so.1.1.1
+ version('1.7', 'c0e3c4b3bfcd8b8bbd027f6f4c164acb') # libmpi.so.1.1.0
+
+ version('1.6.5', '03aed2a4aa4d0b27196962a2a65fc475') # libmpi.so.1.0.8
+ version('1.6.4', '62119579ab92b2592cd96b6a9d2a8cc3') # libmpi.so.1.0.7
+ version('1.6.3', 'eedb73155a7a40b0b07718494298fb25') # libmpi.so.1.0.6
+ version('1.6.2', '219754715a8e40beb468bbc8f0b3251a') # libmpi.so.1.0.3
+ version('1.6.1', '33d2782c20ff6be79130a703b85da8f0') # libmpi.so.1.0.3
+ version('1.6', 'dd6f5bd4b3cb14d93bbf530e50e46e60') # libmpi.so.1.0.3
+
+ # Ancient
+ version('1.5.5', 'f882fd61ff89db856bfd8f0dfa42e1bd') # libmpi.so.1.0.3
+ version('1.5.4', '51153d794c49ce6d275dba2793ab0c68') # libmpi.so.1.0.2
+ version('1.5.3', '0eb8ec2aa05c74a4bc7602b01847131e') # libmpi.so.1.0.1
+ version('1.5.2', 'faaee6a2777bf607d7fa1297c0b3a9ed') # libmpi.so.1.0.1
+ version('1.5.1', '3f9409f5d3b617c04dea48ba8fbd703a') # libmpi.so.1.0.0
+ version('1.5', '86bf5f9ef7337231abbca3350b31f112') # libmpi.so.1.0.0
+
+ version('1.4.5', '84ddd2772f46d35da79e1db8a274c99d') # libmpi.so.0.0.4
+ version('1.4.4', 'e58a1ea7b8af62453aaa0ddaee5f26a0') # libmpi.so.0.0.3
+ version('1.4.3', 'd2ead141c43b915343f5c5a18f3b5016') # libmpi.so.0.0.2
+ version('1.4.2', '53b26fa2586aedaf73cf40effbfcc2f3') # libmpi.so.0.0.2
+ version('1.4.1', '28a820c85e02973809df881fdeddd15e') # libmpi.so.0.0.1
+ version('1.4', '9786ec0698afed9498ce43dc3978a435') # libmpi.so.0.0.1
+
+ version('1.3.4', '978c29f3b671856daa0fc67459b73e01') # libmpi.so.0.0.1
+ version('1.3.3', 'f6cdc9c195daa8571b2e509e952d6755') # libmpi.so.0.0.0
+ version('1.3.2', '75781dc31255cd841701c065e239d994') # libmpi.so.0.0.0
+ version('1.3.1', 'd759523b0752139872c534714d641d64') # libmpi.so.0.0.0
+ version('1.3', 'efbba7d652d1e430d456f65d7a2e339b') # libmpi.so.0.0.0
+
+ version('1.2.9', '78c2aebbb746610ed12bdedcc2b6ec0e') # libmpi.so.0.0.0
+ version('1.2.8', '7f2d5af02101c5f01173f4f6de296549') # libmpi.so.0.0.0
+ version('1.2.7', 'b5ae3059fba71eba4a89a2923da8223f') # libmpi.so.0.0.0
+ version('1.2.6', 'f126793b68e71f5ec4a192c40675af2d') # libmpi.so.0.0.0
+ version('1.2.5', 'c6e82aab6cdcd425bf29217e8317d7dc') # libmpi.so.0.0.0
+ version('1.2.4', '311b38c597f54d8d6b277225ef458666') # libmpi.so.0.0.0
+ version('1.2.3', 'ae980bb00f9686934a1143701cc041e4') # libmpi.so.0.0.0
+ version('1.2.2', '7f553317e388c4efe479e908b66f910d') # libmpi.so.0.0.0
+ version('1.2.1', 'ceaa42891edba2324a94fdd0b87e46ca') # libmpi.so.0.0.0
+ version('1.2', '37e8d4edad54a8d8c3127fbef87ebda1') # libmpi.so.0.0.0
+
+ version('1.1.5', '6aada92896a1830ece6d3ba1e66a17fa') # libmpi.so.0.0.0
+ version('1.1.4', '28940b182156478fa442397b0c9660e1') # libmpi.so.0.0.0
+ version('1.1.3', 'bbaa7fe9d556212d877d872544a31569') # libmpi.so.0.0.0
+ version('1.1.2', '53877ec8bca5f6e505496b6b94b1d850') # libmpi.so.0.0.0
+ version('1.1.1', '498b9322ae0ad512026a008a30c7e0b5') # libmpi.so.0.0.0
+ version('1.1', '821af8bbb7a8e85ec707cb4c3b6bcbf6') # libmpi.so.0.0.0
+
+ version('1.0.2', 'fd32861d643f9fe539a01d0d5b836f41') # libmpi.so.0.0.0
+ version('1.0.1', '8abccca5cdddc81a6d9d9e22b3bb6db9') # libmpi.so.0.0.0
+ version('1.0', 'f5dcb5d3a98f2e5a9c2a0caaef54d806') # libmpi.so.0.0.0
patch('ad_lustre_rwcontig_open_source.patch', when="@1.6.5")
patch('llnl-platforms.patch', when="@1.6.5")
- patch('configure.patch', when="@1.10.0:1.10.1")
-
- # Fabrics
- variant('psm', default=False, description='Build support for the PSM library')
- variant('psm2', default=False,
- description='Build support for the Intel PSM2 library')
- variant('pmi', default=False,
- description='Build support for PMI-based launchers')
- variant('verbs', default=_verbs_dir() is not None,
- description='Build support for OpenFabrics verbs')
- variant('mxm', default=False, description='Build Mellanox Messaging support')
-
- # Schedulers
- # TODO: support for alps and loadleveler is missing
- variant('tm', default=False,
- description='Build TM (Torque, PBSPro, and compatible) support')
- variant('slurm', default=False,
- description='Build SLURM scheduler component')
+ patch('configure.patch', when="@1.10.1")
+ patch('fix_multidef_pmi_class.patch', when="@2.0.0:2.0.1")
+
+ variant(
+ 'fabrics',
+ default=None if _verbs_dir() is None else 'verbs',
+ description='List of fabrics that are enabled',
+ values=('psm', 'psm2', 'pmi', 'verbs', 'mxm'),
+ multi=True
+ )
+
+ variant(
+ 'schedulers',
+ description='List of schedulers for which support is enabled',
+ values=('alps', 'lsf', 'tm', 'slurm', 'sge', 'loadleveler'),
+ multi=True
+ )
# Additional support options
variant('java', default=False, description='Build Java support')
@@ -96,20 +194,38 @@ class Openmpi(AutotoolsPackage):
variant('vt', default=True, description='Build VampirTrace support')
variant('thread_multiple', default=False,
description='Enable MPI_THREAD_MULTIPLE support')
+ variant('cuda', default=False, description='Enable CUDA support')
- # TODO: support for CUDA is missing
-
+ provides('mpi')
provides('mpi@:2.2', when='@1.6.5')
provides('mpi@:3.0', when='@1.7.5:')
provides('mpi@:3.1', when='@2.0.0:')
depends_on('hwloc')
- depends_on('jdk', when='+java')
- depends_on('sqlite', when='+sqlite3')
+ depends_on('hwloc +cuda', when='+cuda')
+ depends_on('java', when='+java')
+ depends_on('sqlite', when='+sqlite3@:1.11')
+
+ conflicts('+cuda', when='@:1.6') # CUDA support was added in 1.7
+ conflicts('fabrics=psm2', when='@:1.8') # PSM2 support was added in 1.10.0
+ conflicts('fabrics=pmi', when='@:1.5.4') # PMI support was added in 1.5.5
+ conflicts('fabrics=mxm', when='@:1.5.3') # MXM support was added in 1.5.4
def url_for_version(self, version):
- return "http://www.open-mpi.org/software/ompi/v%s/downloads/openmpi-%s.tar.bz2" % (
- version.up_to(2), version)
+ url = "http://www.open-mpi.org/software/ompi/v{0}/downloads/openmpi-{1}.tar.bz2"
+ return url.format(version.up_to(2), version)
+
+ @property
+ def libs(self):
+ query_parameters = self.spec.last_query.extra_parameters
+ libraries = ['libmpi']
+
+ if 'cxx' in query_parameters:
+ libraries = ['libmpi_cxx'] + libraries
+
+ return find_libraries(
+ libraries, root=self.prefix, shared=True, recurse=True
+ )
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('MPICC', join_path(self.prefix.bin, 'mpicc'))
@@ -122,7 +238,7 @@ class Openmpi(AutotoolsPackage):
spack_env.set('OMPI_FC', spack_fc)
spack_env.set('OMPI_F77', spack_f77)
- def setup_dependent_package(self, module, dep_spec):
+ def setup_dependent_package(self, module, dependent_spec):
self.spec.mpicc = join_path(self.prefix.bin, 'mpicc')
self.spec.mpicxx = join_path(self.prefix.bin, 'mpic++')
self.spec.mpifc = join_path(self.prefix.bin, 'mpif90')
@@ -132,17 +248,35 @@ class Openmpi(AutotoolsPackage):
join_path(self.prefix.lib, 'libmpi.{0}'.format(dso_suffix))
]
- @property
- def verbs(self):
+ def with_or_without_verbs(self, activated):
# Up through version 1.6, this option was previously named
# --with-openib
- if self.spec.satisfies('@:1.6'):
- return 'openib'
+ opt = 'openib'
# In version 1.7, it was renamed to be --with-verbs
- elif self.spec.satisfies('@1.7:'):
- return 'verbs'
-
- @AutotoolsPackage.precondition('autoreconf')
+ if self.spec.satisfies('@1.7:'):
+ opt = 'verbs'
+ # If the option has not been activated return
+ # --without-openib or --without-verbs
+ if not activated:
+ return '--without-{0}'.format(opt)
+ line = '--with-{0}'.format(opt)
+ path = _verbs_dir()
+ if (path is not None) and (path not in ('/usr', '/usr/local')):
+ line += '={0}'.format(path)
+ return line
+
+ def with_or_without_mxm(self, activated):
+ opt = 'mxm'
+ # If the option has not been activated return --without-mxm
+ if not activated:
+ return '--without-{0}'.format(opt)
+ line = '--with-{0}'.format(opt)
+ path = _mxm_dir()
+ if (path is not None):
+ line += '={0}'.format(path)
+ return line
+
+ @run_before('autoreconf')
def die_without_fortran(self):
# Until we can pass variants such as +fortran through virtual
# dependencies depends_on('mpi'), require Fortran compiler to
@@ -154,48 +288,17 @@ class Openmpi(AutotoolsPackage):
def configure_args(self):
spec = self.spec
-
config_args = [
'--enable-shared',
- '--enable-static',
- '--enable-mpi-cxx',
- # Schedulers
- '--with-tm' if '+tm' in spec else '--without-tm',
- '--with-slurm' if '+slurm' in spec else '--without-slurm',
- # Fabrics
- '--with-psm' if '+psm' in spec else '--without-psm',
+ '--enable-static'
]
+ if self.spec.satisfies('@2.0:'):
+ # for Open-MPI 2.0:, C++ bindings are disabled by default.
+ config_args.extend(['--enable-mpi-cxx'])
- # Intel PSM2 support
- if spec.satisfies('@1.10:'):
- if '+psm2' in spec:
- config_args.append('--with-psm2')
- else:
- config_args.append('--without-psm2')
-
- # PMI support
- if spec.satisfies('@1.5.5:'):
- if '+pmi' in spec:
- config_args.append('--with-pmi')
- else:
- config_args.append('--without-pmi')
-
- # Mellanox Messaging support
- if spec.satisfies('@1.5.4:'):
- if '+mxm' in spec:
- config_args.append('--with-mxm')
- else:
- config_args.append('--without-mxm')
-
- # OpenFabrics verbs support
- if '+verbs' in spec:
- path = _verbs_dir()
- if path is not None and path not in ('/usr', '/usr/local'):
- config_args.append('--with-{0}={1}'.format(self.verbs, path))
- else:
- config_args.append('--with-{0}'.format(self.verbs))
- else:
- config_args.append('--without-{0}'.format(self.verbs))
+ # Fabrics and schedulers
+ config_args.extend(self.with_or_without('fabrics'))
+ config_args.extend(self.with_or_without('schedulers'))
# Hwloc support
if spec.satisfies('@1.5.2:'):
@@ -207,7 +310,7 @@ class Openmpi(AutotoolsPackage):
config_args.extend([
'--enable-java',
'--enable-mpi-java',
- '--with-jdk-dir={0}'.format(spec['jdk'].prefix)
+ '--with-jdk-dir={0}'.format(spec['java'].prefix)
])
else:
config_args.extend([
@@ -234,16 +337,43 @@ class Openmpi(AutotoolsPackage):
else:
config_args.append('--disable-mpi-thread-multiple')
+ # CUDA support
+ # See https://www.open-mpi.org/faq/?category=buildcuda
+ if spec.satisfies('@1.7:'):
+ if '+cuda' in spec:
+ # OpenMPI dynamically loads libcuda.so, requires dlopen
+ config_args.append('--enable-dlopen')
+ # Searches for header files in DIR/include
+ config_args.append('--with-cuda={0}'.format(
+ spec['cuda'].prefix))
+ if spec.satisfies('@1.7:1.7.2'):
+ # This option was removed from later versions
+ config_args.append('--with-cuda-libdir={0}'.format(
+ spec['cuda'].libs.directories[0]))
+ if spec.satisfies('@1.7.2'):
+ # There was a bug in 1.7.2 when --enable-static is used
+ config_args.append('--enable-mca-no-build=pml-bfo')
+ if spec.satisfies('%pgi^cuda@7.0:7.999'):
+ # OpenMPI has problems with CUDA 7 and PGI
+ config_args.append(
+ '--with-wrapper-cflags=-D__LP64__ -ta:tesla')
+ if spec.satisfies('%pgi@:15.8'):
+ # With PGI 15.9 and later compilers, the
+ # CFLAGS=-D__LP64__ is no longer needed.
+ config_args.append('CFLAGS=-D__LP64__')
+ else:
+ config_args.append('--without-cuda')
+
return config_args
- @AutotoolsPackage.sanity_check('install')
+ @run_after('install')
def filter_compilers(self):
"""Run after install to make the MPI compilers use the
- compilers that Spack built the package with.
+ compilers that Spack built the package with.
- If this isn't done, they'll have CC, CXX and FC set
- to Spack's generic cc, c++ and f90. We want them to
- be bound to whatever compiler they were built with.
+ If this isn't done, they'll have CC, CXX and FC set
+ to Spack's generic cc, c++ and f90. We want them to
+ be bound to whatever compiler they were built with.
"""
kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
wrapper_basepath = join_path(self.prefix, 'share', 'openmpi')
diff --git a/var/spack/repos/builtin/packages/openscenegraph/package.py b/var/spack/repos/builtin/packages/openscenegraph/package.py
index 565941ff0e..915848fc23 100644
--- a/var/spack/repos/builtin/packages/openscenegraph/package.py
+++ b/var/spack/repos/builtin/packages/openscenegraph/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Openscenegraph(Package):
+class Openscenegraph(CMakePackage):
"""OpenSceneGraph is an open source, high performance 3D graphics toolkit
that's used in a variety of visual simulation applications."""
@@ -36,42 +36,34 @@ class Openscenegraph(Package):
version('3.2.3', '02ffdad7744c747d8fad0d7babb58427')
version('3.1.5', '1c90b851b109849c985006486ef59822')
- variant('debug', default=False, description='Builds a debug version of the library')
variant('shared', default=True, description='Builds a shared version of the library')
depends_on('cmake@2.8.7:', type='build')
depends_on('qt@4:')
depends_on('zlib')
- def install(self, spec, prefix):
- build_type = 'Debug' if '+debug' in spec else 'Release'
+ def cmake_args(self):
+ spec = self.spec
+
shared_status = 'ON' if '+shared' in spec else 'OFF'
- cmake_args = std_cmake_args[:]
- cmake_args.extend([
- '-DCMAKE_BUILD_TYPE={0}'.format(build_type),
+ args = [
'-DDYNAMIC_OPENSCENEGRAPH={0}'.format(shared_status),
'-DDYNAMIC_OPENTHREADS={0}'.format(shared_status),
- ])
+ '-DZLIB_INCLUDE_DIR={0}'.format(spec['zlib'].prefix.include),
+ '-DZLIB_LIBRARY={0}/libz.{1}'.format(spec['zlib'].prefix.lib,
+ dso_suffix),
+ '-DBUILD_OSG_APPLICATIONS=OFF',
+ '-DOSG_NOTIFY_DISABLED=ON',
+ '-DLIB_POSTFIX=',
+ ]
# NOTE: This is necessary in order to allow OpenSceneGraph to compile
# despite containing a number of implicit bool to int conversions.
if spec.satisfies('%gcc'):
- cmake_args.extend([
+ args.extend([
'-DCMAKE_C_FLAGS=-fpermissive',
'-DCMAKE_CXX_FLAGS=-fpermissive',
])
- with working_dir('spack-build', create=True):
- cmake(
- '..',
- '-DZLIB_INCLUDE_DIR={0}'.format(spec['zlib'].prefix.include),
- '-DZLIB_LIBRARY={0}/libz.{1}'.format(spec['zlib'].prefix.lib,
- dso_suffix),
- '-DBUILD_OSG_APPLICATIONS=OFF',
- '-DOSG_NOTIFY_DISABLED=ON',
- '-DLIB_POSTFIX=',
- *cmake_args
- )
- make()
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/openspeedshop/package.py b/var/spack/repos/builtin/packages/openspeedshop/package.py
index 2e908b4099..36e9fb06e4 100644
--- a/var/spack/repos/builtin/packages/openspeedshop/package.py
+++ b/var/spack/repos/builtin/packages/openspeedshop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
##############################################################################
-# Copyright (c) 2015-2016 Krell Institute. All Rights Reserved.
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
#
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
@@ -45,7 +45,7 @@ import os
import os.path
-class Openspeedshop(Package):
+class Openspeedshop(CMakePackage):
"""OpenSpeedShop is a community effort by The Krell Institute with
current direct funding from DOEs NNSA. It builds on top of a
broad list of community infrastructures, most notably Dyninst
@@ -60,18 +60,12 @@ class Openspeedshop(Package):
"""
homepage = "http://www.openspeedshop.org"
- url = "https://github.com/OpenSpeedShop"
- version('2.2', '16cb051179c2038de4e8a845edf1d573')
+ url = "https://github.com/OpenSpeedShop"
+
# Use when the git repository is available
version('2.3', branch='master',
git='https://github.com/OpenSpeedShop/openspeedshop.git')
- # Optional mirror template
- # url = "file:/home/jeg/OpenSpeedShop_ROOT/SOURCES/openspeedshop-2.3.tar.gz"
- # version('2.3', '517a7798507241ad8abd8b0626a4d2cf')
-
- parallel = False
-
variant('offline', default=False,
description="build with offline instrumentor enabled.")
variant('cbtf', default=True,
@@ -83,11 +77,13 @@ class Openspeedshop(Package):
to point to target build.")
variant('cuda', default=False,
description="build with cuda packages included.")
- variant('ptgf', default=False,
- description="build with the PTGF based gui package enabled.")
- variant('rtfe', default=False,
- description="build for clusters heterogeneous processors \
- on fe/be nodes.")
+
+ variant('gui', default='qt3', values=('none', 'qt3', 'qt4'),
+ description='Build or not build a GUI of choice'
+ )
+
+ variant('build_type', default='None', values=('None'),
+ description='CMake build type')
# MPI variants
variant('openmpi', default=False,
@@ -112,16 +108,19 @@ class Openspeedshop(Package):
depends_on("cmake@3.0.2:", type='build')
# Dependencies for openspeedshop that are common to all
# the variants of the OpenSpeedShop build
+ depends_on("libtool", type='build')
depends_on("bison", type='build')
depends_on("flex", type='build')
- depends_on("binutils@2.24+krellpatch", type='build')
- depends_on("libelf")
+ depends_on("binutils", type='build')
+ depends_on("elf", type="link")
depends_on("libdwarf")
depends_on("sqlite")
depends_on("boost@1.50.0:1.59.0")
- depends_on("dyninst@9.2.0")
+ depends_on("dyninst@9.3.2")
depends_on("libxml2+python")
- depends_on("qt@3.3.8b+krellpatch")
+ depends_on("qt@3.3.8b+krellpatch", when='gui=qt3')
+ # Actively working on adding this gui package
+ # depends_on("cbtf-argonavis-gui", when='gui=qt4')
# Dependencies only for the openspeedshop offline package.
depends_on("libunwind", when='+offline')
@@ -136,53 +135,118 @@ class Openspeedshop(Package):
# Dependencies only for the openspeedshop cbtf package.
depends_on("cbtf", when='+cbtf')
- depends_on("cbtf-krell", when='+cbtf')
+ depends_on('cbtf-krell', when='+cbtf')
+ depends_on('cbtf-krell+mpich', when='+cbtf+mpich')
+ depends_on('cbtf-krell+mpich2', when='+cbtf+mpich2')
+ depends_on('cbtf-krell+mpt', when='+cbtf+mpt')
+ depends_on('cbtf-krell+mvapich', when='+cbtf+mvapich')
+ depends_on('cbtf-krell+mvapich2', when='+cbtf+mvapich2')
+ depends_on('cbtf-krell+openmpi', when='+cbtf+openmpi')
depends_on("cbtf-argonavis", when='+cbtf+cuda')
depends_on("mrnet@5.0.1:+lwthreads", when='+cbtf')
- def adjustBuildTypeParams_cmakeOptions(self, spec, cmakeOptions):
- # Sets build type parameters into cmakeOptions the
- # options that will enable the cbtf-krell built type settings
+ parallel = False
+ build_directory = 'build_openspeedshop'
+
+ def cmake_args(self):
+ spec = self.spec
compile_flags = "-O2 -g"
- BuildTypeOptions = []
- # Set CMAKE_BUILD_TYPE to what cbtf-krell wants it
- # to be, not the stdcmakeargs
- for word in cmakeOptions[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_CXX_FLAGS'):
- cmakeOptions.remove(word)
- if word.startswith('-DCMAKE_C_FLAGS'):
- cmakeOptions.remove(word)
- BuildTypeOptions.extend(['-DCMAKE_BUILD_TYPE=None',
- '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
- '-DCMAKE_C_FLAGS=%s' % compile_flags])
-
- cmakeOptions.extend(BuildTypeOptions)
+
+ if '+offline' in spec:
+ # Indicate building offline vers (writes rawdata files)
+ instrumentor_setting = "offline"
+ if '+runtime' in spec:
+ cmake_args = [
+ '-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
+ '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
+ '-DPAPI_DIR=%s' % spec['papi'].prefix]
+
+ # Add any MPI implementations coming from variant settings
+ self.set_mpi_cmakeOptions(spec, cmake_args)
+
+ else:
+ cmake_args = []
+
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
+ '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
+ '-DPAPI_DIR=%s' % spec['papi'].prefix,
+ '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
+ '-DQTLIB_DIR=%s' % spec['qt'].prefix])
+
+ # Add any MPI implementations coming from variant settings
+ self.set_mpi_cmakeOptions(spec, cmake_args)
+
+ elif '+cbtf' in spec:
+ # Indicate building cbtf vers (transfer rawdata files)
+ instrumentor_setting = "cbtf"
+
+ if '+runtime' in spec:
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ else:
+ cmake_args = []
+
+ # Appends base options to cmake_args
+ self.set_defaultbase_cmakeOptions(spec, cmake_args)
+ guitype = self.spec.variants['gui'].value
+ cmake_args.extend(
+ ['-DCMAKE_CXX_FLAGS=%s' % compile_flags,
+ '-DCMAKE_C_FLAGS=%s' % compile_flags,
+ '-DINSTRUMENTOR=%s' % instrumentor_setting,
+ '-DSQLITE3_DIR=%s' % spec['sqlite'].prefix,
+ '-DCBTF_DIR=%s' % spec['cbtf'].prefix,
+ '-DCBTF_KRELL_DIR=%s' % spec['cbtf-krell'].prefix,
+ '-DMRNET_DIR=%s' % spec['mrnet'].prefix])
+
+ if guitype == 'none':
+ cmake_args.extend(
+ ['-DBUILD_QT3_GUI=FALSE'])
+ elif guitype == 'qt4':
+ cmake_args.extend(
+ ['-DBUILD_QT3_GUI=FALSE'])
+ elif guitype == 'qt3':
+ cmake_args.extend(
+ ['-DQTLIB_DIR=%s'
+ % spec['qt'].prefix])
+
+ return cmake_args
def set_defaultbase_cmakeOptions(self, spec, cmakeOptions):
# Appends to cmakeOptions the options that will enable
# the appropriate base level options to the openspeedshop
# cmake build.
- python_vers = format(spec['python'].version.up_to(2))
- python_pv = '/python' + python_vers
- python_pvs = '/libpython' + python_vers + '.' + format(dso_suffix)
+ python_exe = spec['python'].command.path
+ python_library = spec['python'].libs[0]
+ python_include = spec['python'].headers.directories[0]
BaseOptions = []
BaseOptions.append('-DBINUTILS_DIR=%s' % spec['binutils'].prefix)
- BaseOptions.append('-DLIBELF_DIR=%s' % spec['libelf'].prefix)
+ BaseOptions.append('-DLIBELF_DIR=%s' % spec['elf'].prefix)
BaseOptions.append('-DLIBDWARF_DIR=%s' % spec['libdwarf'].prefix)
- BaseOptions.append(
- '-DPYTHON_EXECUTABLE=%s'
- % join_path(spec['python'].prefix + '/bin/python'))
- BaseOptions.append(
- '-DPYTHON_INCLUDE_DIR=%s'
- % join_path(spec['python'].prefix.include) + python_pv)
- BaseOptions.append(
- '-DPYTHON_LIBRARY=%s'
- % join_path(spec['python'].prefix.lib) + python_pvs)
+ BaseOptions.append('-DPYTHON_EXECUTABLE=%s' % python_exe)
+ BaseOptions.append('-DPYTHON_INCLUDE_DIR=%s' % python_include)
+ BaseOptions.append('-DPYTHON_LIBRARY=%s' % python_library)
BaseOptions.append('-DBoost_NO_SYSTEM_PATHS=TRUE')
BaseOptions.append('-DBoost_NO_BOOST_CMAKE=TRUE')
BaseOptions.append('-DBOOST_ROOT=%s' % spec['boost'].prefix)
@@ -230,7 +294,7 @@ class Openspeedshop(Package):
# set the DYNINSTAPI_RT_LIB library which is
# required for OpenSpeedShop to find loop level
# performance information
- dyninst_libdir = find_libraries(['libdyninstAPI_RT'],
+ dyninst_libdir = find_libraries('libdyninstAPI_RT',
root=self.spec['dyninst'].prefix,
shared=True, recurse=True)
@@ -238,7 +302,7 @@ class Openspeedshop(Package):
run_env.set('DYNINSTAPI_RT_LIB', dyninst_libdir)
# Find openspeedshop library path
- oss_libdir = find_libraries(['libopenss-framework'],
+ oss_libdir = find_libraries('libopenss-framework',
root=self.spec['openspeedshop'].prefix,
shared=True, recurse=True)
run_env.prepend_path('LD_LIBRARY_PATH',
@@ -277,144 +341,3 @@ class Openspeedshop(Package):
run_env.set('OPENSS_MPI_IMPLEMENTATION', 'mvapich2')
if '+openmpi' in self.spec:
run_env.set('OPENSS_MPI_IMPLEMENTATION', 'openmpi')
-
- def install(self, spec, prefix):
-
- if '+offline' in spec:
- instrumentor_setting = "offline"
- if '+runtime' in spec:
- with working_dir('build_runtime', create=True):
-
- cmakeOptions = []
- cmakeOptions.extend([
- '-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '-DINSTRUMENTOR=%s' % instrumentor_setting,
- '-DLIBMONITOR_DIR=%s' % spec['libmonitor'].prefix,
- '-DLIBUNWIND_DIR=%s' % spec['libunwind'].prefix,
- '-DPAPI_DIR=%s' % spec['papi'].prefix])
-
- # Add any MPI implementations coming from variant settings
- self.set_mpi_cmakeOptions(spec, cmakeOptions)
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the build options to the favored
- # ones for this build
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
- else:
- cmake_prefix_path = join_path(spec['dyninst'].prefix)
- with working_dir('build', create=True):
- cmakeOptions = []
-
- # Appends base options to cmakeOptions
- self.set_defaultbase_cmakeOptions(spec, cmakeOptions)
-
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s'
- % prefix,
- '-DCMAKE_PREFIX_PATH=%s'
- % cmake_prefix_path,
- '-DINSTRUMENTOR=%s'
- % instrumentor_setting,
- '-DLIBMONITOR_DIR=%s'
- % spec['libmonitor'].prefix,
- '-DLIBUNWIND_DIR=%s'
- % spec['libunwind'].prefix,
- '-DPAPI_DIR=%s'
- % spec['papi'].prefix,
- '-DSQLITE3_DIR=%s'
- % spec['sqlite'].prefix,
- '-DQTLIB_DIR=%s'
- % spec['qt'].prefix])
-
- # Add any MPI implementations coming from variant settings
- self.set_mpi_cmakeOptions(spec, cmakeOptions)
- cmakeOptions.extend(std_cmake_args)
-
- # Adjust the build options to the favored
- # ones for this build
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
-
- elif '+cbtf' in spec:
- instrumentor_setting = "cbtf"
- # resolve_symbols = "symtabapi"
- cmake_prefix_path = join_path(spec['cbtf'].prefix) \
- + ':' + join_path(spec['cbtf-krell'].prefix)\
- + ':' + join_path(spec['dyninst'].prefix)
-
- if '+runtime' in spec:
- with working_dir('build_cbtf_runtime', create=True):
- cmakeOptions = []
-
- # Appends base options to cmakeOptions
- self.set_defaultbase_cmakeOptions(spec, cmakeOptions)
-
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s'
- % prefix,
- '-DCMAKE_PREFIX_PATH=%s'
- % cmake_prefix_path,
- '-DINSTRUMENTOR=%s'
- % instrumentor_setting,
- '-DCBTF_DIR=%s'
- % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s'
- % spec['cbtf-krell'].prefix,
- '-DMRNET_DIR=%s'
- % spec['mrnet'].prefix])
-
- # Adjust the build options to the
- # favored ones for this build
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
-
- else:
- with working_dir('build_cbtf', create=True):
- cmakeOptions = []
-
- # Appends base options to cmakeOptions
- self.set_defaultbase_cmakeOptions(spec, cmakeOptions)
-
- cmakeOptions.extend(
- ['-DCMAKE_INSTALL_PREFIX=%s'
- % prefix,
- '-DCMAKE_PREFIX_PATH=%s'
- % cmake_prefix_path,
- '-DINSTRUMENTOR=%s'
- % instrumentor_setting,
- '-DSQLITE3_DIR=%s'
- % spec['sqlite'].prefix,
- '-DCBTF_DIR=%s'
- % spec['cbtf'].prefix,
- '-DCBTF_KRELL_DIR=%s'
- % spec['cbtf-krell'].prefix,
- '-DQTLIB_DIR=%s'
- % spec['qt'].prefix,
- '-DMRNET_DIR=%s'
- % spec['mrnet'].prefix])
-
- # Adjust the build options to the favored
- # ones for this build
- self.adjustBuildTypeParams_cmakeOptions(spec, cmakeOptions)
-
- cmake('..', *cmakeOptions)
-
- make("clean")
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/openssh/package.py b/var/spack/repos/builtin/packages/openssh/package.py
new file mode 100644
index 0000000000..aab102efbd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/openssh/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Openssh(AutotoolsPackage):
+ """OpenSSH is the premier connectivity tool for remote login with the
+ SSH protocol. It encrypts all traffic to eliminate
+ eavesdropping, connection hijacking, and other attacks. In
+ addition, OpenSSH provides a large suite of secure tunneling
+ capabilities, several authentication methods, and sophisticated
+ configuration options.
+ """
+
+ homepage = "https://www.openssh.com/"
+ url = "https://mirrors.sonic.net/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz"
+
+ version('7.5p1', '652fdc7d8392f112bef11cacf7e69e23')
+ version('7.4p1', 'b2db2a83caf66a208bb78d6d287cdaa3')
+ version('7.3p1', 'dfadd9f035d38ce5d58a3bf130b86d08')
+ version('7.2p2', '13009a9156510d8f27e752659075cced')
+ version('7.1p2', '4d8547670e2a220d5ef805ad9e47acf2')
+ version('7.0p1', '831883f251ac34f0ab9c812acc24ee69')
+ version('6.9p1', '0b161c44fc31fbc6b76a6f8ae639f16f')
+ version('6.8p1', '08f72de6751acfbd0892b5f003922701')
+ version('6.7p1', '3246aa79317b1d23cae783a3bf8275d6')
+ version('6.6p1', '3e9800e6bca1fbac0eea4d41baa7f239')
+
+ depends_on('openssl')
+ depends_on('libedit')
+ depends_on('ncurses')
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/openssl/package.py b/var/spack/repos/builtin/packages/openssl/package.py
index 12b5ed9c52..72f35ac4d5 100644
--- a/var/spack/repos/builtin/packages/openssl/package.py
+++ b/var/spack/repos/builtin/packages/openssl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,27 @@
import llnl.util.tty as tty
from spack import *
+import spack.architecture
class Openssl(Package):
- """The OpenSSL Project is a collaborative effort to develop a
- robust, commercial-grade, full-featured, and Open Source
- toolkit implementing the Secure Sockets Layer (SSL v2/v3) and
- Transport Layer Security (TLS v1) protocols as well as a
- full-strength general purpose cryptography library."""
+ """OpenSSL is an open source project that provides a robust,
+ commercial-grade, and full-featured toolkit for the Transport
+ Layer Security (TLS) and Secure Sockets Layer (SSL) protocols.
+ It is also a general-purpose cryptography library."""
homepage = "http://www.openssl.org"
- url = "ftp://openssl.org/source/openssl-1.0.1h.tar.gz"
+ # URL must remain http:// so Spack can bootstrap curl
+ url = "http://www.openssl.org/source/openssl-1.0.1h.tar.gz"
+ list_url = "https://www.openssl.org/source/old/"
+ list_depth = 1
+
+ version('1.1.0e', '51c42d152122e474754aea96f66928c6')
+ version('1.1.0d', '711ce3cd5f53a99c0e12a7d5804f0f63')
+ version('1.1.0c', '601e8191f72b18192a937ecf1a800f3f')
+ # Note: Version 1.0.2 is the "long-term support" version that will
+ # remain supported until 2019.
+ version('1.0.2k', 'f965fc0bf01bf882b31314b61391ae65', preferred=True)
version('1.0.2j', '96322138f0b69e61b7212bc53d5e912b')
version('1.0.2i', '678374e63f8df456a697d3e5e5a931fb')
version('1.0.2h', '9392e65072ce4b614c1392eefc1f23d0')
@@ -48,7 +58,13 @@ class Openssl(Package):
version('1.0.1r', '1abd905e079542ccae948af37e393d28')
version('1.0.1h', '8d6d684a9430d5cc98a62a5d8fbda8cf')
- depends_on("zlib")
+ depends_on('zlib')
+
+ # TODO: 'make test' requires Perl module Test::More version 0.96
+ # TODO: uncomment when test dependency types are supported.
+ # TODO: This is commented in the meantime to avoid dependnecy bloat.
+ # depends_on('perl@5.14.0:', type='build', when='+tests')
+
parallel = False
def handle_fetch_error(self, error):
@@ -67,11 +83,19 @@ class Openssl(Package):
# where it happens automatically?)
env['KERNEL_BITS'] = '64'
- options = ['zlib', 'no-krb5', 'shared']
+ options = ['zlib', 'shared']
+ if spec.satisfies('@1.0'):
+ options.append('no-krb5')
+ # clang does not support the .arch directive in assembly files.
+ if 'clang' in self.compiler.cc and \
+ 'aarch64' in spack.architecture.sys_type():
+ options.append('no-asm')
config = Executable('./config')
config('--prefix=%s' % prefix,
'--openssldir=%s' % join_path(prefix, 'etc', 'openssl'),
+ '-I{0}'.format(self.spec['zlib'].prefix.include),
+ '-L{0}'.format(self.spec['zlib'].prefix.lib),
*options)
# Remove non-standard compiler options if present. These options are
@@ -80,4 +104,7 @@ class Openssl(Package):
filter_file(r'-arch x86_64', '', 'Makefile')
make()
+ # TODO: add this back when we have a 'test' dependency type. See above.
+ # if self.run_tests:
+ # make('test') # 'VERBOSE=1'
make('install')
diff --git a/var/spack/repos/builtin/packages/opium/package.py b/var/spack/repos/builtin/packages/opium/package.py
index 521f917230..5ce1d8b332 100644
--- a/var/spack/repos/builtin/packages/opium/package.py
+++ b/var/spack/repos/builtin/packages/opium/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,7 @@ class Opium(Package):
depends_on('lapack')
def install(self, spec, prefix):
- libs = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ libs = spec['lapack'].libs + spec['blas'].libs
options = ['LDFLAGS=%s' % libs.ld_flags]
configure(*options)
diff --git a/var/spack/repos/builtin/packages/opus/package.py b/var/spack/repos/builtin/packages/opus/package.py
new file mode 100644
index 0000000000..03d434926d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/opus/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Opus(AutotoolsPackage):
+ """Opus is a totally open, royalty-free, highly versatile audio codec."""
+
+ homepage = "http://opus-codec.org/"
+ url = "http://downloads.xiph.org/releases/opus/opus-1.1.4.tar.gz"
+
+ version('1.1.4', 'a2c09d995d0885665ff83b5df2505a5f')
+ version('1.1.3', '32bbb6b557fe1b6066adc0ae1f08b629')
+ version('1.1.2', '1f08a661bc72930187893a07f3741a91')
+ version('1.1.1', 'cfb354d4c65217ca32a762f8ab15f2ac')
+ version('1.1', 'c5a8cf7c0b066759542bc4ca46817ac6')
+ version('1.0.3', '86eedbd3c5a0171d2437850435e6edff')
+ version('1.0.2', 'c503ad05a59ddb44deab96204401be03')
+ version('1.0.1', 'bbac19996957b404a1139816e2f357f5')
+ version('1.0.0', 'ec3ff0a16d9ad8c31a8856d13d97b155')
+ version('0.9.14', 'c7161b247a8437ae6b0f11dd872e69e8')
+ version('0.9.10', 'afbda2fd20dc08e6075db0f60297a137')
+ version('0.9.9', '0c18f0aac37f1ed955f5d694ddd88000')
+ version('0.9.8', '76c1876eae9169dee808ff4710d847cf')
+ version('0.9.7', '49834324ab618105cf112e161770b422')
+ version('0.9.6', '030556bcaebb241505f8577e92abe6d4')
+ version('0.9.5', '6bec090fd28996da0336e165b153ebd8')
+ version('0.9.3', '934226d4f572d01c5848bd70538248f5')
+ version('0.9.2', '8b9047956c4a781e05d3ac8565cd28f5')
+ version('0.9.1', 'f58214e530928aa3db1dec217d5dfcd4')
+ version('0.9.0', '8a729db587430392e64280a499e9d061')
+
+ depends_on('libvorbis')
diff --git a/var/spack/repos/builtin/packages/orfm/package.py b/var/spack/repos/builtin/packages/orfm/package.py
new file mode 100644
index 0000000000..4b59bca7b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/orfm/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Orfm(AutotoolsPackage):
+ """A simple and not slow open reading frame (ORF) caller. No bells or
+ whistles like frameshift detection, just a straightforward goal of
+ returning a FASTA file of open reading frames over a certain length
+ from a FASTA/Q file of nucleotide sequences."""
+
+ homepage = "https://github.com/wwood/OrfM"
+ url = "https://github.com/wwood/OrfM/releases/download/v0.7.1/orfm-0.7.1.tar.gz"
+
+ version('0.7.1', 'fcf18283a028cea2af90663a76a73a2a')
diff --git a/var/spack/repos/builtin/packages/orthomcl/package.py b/var/spack/repos/builtin/packages/orthomcl/package.py
new file mode 100644
index 0000000000..98bef74726
--- /dev/null
+++ b/var/spack/repos/builtin/packages/orthomcl/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Orthomcl(Package):
+ """OrthoMCL is a genome-scale algorithm for grouping orthologous protein
+ sequences."""
+
+ homepage = "http://orthomcl.org/orthomcl/"
+ url = "http://orthomcl.org/common/downloads/software/v2.0/orthomclSoftware-v2.0.9.tar.gz"
+
+ version('2.0.9', '2e0202ed4e36a753752c3567edb9bba9')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('blast-plus')
+ depends_on('mcl')
+ depends_on('mariadb')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('config', prefix.config)
+ install_tree('doc', prefix.doc)
+ install_tree('lib', prefix.lib)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PERL5LIB', self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py b/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
index 161ba6254a..8e5c7be65a 100644
--- a/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
+++ b/var/spack/repos/builtin/packages/osu-micro-benchmarks/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,9 +23,10 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
-class OsuMicroBenchmarks(Package):
+class OsuMicroBenchmarks(AutotoolsPackage):
"""The Ohio MicroBenchmark suite is a collection of independent MPI
message passing performance microbenchmarks developed and written at
The Ohio State University. It includes traditional benchmarks and
@@ -42,12 +43,11 @@ class OsuMicroBenchmarks(Package):
depends_on('mpi')
depends_on('cuda', when='+cuda')
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
config_args = [
- 'CC=%s' % spec['mpi'].prefix.bin + '/mpicc',
- 'CXX=%s' % spec['mpi'].prefix.bin + '/mpicxx',
- 'LDFLAGS=-lrt',
- '--prefix=%s' % prefix
+ 'CC=%s' % spec['mpi'].mpicc,
+ 'CXX=%s' % spec['mpi'].mpicxx
]
if '+cuda' in spec:
@@ -56,7 +56,8 @@ class OsuMicroBenchmarks(Package):
'--with-cuda=%s' % spec['cuda'].prefix,
])
- configure(*config_args)
+ # librt not available on darwin (and not required)
+ if not sys.platform == 'darwin':
+ config_args.append('LDFLAGS=-lrt')
- make()
- make('install')
+ return config_args
diff --git a/var/spack/repos/builtin/packages/otf/package.py b/var/spack/repos/builtin/packages/otf/package.py
index 39eb5a85aa..4df0a12bdf 100644
--- a/var/spack/repos/builtin/packages/otf/package.py
+++ b/var/spack/repos/builtin/packages/otf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/otf2/package.py b/var/spack/repos/builtin/packages/otf2/package.py
index ee39f448eb..ee08a44328 100644
--- a/var/spack/repos/builtin/packages/otf2/package.py
+++ b/var/spack/repos/builtin/packages/otf2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,30 +26,24 @@
from spack import *
-class Otf2(Package):
+class Otf2(AutotoolsPackage):
"""The Open Trace Format 2 is a highly scalable, memory efficient event
trace data format plus support library.
"""
- homepage = "http://www.vi-hps.org/score-p"
+ homepage = "http://www.vi-hps.org/projects/score-p"
url = "http://www.vi-hps.org/upload/packages/otf2/otf2-1.4.tar.gz"
- version('2.0', '5b546188b25bc1c4e285e06dddf75dfc',
- url="http://www.vi-hps.org/upload/packages/otf2/otf2-2.0.tar.gz")
- version('1.5.1', '16a9df46e0da78e374f5d12c8cdc1109',
- url='http://www.vi-hps.org/upload/packages/otf2/otf2-1.5.1.tar.gz')
- version('1.4', 'a23c42e936eb9209c4e08b61c3cf5092',
- url="http://www.vi-hps.org/upload/packages/otf2/otf2-1.4.tar.gz")
- version('1.3.1', 'd0ffc4e858455ace4f596f910e68c9f2',
- url="http://www.vi-hps.org/upload/packages/otf2/otf2-1.3.1.tar.gz")
- version('1.2.1', '8fb3e11fb7489896596ae2c7c83d7fc8',
- url="http://www.vi-hps.org/upload/packages/otf2/otf2-1.2.1.tar.gz")
+ version('2.1', 'e2994e53d9b7c2cbd0c4f564d638751e')
+ version('2.0', '5b546188b25bc1c4e285e06dddf75dfc')
+ version('1.5.1', '16a9df46e0da78e374f5d12c8cdc1109')
+ version('1.4', 'a23c42e936eb9209c4e08b61c3cf5092')
+ version('1.3.1', 'd0ffc4e858455ace4f596f910e68c9f2')
+ version('1.2.1', '8fb3e11fb7489896596ae2c7c83d7fc8')
- def install(self, spec, prefix):
- configure_args = ["--prefix=%s" % prefix,
- "--enable-shared",
- "CFLAGS=-fPIC",
- "CXXFLAGS=-fPIC"]
- configure(*configure_args)
- make()
- make("install")
+ def configure_args(self):
+ return [
+ '--enable-shared',
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ 'CXXFLAGS={0}'.format(self.compiler.pic_flag)
+ ]
diff --git a/var/spack/repos/builtin/packages/p4est/package.py b/var/spack/repos/builtin/packages/p4est/package.py
index da58f5a7e7..56c1ffbc93 100644
--- a/var/spack/repos/builtin/packages/p4est/package.py
+++ b/var/spack/repos/builtin/packages/p4est/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,12 +25,15 @@
from spack import *
-class P4est(Package):
+class P4est(AutotoolsPackage):
"""Dynamic management of a collection (a forest) of adaptive octrees in
parallel"""
homepage = "http://www.p4est.org"
url = "http://p4est.github.io/release/p4est-1.1.tar.gz"
+ maintainers = ['davydden']
+
+ version('2.0', 'c522c5b69896aab39aa5a81399372a19a6b03fc6200d2d5d677d9a22fe31029a')
version('1.1', '37ba7f4410958cfb38a2140339dbf64f')
# build dependencies
@@ -42,8 +45,8 @@ class P4est(Package):
depends_on('mpi')
depends_on('zlib')
- def install(self, spec, prefix):
- options = [
+ def configure_args(self):
+ return [
'--enable-mpi',
'--enable-shared',
'--disable-vtk-binary',
@@ -55,10 +58,3 @@ class P4est(Package):
'FC=%s' % self.spec['mpi'].mpifc,
'F77=%s' % self.spec['mpi'].mpif77
]
-
- configure('--prefix=%s' % prefix, *options)
-
- make()
- if self.run_tests:
- make("check")
- make("install")
diff --git a/var/spack/repos/builtin/packages/p7zip/package.py b/var/spack/repos/builtin/packages/p7zip/package.py
new file mode 100644
index 0000000000..90b7479d80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/p7zip/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class P7zip(MakefilePackage):
+ """A Unix port of the 7z file archiver"""
+
+ homepage = "http://p7zip.sourceforge.net"
+ url = "https://downloads.sourceforge.net/project/p7zip/p7zip/16.02/p7zip_16.02_src_all.tar.bz2"
+
+ version('16.02', 'a0128d661cfe7cc8c121e73519c54fbf')
+
+ # all3 includes 7z, 7za, and 7zr
+ build_targets = ['all3']
+
+ @property
+ def install_targets(self):
+ return ['DEST_HOME={0}'.format(self.prefix), 'install']
diff --git a/var/spack/repos/builtin/packages/pacbio-daligner/package.py b/var/spack/repos/builtin/packages/pacbio-daligner/package.py
new file mode 100644
index 0000000000..e568c7170e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacbio-daligner/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PacbioDaligner(MakefilePackage):
+ """Daligner: The Dazzler "Overlap" Module. This is a special fork
+ required for some pacbio utilities."""
+
+ homepage = "https://github.com/PacificBiosciences/DALIGNER"
+ url = "https://github.com/PacificBiosciences/DALIGNER"
+
+ version('2017-08-05',
+ git='https://github.com/PacificBiosciences/DALIGNER.git',
+ commit='0fe5240d2cc6b55bf9e04465b700b76110749c9d')
+
+ depends_on('gmake', type='build')
+ depends_on('pacbio-dazz-db')
+
+ def edit(self, spec, prefix):
+ mkdir(prefix.bin)
+ makefile = FileFilter('Makefile')
+ makefile.filter('DEST_DIR\s*=\s*~/bin', 'DEST_DIR = ' + prefix.bin)
+ gmf = FileFilter('GNUmakefile')
+ gmf.filter('rsync\s*-av\s*\$\{ALL\}\s*\$\{PREFIX\}/bin',
+ 'cp ${ALL} ' + prefix.bin)
diff --git a/var/spack/repos/builtin/packages/pacbio-damasker/package.py b/var/spack/repos/builtin/packages/pacbio-damasker/package.py
new file mode 100644
index 0000000000..cc32df052b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacbio-damasker/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PacbioDamasker(MakefilePackage):
+ """Damasker: The Dazzler Repeat Masking Suite. This is a special fork
+ required for some pacbio utilities."""
+
+ homepage = "https://github.com/PacificBiosciences/DAMASKER"
+ url = "https://github.com/PacificBiosciences/DAMASKER"
+
+ version('2017-02-11',
+ git='https://github.com/PacificBiosciences/DAMASKER.git',
+ commit='144244b77d52cb785cb1b3b8ae3ab6f3f0c63264')
+
+ depends_on('gmake', type='build')
+
+ def edit(self, spec, prefix):
+ mkdirp(prefix.bin)
+ makefile = FileFilter('Makefile')
+ makefile.filter('DEST_DIR\s*=\s*~/bin', 'DEST_DIR = ' + prefix.bin)
+ gmf = FileFilter('GNUmakefile')
+ gmf.filter('rsync\s*-av\s*\$\{ALL\}\s*\$\{PREFIX\}/bin',
+ 'cp ${ALL} ' + prefix.bin)
diff --git a/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py b/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py
new file mode 100644
index 0000000000..595ab4cd15
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacbio-dazz-db/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PacbioDazzDb(MakefilePackage):
+ """The Dazzler Database Library. This version is a special fork
+ required for some pacbio utilities."""
+
+ homepage = "https://github.com/PacificBiosciences/DAZZ_DB"
+ url = "https://github.com/PacificBiosciences/DAZZ_DB"
+
+ version('2017-04-10',
+ git='https://github.com/PacificBiosciences/DAZZ_DB.git',
+ commit='f29d27d51f460563481cd227d17f4bdc5e288365')
+
+ depends_on('gmake', type='build')
+
+ def edit(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.lib)
+ mkdirp(prefix.include)
+ makefile = FileFilter('Makefile')
+ makefile.filter('DEST_DIR\s*=\s*~/bin', 'DEST_DIR = ' + prefix.bin)
+ gmf = FileFilter('GNUmakefile')
+ gmf.filter('rsync\s*-av\s*\$\{ALL\}\s*\$\{PREFIX\}/bin',
+ 'cp ${ALL} ' + prefix.bin)
+ gmf.filter('rsync\s*-av\s*libdazzdb.*\s*\$\{PREFIX\}/lib',
+ 'cp libdazzdb.* ' + prefix.lib)
+ gmf.filter(('rsync\s*-av\s*\$\(wildcard\s*\$\{THISDIR\}/\*.h'
+ '\)\s*\$\{PREFIX\}/include'),
+ 'cp *.h ' + prefix.include)
diff --git a/var/spack/repos/builtin/packages/pacbio-dextractor/package.py b/var/spack/repos/builtin/packages/pacbio-dextractor/package.py
new file mode 100644
index 0000000000..75bc553733
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pacbio-dextractor/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PacbioDextractor(MakefilePackage):
+ """The Dextractor and Compression Command Library. This is a special
+ fork required by some pacbio utilities."""
+
+ homepage = "https://github.com/PacificBiosciences/DEXTRACTOR"
+ url = "https://github.com/PacificBiosciences/DEXTRACTOR"
+
+ version('2016-08-09',
+ git='https://github.com/PacificBiosciences/DEXTRACTOR.git',
+ commit='89726800346d0bed15d98dcc577f4c7733aab4b1')
+
+ depends_on('hdf5')
+ depends_on('gmake', type='build')
+
+ def edit(self, spec, prefix):
+ mkdirp(prefix.bin)
+ makefile = FileFilter('Makefile')
+ makefile.filter('PATH_HDF5\s*=\s*/sw/apps/hdf5/current',
+ 'PATH_HDF5 = ' + spec['hdf5'].prefix)
+ makefile.filter('PATH_HDF5\*s=\s*/usr/local/hdf5', '')
+ makefile.filter('DEST_DIR\s*=\s*~/bin', 'DEST_DIR = ' + prefix.bin)
+ gmf = FileFilter('GNUmakefile')
+ gmf.filter('rsync\s*-av\s*\$\{ALL\}\s*\$\{PREFIX\}/bin',
+ 'cp ${ALL} ' + prefix.bin)
diff --git a/var/spack/repos/builtin/packages/pagit/package.py b/var/spack/repos/builtin/packages/pagit/package.py
new file mode 100644
index 0000000000..7c40da934b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pagit/package.py
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pagit(Package):
+ """PAGIT addresses the need for software to generate high quality draft
+ genomes."""
+
+ homepage = "http://www.sanger.ac.uk/science/tools/pagit"
+ url = "ftp://ftp.sanger.ac.uk/pub/resources/software/pagit/PAGIT.V1.01.64bit.tgz"
+
+ version('1.01', '2c4e8512c8c02073146b50b328962e9d')
+
+ depends_on('java', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+
+ def url_for_version(self, version):
+ url = 'ftp://ftp.sanger.ac.uk/pub/resources/software/pagit/PAGIT.V{0}.64bit.tgz'
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ with working_dir('PAGIT'):
+ install_tree('ABACAS', prefix.ABACAS)
+ install_tree('bin', prefix.bin)
+ install_tree('ICORN', prefix.ICORN)
+ install_tree('IMAGE', prefix.IMAGE)
+ install_tree('lib', prefix.lib)
+ install_tree('RATT', prefix.RATT)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('PAGIT_HOME', self.prefix)
+ run_env.set('PILEUP_HOME', join_path(self.prefix.bin, 'pileup_v0.5'))
+ run_env.set('ICORN_HOME', self.prefix.icorn)
+ run_env.set('SNPOMATIC_HOME', self.prefix.bin)
+ run_env.set('RATT_HOME', self.prefix.RATT)
+ run_env.set('RATT_CONFIG', join_path(self.prefix.RATT, 'RATT_config'))
+ run_env.prepend_path('PATH', join_path(self.prefix.bin, 'pileup_v0.5',
+ 'ssaha2'))
+ run_env.prepend_path('PATH', join_path(self.prefix.bin,
+ 'pileup_v0.5'))
+ run_env.prepend_path('PATH', self.prefix.IMAGE)
+ run_env.prepend_path('PATH', self.prefix.ABACAS)
+ run_env.prepend_path('PATH', self.prefix.ICORN)
+ run_env.prepend_path('PATH', self.prefix.RATT)
+ run_env.prepend_path('PERL5LIB', self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/pagmo/package.py b/var/spack/repos/builtin/packages/pagmo/package.py
new file mode 100644
index 0000000000..0d30d847f0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pagmo/package.py
@@ -0,0 +1,118 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pagmo(CMakePackage):
+ """Parallel Global Multiobjective Optimizer (and its Python alter ego
+ PyGMO) is a C++ / Python platform to perform parallel computations of
+ optimisation tasks (global and local) via the asynchronous generalized
+ island model."""
+
+ # Multiple homepages:
+ # C++ interface: https://esa.github.io/pagmo/
+ # Python interface: https://esa.github.io/pygmo/
+
+ homepage = "https://esa.github.io/pagmo/"
+ url = "https://github.com/esa/pagmo/archive/1.1.7.tar.gz"
+
+ version('1.1.7', '57ee65a5871ae36ab97087af5199cb89')
+
+ variant('examples', default=False, description='Build examples')
+ variant('cxx', default=True, description='Build the C++ interface')
+ variant('python', default=True, description='Build Python bindings')
+ variant('gsl', default=True, description='Enable support for GSL minimisers')
+ variant('gtop', default=False, description='Build GTOP database problems')
+ variant('ipopt', default=False, description='Enable support for IPOPT minimiser')
+ variant('mpi', default=True, description='Enable support for MPI')
+ variant('nlopt', default=False, description='Enable support for NLopt minimisers')
+ variant('snopt', default=False, description='Enable support for SNOPT minimiser')
+ variant('worhp', default=False, description='Enable support for WORHP minimiser')
+ variant('headers', default=True, description='Installs the header files')
+ variant('blas', default=True, description='Enable support for BLAS')
+ variant('scipy', default=True, description='Enable support for scipy')
+ variant('networkx', default=False, description='Enable support for networkx')
+ variant('vpython', default=False, description='Enable support for vpython')
+ variant('pykep', default=False, description='Enable support for pykep')
+
+ extends('python', when='+python')
+
+ # Concretization in Spack is currently broken
+ # depends_on('boost+system+serialization+thread')
+ # depends_on('boost+python', when='+python')
+ # depends_on('boost+date_time', when='+gtop')
+
+ # Workaround for now
+ depends_on('boost+system+serialization+thread', when='~python~gtop')
+ depends_on('boost+system+serialization+thread+python', when='+python~gtop')
+ depends_on('boost+system+serialization+thread+date_time', when='~python+gtop')
+ depends_on('boost+system+serialization+thread+python+date_time', when='+python+gtop')
+
+ depends_on('gsl@1.15:', when='+gsl')
+ depends_on('ipopt', when='+ipopt')
+ depends_on('mpi@1.2:', when='+mpi')
+ depends_on('blas', when='+blas')
+ depends_on('py-scipy', type=('build', 'run'), when='+scipy')
+ depends_on('py-networkx', type=('build', 'run'), when='+networkx')
+
+ # TODO: Add packages for missing dependencies
+ # depends_on('nlopt+cxx', when='+nlopt')
+ # depends_on('snopt', when='+snopt')
+ # depends_on('py-vpython', type=('build', 'run'), when='+vpython')
+ # depends_on('py-pykep@1.15:', type=('build', 'run'), when='+gtop')
+ # depends_on('py-pykep@1.15:', type=('build', 'run'), when='+pykep')
+
+ depends_on('cmake@2.8:', type='build')
+
+ def variant_to_bool(self, variant):
+ return 'ON' if variant in self.spec else 'OFF'
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DBUILD_EXAMPLES={0}'.format(self.variant_to_bool('+examples')),
+ '-DBUILD_MAIN={0}'.format(self.variant_to_bool('+cxx')),
+ '-DBUILD_PYGMO={0}'.format(self.variant_to_bool('+python')),
+ '-DENABLE_GSL={0}'.format(self.variant_to_bool('+gsl')),
+ '-DENABLE_GTOP_DATABASE={0}'.format(self.variant_to_bool('+gtop')),
+ '-DENABLE_IPOPT={0}'.format(self.variant_to_bool('+ipopt')),
+ '-DENABLE_MPI={0}'.format(self.variant_to_bool('+mpi')),
+ '-DENABLE_NLOPT={0}'.format(self.variant_to_bool('+nlopt')),
+ '-DENABLE_SNOPT={0}'.format(self.variant_to_bool('+snopt')),
+ '-DENABLE_WORHP={0}'.format(self.variant_to_bool('+worhp')),
+ '-DINSTALL_HEADERS={0}'.format(self.variant_to_bool('+headers')),
+ '-DENABLE_TESTS={0}'.format('ON' if self.run_tests else 'OFF'),
+ ]
+
+ if '+python' in spec:
+ args.extend([
+ # By default picks up the system python not the Spack build
+ '-DPYTHON_EXECUTABLE={0}'.format(spec['python'].command.path),
+ # By default installs to the python prefix not the pagmo prefix
+ '-DPYTHON_MODULES_DIR={0}'.format(site_packages_dir),
+ ])
+
+ return args
diff --git a/var/spack/repos/builtin/packages/paml/package.py b/var/spack/repos/builtin/packages/paml/package.py
new file mode 100644
index 0000000000..81d9e7c25b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/paml/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Paml(MakefilePackage):
+ """PAML is a package of programs for phylogenetic analyses of DNA or
+ protein sewuences using maximum likelihood."""
+
+ homepage = "http://abacus.gene.ucl.ac.uk/software/paml.html"
+ url = "http://abacus.gene.ucl.ac.uk/software/paml4.9e.tgz"
+
+ version('4.9e', 'ac5a062bfea1f4eaac79008434030acf')
+
+ build_directory = 'src'
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir(self.build_directory):
+ install('baseml', prefix.bin)
+ install('basemlg', prefix.bin)
+ install('chi2', prefix.bin)
+ install('codeml', prefix.bin)
+ install('evolver', prefix.bin)
+ install('infinitesites', prefix.bin)
+ install('mcmctree', prefix.bin)
+ install('pamp', prefix.bin)
+ install('yn00', prefix.bin)
+ install_tree('dat', prefix.dat)
+ install_tree('Technical', prefix.Technical)
diff --git a/var/spack/repos/builtin/packages/panda/package.py b/var/spack/repos/builtin/packages/panda/package.py
index e30c2c869d..30323fa65a 100644
--- a/var/spack/repos/builtin/packages/panda/package.py
+++ b/var/spack/repos/builtin/packages/panda/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,20 +26,14 @@
from spack import *
-class Panda(Package):
+class Panda(CMakePackage):
"""PANDA: Parallel AdjaceNcy Decomposition Algorithm"""
homepage = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/index.html"
- url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/current_panda.tar"
+ url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/panda-2016-03-07.tar"
- version('current', 'b06dc312ee56e13eefea9c915b70fcef')
+ version('2016-03-07', 'b06dc312ee56e13eefea9c915b70fcef')
# Note: Panda can also be built without MPI support
- depends_on("cmake", type="build")
- depends_on("mpi")
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake("..", *std_cmake_args)
- make()
- make("install")
+ depends_on('cmake@2.6.4:', type='build')
+ depends_on('mpi')
diff --git a/var/spack/repos/builtin/packages/pango/package.py b/var/spack/repos/builtin/packages/pango/package.py
index c45054be58..26ba05df6a 100644
--- a/var/spack/repos/builtin/packages/pango/package.py
+++ b/var/spack/repos/builtin/packages/pango/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Pango(Package):
+class Pango(AutotoolsPackage):
"""Pango is a library for laying out and rendering of text, with
an emphasis on internationalization. It can be used anywhere
that text layout is needed, though most of the work on Pango so
@@ -33,7 +33,7 @@ class Pango(Package):
homepage = "http://www.pango.org"
url = "http://ftp.gnome.org/pub/GNOME/sources/pango/1.40/pango-1.40.3.tar.xz"
list_url = "http://ftp.gnome.org/pub/gnome/sources/pango/"
- list_depth = 2
+ list_depth = 1
version('1.40.3', 'abba8b5ce728520c3a0f1535eab19eac3c14aeef7faa5aded90017ceac2711d3')
version('1.40.1', 'e27af54172c72b3ac6be53c9a4c67053e16c905e02addcf3a603ceb2005c1a40')
@@ -46,9 +46,23 @@ class Pango(Package):
depends_on("cairo")
depends_on("cairo~X", when='~X')
depends_on("cairo+X", when='+X')
+ depends_on("libxft", when='+X')
depends_on("glib")
+ depends_on('gobject-introspection')
+
+ def configure_args(self):
+ args = []
+ if self.spec.satisfies('+X'):
+ args.append('--with-xft')
+ else:
+ args.append('--without-xft')
+ return args
def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
make("install", parallel=False)
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
+ run_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/papi/package.py b/var/spack/repos/builtin/packages/papi/package.py
index 90a7490e75..4809295bb6 100644
--- a/var/spack/repos/builtin/packages/papi/package.py
+++ b/var/spack/repos/builtin/packages/papi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -41,6 +41,7 @@ class Papi(Package):
homepage = "http://icl.cs.utk.edu/papi/index.html"
url = "http://icl.cs.utk.edu/projects/papi/downloads/papi-5.4.1.tar.gz"
+ version('5.5.1', '86a8a6f3d0f34cd83251da3514aae15d')
version('5.5.0', '5e1244a04ca031d4cc29b46ce3dd05b5')
version('5.4.3', '3211b5a5bb389fe692370f5cf4cc2412')
version('5.4.1', '9134a99219c79767a11463a76b0b01a2')
diff --git a/var/spack/repos/builtin/packages/paradiseo/package.py b/var/spack/repos/builtin/packages/paradiseo/package.py
index c91b01c964..036d7cdb4f 100644
--- a/var/spack/repos/builtin/packages/paradiseo/package.py
+++ b/var/spack/repos/builtin/packages/paradiseo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Paradiseo(Package):
+class Paradiseo(CMakePackage):
"""A C++ white-box object-oriented framework dedicated to the reusable
design of metaheuristics."""
homepage = "http://paradiseo.gforge.inria.fr/"
@@ -50,15 +50,12 @@ class Paradiseo(Package):
variant('edo', default=True,
description='Compile with (Experimental) EDO module')
- # variant('tests', default=False, description='Compile with build tests')
# variant('doc', default=False, description='Compile with documentation')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
variant('openmp', default=False, description='Enable OpenMP support')
variant('gnuplot', default=False, description='Enable GnuPlot support')
# Required dependencies
- depends_on("cmake", type='build')
+ depends_on("cmake@2.8:", type='build')
# Optional dependencies
depends_on("mpi", when="+mpi")
@@ -74,32 +71,19 @@ class Paradiseo(Package):
patch('fix_tests.patch')
patch('fix_tutorials.patch')
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
+ def cmake_args(self):
+ spec = self.spec
- options.extend([
- '-DCMAKE_BUILD_TYPE:STRING=%s' % (
- 'Debug' if '+debug' in spec else 'Release'),
+ return [
'-DINSTALL_TYPE:STRING=MIN',
'-DMPI:BOOL=%s' % ('TRUE' if '+mpi' in spec else 'FALSE'),
# Note: This requires a C++11 compatible compiler
'-DSMP:BOOL=%s' % ('TRUE' if '+smp' in spec else 'FALSE'),
'-DEDO:BOOL=%s' % ('TRUE' if '+edo' in spec else 'FALSE'),
'-DENABLE_CMAKE_TESTING:BOOL=%s' % (
- 'TRUE' if '+tests' in spec else 'FALSE'),
+ 'TRUE' if self.run_tests else 'FALSE'),
'-DENABLE_OPENMP:BOOL=%s' % (
'TRUE' if '+openmp' in spec else 'FALSE'),
'-DENABLE_GNUPLOT:BOOL=%s' % (
'TRUE' if '+gnuplot' in spec else 'FALSE')
- ])
-
- with working_dir('spack-build', create=True):
- # Configure
- cmake('..', *options)
-
- # Build, test and install
- make("VERBOSE=1")
- if '+tests' in spec:
- make("test")
- make("install")
+ ]
diff --git a/var/spack/repos/builtin/packages/parallel-netcdf/package.py b/var/spack/repos/builtin/packages/parallel-netcdf/package.py
index 65512017ef..4d49ae6f8b 100644
--- a/var/spack/repos/builtin/packages/parallel-netcdf/package.py
+++ b/var/spack/repos/builtin/packages/parallel-netcdf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,13 +32,15 @@ class ParallelNetcdf(AutotoolsPackage):
homepage = "https://trac.mcs.anl.gov/projects/parallel-netcdf"
url = "http://cucis.ece.northwestern.edu/projects/PnetCDF/Release/parallel-netcdf-1.6.1.tar.gz"
+ list_url = "http://cucis.ece.northwestern.edu/projects/PnetCDF/download.html"
+ version('1.8.0', '825825481aa629eb82f21ca37afff1609b8eeb07')
version('1.7.0', '267eab7b6f9dc78c4d0e6def2def3aea4bc7c9f0')
version('1.6.1', '62a094eb952f9d1e15f07d56e535052604f1ac34')
variant('cxx', default=True, description='Build the C++ Interface')
variant('fortran', default=True, description='Build the Fortran Interface')
- variant('fpic', default=True,
+ variant('pic', default=True,
description='Produce position-independent code (for shared libs)')
depends_on('mpi')
@@ -51,11 +53,18 @@ class ParallelNetcdf(AutotoolsPackage):
spec = self.spec
args = ['--with-mpi={0}'.format(spec['mpi'].prefix)]
+ args.append('SEQ_CC={0}'.format(spack_cc))
+
+ if '+pic' in spec:
+ args.extend([
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ 'CXXFLAGS={0}'.format(self.compiler.pic_flag),
+ 'FFLAGS={0}'.format(self.compiler.pic_flag)
+ ])
- if '+fpic' in spec:
- args.extend(['CFLAGS=-fPIC', 'CXXFLAGS=-fPIC', 'FFLAGS=-fPIC'])
if '~cxx' in spec:
args.append('--disable-cxx')
+
if '~fortran' in spec:
args.append('--disable-fortran')
diff --git a/var/spack/repos/builtin/packages/parallel/package.py b/var/spack/repos/builtin/packages/parallel/package.py
index 81c0195651..407eb4af09 100644
--- a/var/spack/repos/builtin/packages/parallel/package.py
+++ b/var/spack/repos/builtin/packages/parallel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,36 @@
from spack import *
-class Parallel(Package):
+class Parallel(AutotoolsPackage):
"""GNU parallel is a shell tool for executing jobs in parallel using
one or more computers. A job can be a single command or a small
script that has to be run for each of the lines in the input.
"""
homepage = "http://www.gnu.org/software/parallel/"
- url = "http://ftp.gnu.org/gnu/parallel/parallel-20160422.tar.bz2"
+ url = "http://ftp.gnu.org/gnu/parallel/parallel-20170122.tar.bz2"
+ version('20170322', '4fe1b8d2e3974d26c77f0b514988214d')
+ version('20170122', 'c9f0ec01463dc75dbbf292fd8be5f1eb')
version('20160422', '24621f684130472694333709bd4454cb')
version('20160322', '4e81e0d36902ab4c4e969ee6f35e6e57')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
+ def check(self):
+ # The Makefile has a 'test' target, but it does not work
+ make('check')
- make()
- make("install")
+ depends_on('perl', type=('build', 'run'))
+
+ @run_before('install')
+ def filter_sbang(self):
+ """Run before install so that the standard Spack sbang install hook
+ can fix up the path to the perl binary.
+ """
+ perl = self.spec['perl'].command
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+
+ with working_dir('src'):
+ match = '^#!/usr/bin/env perl|^#!/usr/bin/perl.*'
+ substitute = "#!{perl}".format(perl=perl)
+ files = ['parallel', 'niceload', 'parcat', 'sql', ]
+ filter_file(match, substitute, *files, **kwargs)
diff --git a/var/spack/repos/builtin/packages/paraver/package.py b/var/spack/repos/builtin/packages/paraver/package.py
index 0a2ffdbb84..3a015d4b63 100644
--- a/var/spack/repos/builtin/packages/paraver/package.py
+++ b/var/spack/repos/builtin/packages/paraver/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,12 +31,13 @@ class Paraver(Package):
based on traces that can be used to analyse any information that
is expressed on its input trace format. Traces for parallel MPI,
OpenMP and other programs can be genereated with Extrae."""
- homepage = "http://www.bsc.es/computer-sciences/performance-tools/paraver"
- url = "http://www.bsc.es/ssl/apps/performanceTools/files/paraver-sources-4.6.2.tar.gz"
+ homepage = "https://tools.bsc.es/paraver"
+ url = "https://ftp.tools.bsc.es/paraver/wxparaver-4.6.3-src.tar.bz2"
# NOTE: Paraver provides only latest version for download.
# Don't keep/add older versions.
- version('4.6.2', 'c54e124382b597574628b00e31649803')
+ version('4.6.3', '7940a2651f56712c4e8a21138b4bf16c')
+ version('4.6.2', '3f5b3e207d98b2c44101f1ff5685aa55')
depends_on("boost")
# depends_on("extrae")
diff --git a/var/spack/repos/builtin/packages/paraview/gcc-compiler-pv501.patch b/var/spack/repos/builtin/packages/paraview/gcc-compiler-pv501.patch
new file mode 100644
index 0000000000..bb3be1832f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/paraview/gcc-compiler-pv501.patch
@@ -0,0 +1,22 @@
+--- ParaView-5.0.1.orig/VTK/CMake/vtkCompilerExtras.cmake 2016-03-28 17:07:10.000000000 +0200
++++ ParaView-5.0.1/VTK/CMake/vtkCompilerExtras.cmake 2016-12-13 17:21:25.382720945 +0100
+@@ -32,7 +32,7 @@
+ OUTPUT_VARIABLE _gcc_version_info
+ ERROR_VARIABLE _gcc_version_info)
+
+- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
++ string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+ _gcc_version "${_gcc_version_info}")
+ if(NOT _gcc_version)
+ string (REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"
+--- ParaView-5.0.1.orig/VTK/CMake/GenerateExportHeader.cmake 2016-03-28 17:07:10.000000000 +0200
++++ ParaView-5.0.1/VTK/CMake/GenerateExportHeader.cmake 2016-12-13 17:21:25.382720945 +0100
+@@ -166,7 +166,7 @@
+ execute_process(COMMAND ${CMAKE_C_COMPILER} ARGS --version
+ OUTPUT_VARIABLE _gcc_version_info
+ ERROR_VARIABLE _gcc_version_info)
+- string(REGEX MATCH "[345]\\.[0-9]\\.[0-9]*"
++ string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+ _gcc_version "${_gcc_version_info}")
+ # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
+ # patch level, handle this here:
diff --git a/var/spack/repos/builtin/packages/paraview/package.py b/var/spack/repos/builtin/packages/paraview/package.py
index 252f58247f..8bf43b6132 100644
--- a/var/spack/repos/builtin/packages/paraview/package.py
+++ b/var/spack/repos/builtin/packages/paraview/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,34 +23,43 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import os
-class Paraview(Package):
- homepage = 'http://www.paraview.org'
- url = 'http://www.paraview.org/files/v5.0/ParaView-v'
- _url_str = 'http://www.paraview.org/files/v%s/ParaView-v%s-source.tar.gz'
+class Paraview(CMakePackage):
+ """ParaView is an open-source, multi-platform data analysis and
+ visualization application."""
+ homepage = 'http://www.paraview.org'
+ url = "http://www.paraview.org/files/v5.3/ParaView-v5.3.0.tar.gz"
+ _urlfmt = 'http://www.paraview.org/files/v{0}/ParaView-v{1}{2}.tar.gz'
+
+ version('5.4.1', '4030c70477ec5a85aa72d6fc86a30753')
+ version('5.4.0', 'b92847605bac9036414b644f33cb7163')
+ version('5.3.0', '68fbbbe733aa607ec13d1db1ab5eba71')
+ version('5.2.0', '4570d1a2a183026adb65b73c7125b8b0')
+ version('5.1.2', '44fb32fc8988fcdfbc216c9e40c3e925')
+ version('5.0.1', 'fdf206113369746e2276b95b257d2c9b')
version('4.4.0', 'fa1569857dd680ebb4d7ff89c2227378')
- version('5.0.0', '4598f0b421460c8bbc635c9a1c3bdbee')
+ variant('plugins', default=True,
+ description='Install include files for plugins support')
variant('python', default=False, description='Enable Python support')
-
- variant('tcl', default=False, description='Enable TCL support')
-
variant('mpi', default=True, description='Enable MPI support')
-
variant('osmesa', default=False, description='Enable OSMesa support')
- variant('qt', default=False, description='Enable Qt support')
- variant('opengl2', default=False, description='Enable OpenGL2 backend')
+ variant('qt', default=False, description='Enable Qt (gui) support')
+ variant('opengl2', default=True, description='Enable OpenGL2 backend')
- depends_on('python@2:2.7', when='+python')
+ depends_on('python@2:2.8', when='+python')
depends_on('py-numpy', when='+python', type='run')
depends_on('py-matplotlib', when='+python', type='run')
- depends_on('tcl', when='+tcl')
depends_on('mpi', when='+mpi')
- depends_on('qt@:4', when='+qt')
+ depends_on('qt', when='@5.3.0:+qt')
+ depends_on('qt@:4', when='@:5.2.0+qt')
+
+ depends_on('mesa+swrender', when='+osmesa')
+ conflicts('+qt', when='+osmesa')
- depends_on('cmake', type='build')
depends_on('bzip2')
depends_on('freetype')
# depends_on('hdf5+mpi', when='+mpi')
@@ -64,62 +73,97 @@ class Paraview(Package):
# depends_on('protobuf') # version mismatches?
# depends_on('sqlite') # external version not supported
depends_on('zlib')
+ depends_on('cmake@3.3:', type='build')
+
+ patch('stl-reader-pv440.patch', when='@4.4.0')
+
+ # Broken gcc-detection - improved in 5.1.0, redundant later
+ patch('gcc-compiler-pv501.patch', when='@:5.0.1')
+
+ # Broken installation (ui_pqExportStateWizard.h) - fixed in 5.2.0
+ patch('ui_pqExportStateWizard.patch', when='@:5.1.2')
def url_for_version(self, version):
"""Handle ParaView version-based custom URLs."""
- return self._url_str % (version.up_to(2), version)
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- def feature_to_bool(feature, on='ON', off='OFF'):
- if feature in spec:
- return on
- return off
-
- def nfeature_to_bool(feature):
- return feature_to_bool(feature, on='OFF', off='ON')
-
- feature_args = std_cmake_args[:]
- feature_args.append(
- '-DPARAVIEW_BUILD_QT_GUI:BOOL=%s' % feature_to_bool('+qt'))
- feature_args.append('-DPARAVIEW_ENABLE_PYTHON:BOOL=%s' %
- feature_to_bool('+python'))
- if '+python' in spec:
- feature_args.append(
- '-DPYTHON_EXECUTABLE:FILEPATH=%s/bin/python'
- % spec['python'].prefix)
- feature_args.append('-DPARAVIEW_USE_MPI:BOOL=%s' %
- feature_to_bool('+mpi'))
- if '+mpi' in spec:
- feature_args.append(
- '-DMPIEXEC:FILEPATH=%s/bin/mpiexec' % spec['mpi'].prefix)
- feature_args.append(
- '-DVTK_ENABLE_TCL_WRAPPING:BOOL=%s' % feature_to_bool('+tcl'))
- feature_args.append('-DVTK_OPENGL_HAS_OSMESA:BOOL=%s' %
- feature_to_bool('+osmesa'))
- feature_args.append('-DVTK_USE_X:BOOL=%s' %
- nfeature_to_bool('+osmesa'))
- feature_args.append(
- '-DVTK_RENDERING_BACKEND:STRING=%s' %
- feature_to_bool('+opengl2', 'OpenGL2', 'OpenGL'))
-
- feature_args.extend(std_cmake_args)
-
- if 'darwin' in self.spec.architecture:
- feature_args.append('-DVTK_USE_X:BOOL=OFF')
- feature_args.append(
- '-DPARAVIEW_DO_UNIX_STYLE_INSTALLS:BOOL=ON')
-
- cmake('..',
- '-DCMAKE_INSTALL_PREFIX:PATH=%s' % prefix,
- '-DBUILD_TESTING:BOOL=OFF',
- '-DVTK_USE_SYSTEM_FREETYPE:BOOL=ON',
- '-DVTK_USE_SYSTEM_HDF5:BOOL=OFF',
- '-DVTK_USE_SYSTEM_JPEG:BOOL=ON',
- '-DVTK_USE_SYSTEM_LIBXML2:BOOL=ON',
- '-DVTK_USE_SYSTEM_NETCDF:BOOL=OFF',
- '-DVTK_USE_SYSTEM_TIFF:BOOL=ON',
- '-DVTK_USE_SYSTEM_ZLIB:BOOL=ON',
- *feature_args)
- make()
- make('install')
+ if version < Version('5.1.0'):
+ return self._urlfmt.format(version.up_to(2), version, '-source')
+ else:
+ return self._urlfmt.format(version.up_to(2), version, '')
+
+ def setup_environment(self, spack_env, run_env):
+ if os.path.isdir(self.prefix.lib64):
+ lib_dir = self.prefix.lib64
+ else:
+ lib_dir = self.prefix.lib
+ paraview_version = 'paraview-%s' % self.spec.version.up_to(2)
+ run_env.prepend_path('LIBRARY_PATH', join_path(lib_dir,
+ paraview_version))
+ run_env.prepend_path('LD_LIBRARY_PATH', join_path(lib_dir,
+ paraview_version))
+
+ def cmake_args(self):
+ """Populate cmake arguments for ParaView."""
+ spec = self.spec
+
+ def variant_bool(feature, on='ON', off='OFF'):
+ """Ternary for spec variant to ON/OFF string"""
+ if feature in spec:
+ return on
+ return off
+
+ def nvariant_bool(feature):
+ """Negated ternary for spec variant to OFF/ON string"""
+ return variant_bool(feature, on='OFF', off='ON')
+
+ rendering = variant_bool('+opengl2', 'OpenGL2', 'OpenGL')
+ includes = variant_bool('+plugins')
+
+ cmake_args = [
+ '-DPARAVIEW_BUILD_QT_GUI:BOOL=%s' % variant_bool('+qt'),
+ '-DVTK_OPENGL_HAS_OSMESA:BOOL=%s' % variant_bool('+osmesa'),
+ '-DVTK_USE_X:BOOL=%s' % nvariant_bool('+osmesa'),
+ '-DVTK_RENDERING_BACKEND:STRING=%s' % rendering,
+ '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=%s' % includes,
+ '-DBUILD_TESTING:BOOL=OFF',
+ '-DVTK_USE_SYSTEM_FREETYPE:BOOL=ON',
+ '-DVTK_USE_SYSTEM_HDF5:BOOL=OFF',
+ '-DVTK_USE_SYSTEM_JPEG:BOOL=ON',
+ '-DVTK_USE_SYSTEM_LIBXML2:BOOL=ON',
+ '-DVTK_USE_SYSTEM_NETCDF:BOOL=OFF',
+ '-DVTK_USE_SYSTEM_TIFF:BOOL=ON',
+ '-DVTK_USE_SYSTEM_ZLIB:BOOL=ON',
+ ]
+
+ # The assumed qt version changed to QT5 (as of paraview 5.2.1),
+ # so explicitly specify which QT major version is actually being used
+ if '+qt' in spec:
+ cmake_args.extend([
+ '-DPARAVIEW_QT_VERSION=%s' % spec['qt'].version[0],
+ ])
+
+ if '+python' in spec:
+ cmake_args.extend([
+ '-DPARAVIEW_ENABLE_PYTHON:BOOL=ON',
+ '-DPYTHON_EXECUTABLE:FILEPATH=%s' % spec['python'].command.path
+ ])
+
+ if '+mpi' in spec:
+ cmake_args.extend([
+ '-DPARAVIEW_USE_MPI:BOOL=ON',
+ '-DMPIEXEC:FILEPATH=%s/bin/mpiexec' % spec['mpi'].prefix
+ ])
+
+ if 'darwin' in spec.architecture:
+ cmake_args.extend([
+ '-DVTK_USE_X:BOOL=OFF',
+ '-DPARAVIEW_DO_UNIX_STYLE_INSTALLS:BOOL=ON',
+ ])
+
+ # Hide git from Paraview so it will not use `git describe`
+ # to find its own version number
+ if spec.satisfies('@5.4.0:5.4.1'):
+ cmake_args.extend([
+ '-DGIT_EXECUTABLE=FALSE'
+ ])
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/paraview/stl-reader-pv440.patch b/var/spack/repos/builtin/packages/paraview/stl-reader-pv440.patch
new file mode 100644
index 0000000000..06907fd895
--- /dev/null
+++ b/var/spack/repos/builtin/packages/paraview/stl-reader-pv440.patch
@@ -0,0 +1,11 @@
+--- ParaView-4.4.0.orig/VTK/IO/Geometry/vtkSTLReader.cxx 2015-09-11 19:59:24.000000000 +0200
++++ ParaView-4.4.0/VTK/IO/Geometry/vtkSTLReader.cxx 2016-06-19 12:59:50.769770143 +0200
+@@ -448,7 +448,7 @@
+ done = done || (fscanf(fp,"%s", line)==EOF);
+ }
+ }
+- if (!done)
++ else if (!done)
+ {
+ done = (fgets(line, 255, fp) == 0);
+ lineCount++;
diff --git a/var/spack/repos/builtin/packages/paraview/ui_pqExportStateWizard.patch b/var/spack/repos/builtin/packages/paraview/ui_pqExportStateWizard.patch
new file mode 100644
index 0000000000..2983af56ef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/paraview/ui_pqExportStateWizard.patch
@@ -0,0 +1,11 @@
+--- ParaView-5.0.1.orig/Qt/Components/CMakeLists.txt 2016-03-28 17:07:03.000000000 +0200
++++ ParaView-5.0.1/Qt/Components/CMakeLists.txt 2016-12-13 17:38:42.713553032 +0100
+@@ -656,7 +656,7 @@
+ #the pqSGExportStateWizard has subclasses that directly access
+ #the UI file, and currently we don't have a clean way to break this hard
+ #dependency, so for no we install this ui file.
+-if(PARAVIEW_INSTALL_DEVELOPMENT_FILES)
++if(PARAVIEW_INSTALL_DEVELOPMENT_FILES AND PARAVIEW_ENABLE_PYTHON)
+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ui_pqExportStateWizard.h"
+ DESTINATION "${VTK_INSTALL_INCLUDE_DIR}")
+ endif()
diff --git a/var/spack/repos/builtin/packages/parmetis/package.py b/var/spack/repos/builtin/packages/parmetis/package.py
index 74e00cc9e0..927a7715e6 100644
--- a/var/spack/repos/builtin/packages/parmetis/package.py
+++ b/var/spack/repos/builtin/packages/parmetis/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,8 @@ class Parmetis(Package):
computing fill-reducing orderings of sparse matrices."""
homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview'
- base_url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis'
+ url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz'
+ list_url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/OLD'
version('4.0.3', 'f69c479586bf6bb7aff6a9bc0c739628')
version('4.0.2', '0912a953da5bb9b5e5e10542298ffdce')
@@ -54,8 +55,11 @@ class Parmetis(Package):
patch('pkg-parmetis-82409d68aa1d6cbc70740d0f35024aae17f7d5cb.patch')
def url_for_version(self, version):
- verdir = 'OLD/' if version < Version('3.2.0') else ''
- return '%s/%sparmetis-%s.tar.gz' % (Parmetis.base_url, verdir, version)
+ url = 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis'
+ if version < Version('3.2.0'):
+ url += '/OLD'
+ url += '/parmetis-{0}.tar.gz'.format(version)
+ return url
def install(self, spec, prefix):
source_directory = self.stage.source_path
@@ -66,11 +70,23 @@ class Parmetis(Package):
'-DGKLIB_PATH:PATH=%s/GKlib' % spec['metis'].prefix.include,
'-DMETIS_PATH:PATH=%s' % spec['metis'].prefix,
'-DCMAKE_C_COMPILER:STRING=%s' % spec['mpi'].mpicc,
- '-DCMAKE_CXX_COMPILER:STRING=%s' % spec['mpi'].mpicxx
+ '-DCMAKE_CXX_COMPILER:STRING=%s' % spec['mpi'].mpicxx,
+ '-DCMAKE_C_FLAGS:STRING=%s' % (
+ '-c11' if '%pgi' in spec else ''),
])
if '+shared' in spec:
options.append('-DSHARED:BOOL=ON')
+ else:
+ # Remove all RPATH options
+ # (RPATHxxx options somehow trigger cmake to link dynamically)
+ rpath_options = []
+ for o in options:
+ if o.find('RPATH') >= 0:
+ rpath_options.append(o)
+ for o in rpath_options:
+ options.remove(o)
+
if '+debug' in spec:
options.extend(['-DDEBUG:BOOL=ON',
'-DCMAKE_BUILD_TYPE:STRING=Debug'])
diff --git a/var/spack/repos/builtin/packages/parmgridgen/package.py b/var/spack/repos/builtin/packages/parmgridgen/package.py
index 02be777c36..bbacf519fa 100644
--- a/var/spack/repos/builtin/packages/parmgridgen/package.py
+++ b/var/spack/repos/builtin/packages/parmgridgen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,11 +26,12 @@
from spack import *
+# Note: should probably be named 'mgridgen+mpi' (as per scotch, metis etc)
class Parmgridgen(Package):
"""MGRIDGEN is a serial library written entirely in ANSI C that implements
(serial) algorithms for obtaining a sequence of successive coarse grids
that are well-suited for geometric multigrid methods.
- ParMGridGen is the parallel version of MGridGen
+ ParMGridGen is the parallel version of MGridGen.
"""
homepage = "http://www-users.cs.umn.edu/~moulitsa/software.html"
@@ -38,34 +39,41 @@ class Parmgridgen(Package):
version('1.0', '2872fa95b7fb91d6bd525490eed62038')
- depends_on('mpi')
+ variant('mpi', default=True,
+ description='Activate the compilation of parallel libraries')
+
+ depends_on('mpi', when='+mpi')
def install(self, spec, prefix):
make_opts = [
'make=make',
- 'COPTIONS=-fPIC',
- 'LDOPTIONS=-fPIC',
+ 'COPTIONS={0}'.format(self.compiler.pic_flag),
+ 'LDOPTIONS={0}'.format(self.compiler.pic_flag),
'CC={0}'.format(self.compiler.cc),
- 'PARCC={0}'.format(spec['mpi'].mpicc),
'LD={0}'.format(self.compiler.cc),
- 'PARLD={0}'.format(spec['mpi'].mpicc),
'LIBDIR=-L../..',
- 'PARLIBS=-L../../ -lparmgrid -lmgrid -lm',
- 'LIBS=-L../../ -lmgrid -lm',
- 'parallel'
+ 'LIBS=-L../.. -lmgrid -lm',
]
+ if '+mpi' in spec:
+ make_opts.extend([
+ 'PARCC={0}'.format(spec['mpi'].mpicc),
+ 'PARLD={0}'.format(spec['mpi'].mpicc),
+ 'PARLIBS=-L../.. -lparmgrid -lmgrid -lm',
+ 'parallel'
+ ])
+ else:
+ make_opts.append('serial')
+
make(*make_opts, parallel=False)
mkdirp(prefix.include, prefix.lib, prefix.bin)
install("mgridgen.h", prefix.include)
- install("parmgridgen.h", prefix.include)
-
- install("MGridGen/IMlib/libIMlib.a",
- join_path(prefix.lib, 'libIMlib.a'))
install("libmgrid.a", prefix.lib)
- install("libparmgrid.a", prefix.lib)
+ install("mgridgen", prefix.bin)
- install("mgridgen", prefix.bin)
- install("parmgridgen", prefix.bin)
+ if '+mpi' in spec:
+ install("parmgridgen.h", prefix.include)
+ install("libparmgrid.a", prefix.lib)
+ install("parmgridgen", prefix.bin)
diff --git a/var/spack/repos/builtin/packages/parpack/package.py b/var/spack/repos/builtin/packages/parpack/package.py
deleted file mode 100644
index 84bc88b3b0..0000000000
--- a/var/spack/repos/builtin/packages/parpack/package.py
+++ /dev/null
@@ -1,68 +0,0 @@
-##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
-# Produced at the Lawrence Livermore National Laboratory.
-#
-# This file is part of Spack.
-# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
-# LLNL-CODE-647188
-#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License (as
-# published by the Free Software Foundation) version 2.1, February 1999.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
-# conditions of the GNU Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-##############################################################################
-from spack import *
-import os
-import shutil
-
-
-class Parpack(Package):
- """ARPACK is a collection of Fortran77 subroutines designed to solve large
- scale eigenvalue problems."""
-
- homepage = "http://www.caam.rice.edu/software/ARPACK/download.html"
- url = "http://www.caam.rice.edu/software/ARPACK/SRC/parpack96.tar.Z"
-
- version('96', 'a175f70ff71837a33ff7e4b0b6054f43')
-
- depends_on('mpi')
- depends_on('blas')
- depends_on('lapack')
-
- def patch(self):
- # Filter the CJ makefile to make a spack one.
- shutil.move('ARMAKES/ARmake.CJ', 'ARmake.inc')
- mf = FileFilter('ARmake.inc')
-
- # Be sure to use Spack F77 wrapper
- mf.filter('^FC.*', 'FC = f77')
- mf.filter('^FFLAGS.*', 'FFLAGS = -O2 -g')
-
- # Set up some variables.
- mf.filter('^PLAT.*', 'PLAT = ')
- mf.filter('^home.*', 'home = %s' % os.getcwd())
- mf.filter('^BLASdir.*', 'BLASdir = %s' % self.spec['blas'].prefix)
- mf.filter('^LAPACKdir.*', 'LAPACKdir = %s' %
- self.spec['lapack'].prefix)
- mf.filter('^MAKE.*', 'MAKE = make')
-
- # build the library in our own prefix.
- mf.filter('^ARPACKLIB.*', 'PARPACKLIB = %s/libparpack.a' % os.getcwd())
-
- def install(self, spec, prefix):
- with working_dir('PARPACK/SRC/MPI'):
- make('all')
-
- mkdirp(prefix.lib)
- install('libparpack.a', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/parsimonator/package.py b/var/spack/repos/builtin/packages/parsimonator/package.py
new file mode 100644
index 0000000000..462f81e6cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/parsimonator/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Parsimonator(MakefilePackage):
+ """Parsimonator is a no-frills light-weight implementation for building
+ starting trees under parsimony for RAxML"""
+
+ homepage = "http://www.exelixis-lab.org/"
+ url = "https://github.com/stamatak/Parsimonator-1.0.2"
+
+ version('1.0.2', git='https://github.com/stamatak/Parsimonator-1.0.2.git', commit='78368c6ab1e9adc7e9c6ec9256dd7ff2a5bb1b0a')
+
+ variant('sse', default=True, description='Enable SSE in order to substantially speed up execution')
+ variant('avx', default=False, description='Enable AVX in order to substantially speed up execution')
+
+ conflicts('+avx', when='+sse')
+
+ @property
+ def makefile_file(self):
+ if '+sse' in self.spec:
+ return 'Makefile.SSE3.gcc'
+ elif '+avx' in self.spec:
+ return 'Makefile.AVX.gcc'
+ else:
+ return 'Makefile.gcc'
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter(self.makefile_file)
+ makefile.filter('CC = gcc', 'CC = %s' % spack_cc)
+
+ def build(self, spec, prefix):
+ make('-f', self.makefile_file)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ if '+sse' in spec:
+ install('parsimonator-SSE3', prefix.bin)
+ elif '+avx' in spec:
+ install('parsimonator-AVX', prefix.bin)
+ else:
+ install('parsimonator', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/parsplice/package.py b/var/spack/repos/builtin/packages/parsplice/package.py
new file mode 100644
index 0000000000..24b950548f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/parsplice/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Parsplice(CMakePackage):
+ """ParSplice code implements the Parallel Trajectory Splicing algorithm"""
+
+ homepage = "https://gitlab.com/exaalt/parsplice"
+ url = "https://gitlab.com/exaalt/parsplice/repository/archive.tar.gz?ref=v1.1"
+
+ version('1.1', '3a72340d49d731a076e8942f2ae2f4e9')
+ version('develop', git='https://gitlab.com/exaalt/parsplice', branch='master')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on("berkeley-db")
+ depends_on("nauty")
+ depends_on("boost")
+ depends_on("mpi")
+ depends_on("eigen@3:")
+ depends_on("lammps+lib@20170901:")
+
+ def cmake_args(self):
+ options = ['-DBUILD_SHARED_LIBS=ON']
+
+ return options
diff --git a/var/spack/repos/builtin/packages/partitionfinder/package.py b/var/spack/repos/builtin/packages/partitionfinder/package.py
new file mode 100644
index 0000000000..3089eca783
--- /dev/null
+++ b/var/spack/repos/builtin/packages/partitionfinder/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Partitionfinder(Package):
+ """PartitionFinder is free open source software to select best-fit
+ partitioning schemes and models of molecular evolution for
+ phylogenetic analyses."""
+
+ homepage = "https://github.com/brettc/partitionfinder"
+ url = "https://github.com/brettc/partitionfinder/archive/v2.1.1.tar.gz"
+
+ version('2.1.1', 'b1b6539f93146c69b967cf92459ae28a')
+
+ depends_on('python@2.7.10:2.999', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-pytables', type=('build', 'run'))
+ depends_on('py-pyparsing', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-scikit-learn', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install_tree('partfinder', prefix.partfinder)
+ install_tree('timings', prefix.timings)
+ install('PartitionFinderMorphology.py', prefix.bin)
+ install('PartitionFinderProtein.py', prefix.bin)
+ install('PartitionFinder.py', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/patch/package.py b/var/spack/repos/builtin/packages/patch/package.py
index df890c057a..6c69b7994f 100644
--- a/var/spack/repos/builtin/packages/patch/package.py
+++ b/var/spack/repos/builtin/packages/patch/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,3 +35,5 @@ class Patch(AutotoolsPackage):
url = "http://ftp.gnu.org/gnu/patch/patch-2.7.5.tar.xz"
version('2.7.5', 'e3da7940431633fb65a01b91d3b7a27a')
+
+ build_directory = 'spack-build'
diff --git a/var/spack/repos/builtin/packages/patchelf/package.py b/var/spack/repos/builtin/packages/patchelf/package.py
index c391f491eb..273d10486c 100644
--- a/var/spack/repos/builtin/packages/patchelf/package.py
+++ b/var/spack/repos/builtin/packages/patchelf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Patchelf(Package):
+class Patchelf(AutotoolsPackage):
"""PatchELF is a small utility to modify the dynamic linker and RPATH of
ELF executables."""
@@ -33,12 +33,7 @@ class Patchelf(Package):
url = "http://nixos.org/releases/patchelf/patchelf-0.8/patchelf-0.8.tar.gz"
list_url = "http://nixos.org/releases/patchelf/"
- list_depth = 2
+ list_depth = 1
version('0.9', '3c265508526760f233620f35d79c79fc')
version('0.8', '407b229e6a681ffb0e2cdd5915cb2d01')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/daal/package.py b/var/spack/repos/builtin/packages/pathfinder/package.py
index a39064df9e..79bba915d0 100644
--- a/var/spack/repos/builtin/packages/daal/package.py
+++ b/var/spack/repos/builtin/packages/pathfinder/package.py
@@ -1,12 +1,12 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
+# For details, see https://github.com/spack/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
@@ -22,31 +22,34 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+
from spack import *
-import os
-from spack.pkg.builtin.intel import IntelInstaller
+class Pathfinder(MakefilePackage):
+ """Proxy Application. Signature search."""
+
+ homepage = "https://mantevo.org/packages/"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/PathFinder/PathFinder_1.0.0.tgz"
-class Daal(IntelInstaller):
- """Intel Data Analytics Acceleration Library.
+ tags = ['proxy-app']
- Note: You will have to add the download file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+ version('1.0.0', '374269e8d42c305eda3e392444e22dde')
- homepage = "https://software.intel.com/en-us/daal"
+ build_targets = ['--directory=PathFinder_ref', 'CC=cc']
- version('2016.2.181', 'aad2aa70e5599ebfe6f85b29d8719d46',
- url="file://%s/l_daal_2016.2.181.tgz" % os.getcwd())
- version('2016.3.210', 'ad747c0dd97dace4cad03cf2266cad28',
- url="file://%s/l_daal_2016.3.210.tgz" % os.getcwd())
+ def edit(self, spec, prefix):
+ makefile = FileFilter('PathFinder_ref/Makefile')
+ makefile.filter('-fopenmp', self.compiler.openmp_flag)
def install(self, spec, prefix):
+ # Manual installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc)
- self.intel_prefix = os.path.join(prefix, "pkg")
- IntelInstaller.install(self, spec, prefix)
+ install('PathFinder_ref/PathFinder.x', prefix.bin)
+ install('PathFinder_ref/MicroTestData.adj_list', prefix.bin)
+ install('README', prefix.doc)
- daal_dir = os.path.join(self.intel_prefix, "daal")
- for f in os.listdir(daal_dir):
- os.symlink(os.path.join(daal_dir, f), os.path.join(self.prefix, f))
+ install_tree('generatedData/', prefix.doc.generatedData)
+ install_tree('scaleData/', prefix.doc.scaleData)
diff --git a/var/spack/repos/builtin/packages/pax-utils/package.py b/var/spack/repos/builtin/packages/pax-utils/package.py
new file mode 100644
index 0000000000..0230419ac0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pax-utils/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PaxUtils(AutotoolsPackage):
+ """ELF utils that can check files for security relevant properties"""
+
+ homepage = "https://wiki.gentoo.org/index.php?title=Project:Hardened/PaX_Utilities"
+ url = "https://dev.gentoo.org/~vapier/dist/pax-utils-1.2.2.tar.xz"
+
+ version('1.2.2', 'a580468318f0ff42edf4a8cd314cc942')
diff --git a/var/spack/repos/builtin/packages/pbmpi/package.py b/var/spack/repos/builtin/packages/pbmpi/package.py
new file mode 100644
index 0000000000..a8bbece03d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pbmpi/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pbmpi(MakefilePackage):
+ """A Bayesian software for phylogenetic reconstruction using mixture models
+ """
+
+ homepage = "http://megasun.bch.umontreal.ca/People/lartillot/www/index.htm"
+ url = "https://github.com/bayesiancook/pbmpi"
+
+ version('partition', git='https://github.com/bayesiancook/pbmpi.git', branch='partition')
+
+ depends_on('mpi')
+ depends_on('libfabric')
+
+ build_directory = 'sources'
+
+ @run_before('build')
+ def make_data_dir(self):
+ mkdirp(self.stage.source_path, 'data')
+
+ def install(self, spec, prefix):
+ install_tree('data', prefix.bin)
+ install_tree('sources', prefix.sources)
diff --git a/var/spack/repos/builtin/packages/pcma/package.py b/var/spack/repos/builtin/packages/pcma/package.py
new file mode 100644
index 0000000000..d4f998d104
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pcma/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pcma(MakefilePackage):
+ """PCMA is a progressive multiple sequence alignment program that combines
+ two different alignment strategies."""
+
+ homepage = "http://prodata.swmed.edu/pcma/pcma.php"
+ url = "http://prodata.swmed.edu/download/pub/PCMA/pcma.tar.gz"
+
+ version('2.0', 'e78449b2f6b0e90348a0a6747d266f9b')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('makefile')
+ makefile.filter('gcc', spack_cc)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('pcma', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/pcre/package.py b/var/spack/repos/builtin/packages/pcre/package.py
index a2236e682b..213a49f731 100644
--- a/var/spack/repos/builtin/packages/pcre/package.py
+++ b/var/spack/repos/builtin/packages/pcre/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,28 +25,35 @@
from spack import *
-class Pcre(Package):
+class Pcre(AutotoolsPackage):
"""The PCRE package contains Perl Compatible Regular Expression
- libraries. These are useful for implementing regular expression
- pattern matching using the same syntax and semantics as Perl 5."""
- homepage = "http://www.pcre.org"""
- url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.bz2"
+ libraries. These are useful for implementing regular expression
+ pattern matching using the same syntax and semantics as Perl 5."""
+ homepage = "http://www.pcre.org"
+ url = "https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.bz2"
+
+ version('8.40', '41a842bf7dcecd6634219336e2167d1d')
version('8.39', 'e3fca7650a0556a2647821679d81f585')
version('8.38', '00aabbfe56d5a48b270f999b508c5ad2')
- patch("intel.patch", when='@8.38')
+ patch('intel.patch', when='@8.38')
+
+ variant('jit', default=False,
+ description='Enable JIT support.')
variant('utf', default=True,
description='Enable support for UTF-8/16/32, '
'incompatible with EBCDIC.')
- def install(self, spec, prefix):
- configure_args = ['--prefix=%s' % prefix]
- if '+utf' in spec:
- configure_args.append('--enable-utf')
- configure_args.append('--enable-unicode-properties')
+ def configure_args(self):
+ args = []
+
+ if '+jit' in self.spec:
+ args.append('--enable-jit')
+
+ if '+utf' in self.spec:
+ args.append('--enable-utf')
+ args.append('--enable-unicode-properties')
- configure(*configure_args)
- make()
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/pcre2/package.py b/var/spack/repos/builtin/packages/pcre2/package.py
index a2739e0584..531a175ef7 100644
--- a/var/spack/repos/builtin/packages/pcre2/package.py
+++ b/var/spack/repos/builtin/packages/pcre2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,11 @@
from spack import *
-class Pcre2(Package):
+class Pcre2(AutotoolsPackage):
"""The PCRE2 package contains Perl Compatible Regular Expression
libraries. These are useful for implementing regular expression
pattern matching using the same syntax and semantics as Perl 5."""
homepage = "http://www.pcre.org"""
- url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.bz2"
+ url = "https://ftp.pcre.org/pub/pcre/pcre2-10.20.tar.bz2"
version('10.20', 'dcd027c57ecfdc8a6c3af9d0acf5e3f7')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/pdsh/package.py b/var/spack/repos/builtin/packages/pdsh/package.py
new file mode 100644
index 0000000000..708dea108c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pdsh/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pdsh(AutotoolsPackage):
+ """
+ PDSH: a high performance, parallel remote shell utility
+ """
+
+ homepage = "https://github.com/grondo/pdsh"
+ url = "https://github.com/grondo/pdsh/archive/pdsh-2.31.tar.gz"
+
+ version('2.31', 'cab34b0ca78f3cf596fd648b265223ed')
+
+ variant('ssh', default=True, description="Build with ssh module")
+
+ variant('static_modules', default=True, description="Build with static modules")
+
+ def configure_args(self):
+ args = []
+ if '+ssh' in self.spec:
+ args.append('--with-ssh')
+ if '+static_modules' in self.spec:
+ args.append('--enable-static-modules')
+ return args
diff --git a/var/spack/repos/builtin/packages/pdt/package.py b/var/spack/repos/builtin/packages/pdt/package.py
index bed01aeefb..ef8592e44d 100644
--- a/var/spack/repos/builtin/packages/pdt/package.py
+++ b/var/spack/repos/builtin/packages/pdt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import os
from spack import *
-class Pdt(Package):
+class Pdt(AutotoolsPackage):
"""Program Database Toolkit (PDT) is a framework for analyzing source
code written in several programming languages and for making rich
program knowledge accessible to developers of static and dynamic
@@ -44,7 +45,31 @@ class Pdt(Package):
version('3.19', '5c5e1e6607086aa13bf4b1b9befc5864')
version('3.18.1', 'e401534f5c476c3e77f05b7f73b6c4f2')
- def install(self, spec, prefix):
- configure('-prefix=%s' % prefix)
- make()
- make('install')
+ def patch(self):
+ if self.spec.satisfies('%clang'):
+ filter_file(r'PDT_GXX=g\+\+ ',
+ r'PDT_GXX=clang++ ', 'ductape/Makefile')
+
+ def configure(self, spec, prefix):
+ options = ['-prefix=%s' % prefix]
+ if self.compiler.name == 'xl':
+ options.append('-XLC')
+ elif self.compiler.name == 'intel':
+ options.append('-icpc')
+ elif self.compiler.name == 'pgi':
+ options.append('-pgCC')
+
+ configure(*options)
+
+ @run_after('install')
+ def link_arch_dirs(self):
+ # Link arch-specific directories into prefix
+ for dir in os.listdir(self.prefix):
+ path = join_path(self.prefix, dir)
+ if not os.path.isdir(path) or os.path.islink(path):
+ continue
+ for d in ('bin', 'lib'):
+ src = join_path(path, d)
+ dst = join_path(self.prefix, d)
+ if os.path.isdir(src) and not os.path.exists(dst):
+ os.symlink(join_path(dir, d), dst)
diff --git a/var/spack/repos/builtin/packages/pegtl/package.py b/var/spack/repos/builtin/packages/pegtl/package.py
new file mode 100644
index 0000000000..c297854797
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pegtl/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+# package has a Makefile, but only to build examples
+class Pegtl(CMakePackage):
+ """The Parsing Expression Grammar Template Library (PEGTL) is a
+ zero-dependency C++11 header-only library for creating parsers
+ according to a Parsing Expression Grammar (PEG).
+ """
+
+ homepage = "https://github.com/taocpp/PEGTL"
+ url = "https://github.com/taocpp/PEGTL/tarball/1.3.1"
+
+ version('develop', git='https://github.com/taocpp/PEGTL', branch='master')
+ version('2.1.4', 'e5288b6968e6e910287fce93dc5557bf')
+ version('2.0.0', 'c772828e7188459338a920c21f9896db')
diff --git a/var/spack/repos/builtin/packages/pennant/package.py b/var/spack/repos/builtin/packages/pennant/package.py
new file mode 100644
index 0000000000..e318cd991d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pennant/package.py
@@ -0,0 +1,99 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pennant(MakefilePackage):
+ """PENNANT is an unstructured mesh physics mini-app designed
+ for advanced architecture research. It contains mesh data
+ structures and a few physics algorithms adapted
+ from the LANL rad-hydro code FLAG, and gives a sample of
+ the typical memory access patterns of FLAG.
+ """
+
+ homepage = "https://github.com/lanl/PENNANT"
+ url = "https://github.com/lanl/PENNANT/archive/pennant_v0.9.tar.gz"
+ tags = ['proxy-app']
+
+ version('0.9', '4f21ba3836b2721436277308c2e33f45')
+ version('0.8', 'a1afff4914fef8140c3024a02d7c993c')
+ version('0.7', 'd642a030d5388f65f799504803794a4e')
+ version('0.6', '8ab2d4b47ec9870643bfe6f262cd47a4')
+ version('0.5', '534547878c698b9926e2886c74e10831')
+ version('0.4', '0f67d8da0a92bd42d92a4823d3e4dbe1')
+
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('openmp', default=True, description='Build with OpenMP support')
+ variant('debug', default=False, description='Enable debug')
+
+ depends_on('mpi', when='+mpi')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('Makefile')
+ debug = '-g'
+ opt = '-O3'
+
+ if self.compiler.name == 'intel':
+ opt += ' -fast -fno-alias'
+ if self.compiler.name == 'pgi':
+ opt += ' -fastsse'
+
+ makefile.filter(
+ 'CXXFLAGS_DEBUG .*',
+ 'CXXFLAGS_DEBUG := {0}'.format(debug))
+ makefile.filter(
+ 'CXXFLAGS_OPT .*',
+ 'CXXFLAGS_OPT := {0}'.format(opt))
+ makefile.filter(
+ 'CXXFLAGS_OPENMP .*',
+ 'CXXFLAGS_OPENMP := {0}'.format(self.compiler.openmp_flag))
+
+ if '+mpi' in spec:
+ makefile.filter(
+ 'CXX .*',
+ 'CXX := {0}'.format(spec['mpi'].mpicxx))
+ else:
+ makefile.filter('-DUSE_MPI', '#')
+ makefile.filter('CXX .*', 'CXX := c++')
+
+ if '+openmp' not in spec:
+ makefile.filter('.*CXXFLAGS_OPENMP.*', '#')
+
+ if '+debug' in spec:
+ makefile.filter(
+ '.*(CXXFLAGS_OPT).*',
+ 'CXXFLAGS := $(CXXFLAGS_DEBUG)')
+
+ def install(self, spec, prefix):
+
+ def install_dir(dirname):
+ install_tree(dirname, join_path(prefix, dirname))
+
+ mkdirp(prefix.bin)
+ install('build/pennant', prefix.bin)
+ install_dir('doc')
+ install_dir('test')
+ install('LICENSE', prefix)
+ install('README', prefix)
diff --git a/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py b/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py
new file mode 100644
index 0000000000..79f4076da5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-algorithm-diff/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlAlgorithmDiff(PerlPackage):
+ """Compute 'intelligent' differences between two files / lists"""
+
+ homepage = "http://search.cpan.org/~tyemq/Algorithm-Diff-1.1903/lib/Algorithm/Diff.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/T/TY/TYEMQ/Algorithm-Diff-1.1903.tar.gz"
+
+ version('1.1903', '0e8add21a641b8d66436df0c2024bf3b')
diff --git a/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py b/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py
new file mode 100644
index 0000000000..eecd0b69cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-b-hooks-endofscope/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlBHooksEndofscope(PerlPackage):
+ """Execute code after a scope finished compilation."""
+
+ homepage = "http://search.cpan.org/~ether/B-Hooks-EndOfScope-0.21/lib/B/Hooks/EndOfScope.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.21.tar.gz"
+
+ version('0.21', 'df9dacbf55a01d7a444b1ebc616435ae')
+
+ depends_on('perl-sub-exporter-progressive', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-bio-perl/package.py b/var/spack/repos/builtin/packages/perl-bio-perl/package.py
new file mode 100644
index 0000000000..afbef8001c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-bio-perl/package.py
@@ -0,0 +1,71 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import inspect
+
+
+class PerlBioPerl(PerlPackage):
+ """Functional access to BioPerl for people who don't know objects"""
+
+ homepage = "http://search.cpan.org/~cjfields/BioPerl-1.007002/Bio/Perl.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/C/CJ/CJFIELDS/BioPerl-1.007002.tar.gz"
+
+ version('1.007002', 'a912c92b56d009198f1786b4cf560d5c')
+
+ depends_on('perl-module-build', type='build')
+ depends_on('perl-uri-escape', type=('build', 'run'))
+ depends_on('perl-io-string', type=('build', 'run'))
+ depends_on('perl-data-stag', type=('build', 'run'))
+ depends_on('perl-test-most', type=('build', 'run'))
+
+ def configure(self, spec, prefix):
+ # Overriding default configure method in order to cater to interactive
+ # Build.pl
+ self.build_method = 'Build.PL'
+ self.build_executable = Executable(
+ join_path(self.stage.source_path, 'Build'))
+
+ # Config questions consist of:
+ # Do you want to run the Bio::DB::GFF or Bio::DB::SeqFeature::Store
+ # live database tests? y/n [n]
+ #
+ # Install [a]ll BioPerl scripts, [n]one, or choose groups
+ # [i]nteractively? [a]
+ #
+ # Do you want to run tests that require connection to servers across
+ # the internet (likely to cause some failures)? y/n [n]
+ #
+ # Eventually, someone can add capability for the other options, but
+ # the current answers are the most practical for a spack install.
+
+ config_answers = ['n\n', 'a\n', 'n\n']
+ config_answers_filename = 'spack-config.in'
+
+ with open(config_answers_filename, 'w') as f:
+ f.writelines(config_answers)
+
+ with open(config_answers_filename, 'r') as f:
+ inspect.getmodule(self).perl('Build.PL', '--install_base=%s' %
+ self.prefix, input=f)
diff --git a/var/spack/repos/builtin/packages/perl-capture-tiny/package.py b/var/spack/repos/builtin/packages/perl-capture-tiny/package.py
new file mode 100644
index 0000000000..952ff2999c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-capture-tiny/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlCaptureTiny(PerlPackage):
+ """Capture STDOUT and STDERR from Perl, XS or external programs"""
+
+ homepage = "http://search.cpan.org/~dagolden/Capture-Tiny-0.46/lib/Capture/Tiny.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.46.tar.gz"
+
+ version('0.46', 'd718af07729d26a793949ca6ba2580a7')
diff --git a/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py b/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py
new file mode 100644
index 0000000000..2fd349b077
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-class-data-inheritable/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlClassDataInheritable(PerlPackage):
+ """For creating accessor/mutators to class data."""
+
+ homepage = "http://search.cpan.org/~tmtm/Class-Data-Inheritable-0.08/lib/Class/Data/Inheritable.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/T/TM/TMTM/Class-Data-Inheritable-0.08.tar.gz"
+
+ version('0.08', 'fc0fe65926eb8fb932743559feb54eb9')
diff --git a/var/spack/repos/builtin/packages/perl-class-load-xs/package.py b/var/spack/repos/builtin/packages/perl-class-load-xs/package.py
new file mode 100644
index 0000000000..11130afd97
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-class-load-xs/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlClassLoadXs(PerlPackage):
+ """This module provides an XS implementation for portions of
+ Class::Load."""
+
+ homepage = "http://search.cpan.org/~ether/Class-Load-XS-0.10/lib/Class/Load/XS.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Class-Load-XS-0.10.tar.gz"
+
+ version('0.10', '2c15488b5b28afadbb5315e44a721e05')
+
+ depends_on('perl-class-load', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-class-load/package.py b/var/spack/repos/builtin/packages/perl-class-load/package.py
new file mode 100644
index 0000000000..0d10f82813
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-class-load/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlClassLoad(PerlPackage):
+ """A working (require "Class::Name") and more"""
+
+ homepage = "http://search.cpan.org/~ether/Class-Load-0.24/lib/Class/Load.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Class-Load-0.24.tar.gz"
+
+ version('0.24', 'daf8aeedf4d19ed6d3f75cd3e720116d')
diff --git a/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py b/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py
new file mode 100644
index 0000000000..7fe16bb2a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-cpan-meta-check/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlCpanMetaCheck(PerlPackage):
+ """This module verifies if requirements described in a CPAN::Meta object
+ are present.."""
+
+ homepage = "http://search.cpan.org/~leont/CPAN-Meta-Check-0.014/lib/CPAN/Meta/Check.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/L/LE/LEONT/CPAN-Meta-Check-0.014.tar.gz"
+
+ version('0.014', 'ccd4448a7b08e1e3ef6f475030b282c9')
+
+ depends_on('perl-test-deep', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-data-optlist/package.py b/var/spack/repos/builtin/packages/perl-data-optlist/package.py
new file mode 100644
index 0000000000..4eaeaca1a4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-data-optlist/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDataOptlist(PerlPackage):
+ """Parse and validate simple name/value option pairs"""
+
+ homepage = "http://search.cpan.org/~rjbs/Data-OptList-0.110/lib/Data/OptList.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Data-OptList-0.110.tar.gz"
+
+ version('0.110', 'f9236c9ea5607134ad8a2b3dc901c4c5')
+
+ depends_on('perl-sub-install', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-data-stag/package.py b/var/spack/repos/builtin/packages/perl-data-stag/package.py
new file mode 100644
index 0000000000..fd1bff285f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-data-stag/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDataStag(PerlPackage):
+ """Structured Tags datastructures"""
+
+ homepage = "http://search.cpan.org/~cmungall/Data-Stag-0.14/Data/Stag.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/C/CM/CMUNGALL/Data-Stag-0.14.tar.gz"
+
+ version('0.14', 'f803acf74f1bfccc118aeac5483ee871')
+
+ depends_on('perl-io-string', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-dbfile/package.py b/var/spack/repos/builtin/packages/perl-dbfile/package.py
new file mode 100644
index 0000000000..3a5d8fea94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-dbfile/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDbfile(PerlPackage):
+ """DB_File is a module which allows Perl programs to make use of the
+ facilities provided by Berkeley DB version 1.x (if you have a newer version
+ of DB, see "Using DB_File with Berkeley DB version 2 or greater").
+ It is assumed that you have a copy of the Berkeley DB manual pages at hand
+ when reading this documentation. The interface defined here mirrors the
+ Berkeley DB interface closely."""
+
+ homepage = "https://metacpan.org/pod/DB_File"
+ url = "https://cpan.metacpan.org/authors/id/P/PM/PMQS/DB_File-1.840.tar.gz"
+
+ version('1.840', '8a2e98d457a216840ac893913c24141e')
+
+ depends_on('perl-extutils-makemaker', type='build')
diff --git a/var/spack/repos/builtin/packages/perl-dbi/package.py b/var/spack/repos/builtin/packages/perl-dbi/package.py
new file mode 100644
index 0000000000..a6e5e76cc5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-dbi/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDbi(PerlPackage):
+ """The DBI is the standard database interface module for Perl. It defines
+ a set of methods, variables and conventions that provide a consistent
+ database interface independent of the actual database being used."""
+
+ homepage = "https://dbi.perl.org/"
+ url = "http://search.cpan.org/CPAN/authors/id/T/TI/TIMB/DBI-1.636.tar.gz"
+
+ version('1.636', '60f291e5f015550dde71d1858dfe93ba')
diff --git a/var/spack/repos/builtin/packages/perl-devel-cycle/package.py b/var/spack/repos/builtin/packages/perl-devel-cycle/package.py
new file mode 100644
index 0000000000..ad4c575025
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-devel-cycle/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDevelCycle(PerlPackage):
+ """Find memory cycles in objects"""
+
+ homepage = "http://search.cpan.org/~lds/Devel-Cycle-1.12/lib/Devel/Cycle.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/L/LD/LDS/Devel-Cycle-1.12.tar.gz"
+
+ version('1.12', '3d9a963da87b17398fab9acbef63f277')
diff --git a/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py b/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py
new file mode 100644
index 0000000000..aca5245611
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-devel-globaldestruction/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDevelGlobaldestruction(PerlPackage):
+ """Makes Perl's global destruction less tricky to deal with"""
+
+ homepage = "http://search.cpan.org/~haarg/Devel-GlobalDestruction-0.14/lib/Devel/GlobalDestruction.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/Devel-GlobalDestruction-0.14.tar.gz"
+
+ version('0.14', '24221ba322cf2dc46a1fc99b53e2380b')
diff --git a/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py b/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py
new file mode 100644
index 0000000000..60a80aed90
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-devel-overloadinfo/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDevelOverloadinfo(PerlPackage):
+ """Returns information about overloaded operators for a given class"""
+
+ homepage = "http://search.cpan.org/~ilmari/Devel-OverloadInfo-0.004/lib/Devel/OverloadInfo.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/I/IL/ILMARI/Devel-OverloadInfo-0.004.tar.gz"
+
+ version('0.004', '97a27e31858b073daba54121d57be705')
+
+ depends_on('perl-mro-compat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py b/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py
new file mode 100644
index 0000000000..d6b7b8f484
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-devel-stacktrace/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDevelStacktrace(PerlPackage):
+ """An object representing a stack trace."""
+
+ homepage = "http://search.cpan.org/~drolsky/Devel-StackTrace-2.02/lib/Devel/StackTrace.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Devel-StackTrace-2.02.tar.gz"
+
+ version('2.02', 'bcc49dc2744d1fae906de0de3df07cca')
diff --git a/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py b/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py
new file mode 100644
index 0000000000..f09ebd4a31
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-dist-checkconflicts/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlDistCheckconflicts(PerlPackage):
+ """Declare version conflicts for your dist"""
+
+ homepage = "http://search.cpan.org/~doy/Dist-CheckConflicts-0.11/lib/Dist/CheckConflicts.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Dist-CheckConflicts-0.11.tar.gz"
+
+ version('0.11', 'c8725a92b9169708b0f63036812070f2')
diff --git a/var/spack/repos/builtin/packages/perl-eval-closure/package.py b/var/spack/repos/builtin/packages/perl-eval-closure/package.py
new file mode 100644
index 0000000000..d79d119140
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-eval-closure/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlEvalClosure(PerlPackage):
+ """Safely and cleanly create closures via string eval"""
+
+ homepage = "http://search.cpan.org/~doy/Eval-Closure-0.14/lib/Eval/Closure.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Eval-Closure-0.14.tar.gz"
+
+ version('0.14', 'ceeb1fc579ac9af981fa6b600538c285')
diff --git a/var/spack/repos/builtin/packages/perl-exception-class/package.py b/var/spack/repos/builtin/packages/perl-exception-class/package.py
new file mode 100644
index 0000000000..715830432d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-exception-class/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlExceptionClass(PerlPackage):
+ """A module that allows you to declare real exception classes in Perl"""
+
+ homepage = "http://search.cpan.org/~drolsky/Exception-Class-1.43/lib/Exception/Class.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Exception-Class-1.43.tar.gz"
+
+ version('1.43', 'ff3fa5c26fa417b68d1f2d0a14cce7f1')
+
+ depends_on('perl-devel-stacktrace', type=('build', 'run'))
+ depends_on('perl-class-data-inheritable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py b/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py
new file mode 100644
index 0000000000..c346cead50
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-extutils-makemaker/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlExtutilsMakemaker(PerlPackage):
+ """ExtUtils::MakeMaker - Create a module Makefile. This utility is designed
+ to write a Makefile for an extension module from a Makefile.PL. It is based
+ on the Makefile.SH model provided by Andy Dougherty and the perl5-porters.
+ """
+ homepage = "https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker"
+ url = "http://search.cpan.org/CPAN/authors/id/B/BI/BINGOS/ExtUtils-MakeMaker-7.24.tar.gz"
+
+ version('7.24', '15c67ba2ea2c9e20a3d976b738adb113')
+
+ depends_on('perl@5.6.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py b/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py
new file mode 100644
index 0000000000..547d2d2866
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-extutils-pkgconfig/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlExtutilsPkgconfig(PerlPackage):
+ """simplistic interface to pkg-config"""
+
+ homepage = "http://search.cpan.org/~xaoc/ExtUtils-PkgConfig-1.16/lib/ExtUtils/PkgConfig.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/X/XA/XAOC/ExtUtils-PkgConfig-1.16.tar.gz"
+
+ version('1.16', 'b86318f2b6ac6af3ee985299e1e38fe5')
diff --git a/var/spack/repos/builtin/packages/perl-file-pushd/package.py b/var/spack/repos/builtin/packages/perl-file-pushd/package.py
new file mode 100644
index 0000000000..fea45e0f9e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-file-pushd/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlFilePushd(PerlPackage):
+ """Change directory temporarily for a limited scope"""
+
+ homepage = "http://search.cpan.org/~dagolden/File-pushd-1.014/lib/File/pushd.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/File-pushd-1.014.tar.gz"
+
+ version('1.014', '09c03001fb653c35663842191e315f5f')
diff --git a/var/spack/repos/builtin/packages/perl-font-ttf/package.py b/var/spack/repos/builtin/packages/perl-font-ttf/package.py
new file mode 100644
index 0000000000..81ddbf20b5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-font-ttf/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlFontTtf(PerlPackage):
+ """Perl module for TrueType Font hacking"""
+
+ homepage = "http://search.cpan.org/~bhallissy/Font-TTF-1.06/lib/Font/TTF.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/B/BH/BHALLISSY/Font-TTF-1.06.tar.gz"
+
+ version('1.06', '241b59310ad4450e6e050d5e790f1b21')
diff --git a/var/spack/repos/builtin/packages/perl-gd-graph/package.py b/var/spack/repos/builtin/packages/perl-gd-graph/package.py
new file mode 100644
index 0000000000..9e68fb208a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-gd-graph/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlGdGraph(PerlPackage):
+ """Graph Plotting Module for Perl 5"""
+
+ homepage = "http://search.cpan.org/~bwarfield/GDGraph/Graph.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/B/BW/BWARFIELD/GDGraph-1.44.tar.gz"
+
+ version('1.4308', 'fcdd34d5e09ae917b5d264887734b3b1')
+
+ depends_on('perl-capture-tiny', type=('build', 'run'))
+ depends_on('perl-test-exception', type=('build', 'run'))
+ depends_on('perl-gd-text', type=('build', 'run'))
+ depends_on('perl-gd', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-gd-text/package.py b/var/spack/repos/builtin/packages/perl-gd-text/package.py
new file mode 100644
index 0000000000..a0a512352a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-gd-text/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlGdText(PerlPackage):
+ """Text utilities for use with GD"""
+
+ homepage = "http://search.cpan.org/~mverb/GDTextUtil-0.86/Text.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/M/MV/MVERB/GDTextUtil-0.86.tar.gz"
+
+ version('0.86', '941ad06eadc86b47f3a32da405665c41')
+
+ depends_on('perl-gd', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-gd/package.py b/var/spack/repos/builtin/packages/perl-gd/package.py
new file mode 100644
index 0000000000..77e5c01aee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-gd/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlGd(PerlPackage):
+ """Interface to Gd Graphics Library"""
+
+ homepage = "http://search.cpan.org/~lds/GD-2.53/GD.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/L/LD/LDS/GD-2.53.tar.gz"
+
+ version('2.53', 'd2c9b18123bcaff8672eb50f2eb37ed3')
+
+ depends_on('perl-module-build', type='build')
+ depends_on('perl-extutils-makemaker', type=('build', 'run'))
+ depends_on('perl-extutils-pkgconfig', type=('build', 'run'))
+ depends_on('libgd')
diff --git a/var/spack/repos/builtin/packages/perl-intervaltree/package.py b/var/spack/repos/builtin/packages/perl-intervaltree/package.py
new file mode 100644
index 0000000000..1a3a31f9d7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-intervaltree/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlIntervaltree(PerlPackage):
+ """Set::IntervalTree uses Interval Trees to store and efficiently look up
+ ranges using a range-based lookup."""
+
+ homepage = "https://metacpan.org/release/Set-IntervalTree"
+ url = "https://cpan.metacpan.org/authors/id/B/BE/BENBOOTH/Set-IntervalTree-0.10.tar.gz"
+
+ version('0.10', '42efe9369f1b30e7fd04e10c07226b06')
+
+ depends_on('perl-extutils-makemaker', type='build')
diff --git a/var/spack/repos/builtin/packages/perl-io-string/package.py b/var/spack/repos/builtin/packages/perl-io-string/package.py
new file mode 100644
index 0000000000..ec08ac3078
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-io-string/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlIoString(PerlPackage):
+ """Emulate file interface for in-core strings"""
+
+ homepage = "http://search.cpan.org/~gaas/IO-String-1.08/String.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/IO-String-1.08.tar.gz"
+
+ version('1.08', '250e5424f290299fc3d6b5d1e9da3835')
diff --git a/var/spack/repos/builtin/packages/perl-math-cdf/package.py b/var/spack/repos/builtin/packages/perl-math-cdf/package.py
new file mode 100644
index 0000000000..094b08dd1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-math-cdf/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlMathCdf(PerlPackage):
+ """Generate probabilities and quantiles from several statistical
+ probability functions"""
+
+ homepage = "http://search.cpan.org/~callahan/Math-CDF-0.1/CDF.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/C/CA/CALLAHAN/Math-CDF-0.1.tar.gz"
+
+ version('0.1', '7866c7b6b9d27f0ce4b7637334478ab7')
diff --git a/var/spack/repos/builtin/packages/perl-module-build/package.py b/var/spack/repos/builtin/packages/perl-module-build/package.py
new file mode 100644
index 0000000000..53bc80a062
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-module-build/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PerlModuleBuild(PerlPackage):
+ """Module::Build is a system for building, testing, and installing Perl
+ modules. It is meant to be an alternative to ExtUtils::MakeMaker.
+ Developers may alter the behavior of the module through subclassing in a
+ much more straightforward way than with MakeMaker. It also does not
+ require a make on your system - most of the Module::Build code is
+ pure-perl and written in a very cross-platform way.
+ """
+
+ homepage = "http://search.cpan.org/perldoc/Module::Build"
+ url = "http://search.cpan.org/CPAN/authors/id/L/LE/LEONT/Module-Build-0.4220.tar.gz"
+
+ version('0.4220', '9df204e188462a4410d496f316c2c531')
diff --git a/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py b/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py
new file mode 100644
index 0000000000..1b499ce7f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-module-runtime-conflicts/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlModuleRuntimeConflicts(PerlPackage):
+ """Provide information on conflicts for Module::Runtime"""
+
+ homepage = "http://search.cpan.org/~ether/Module-Runtime-Conflicts-0.003/lib/Module/Runtime/Conflicts.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Module-Runtime-Conflicts-0.003.tar.gz"
+
+ version('0.003', '67aaf699072063cc00c5b6afd4c67a6f')
diff --git a/var/spack/repos/builtin/packages/perl-moose/package.py b/var/spack/repos/builtin/packages/perl-moose/package.py
new file mode 100644
index 0000000000..2a0261599f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-moose/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlMoose(PerlPackage):
+ """A postmodern object system for Perl 5"""
+
+ homepage = "http://search.cpan.org/~ether/Moose-2.2006/lib/Moose.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Moose-2.2006.tar.gz"
+
+ version('2.2006', '929c6b3877a6054ef617cf7ef1e220b5')
+
+ depends_on('perl-cpan-meta-check', type=('build', 'run'))
+ depends_on('perl-test-cleannamespaces', type=('build', 'run'))
+ depends_on('perl-devel-overloadinfo', type=('build', 'run'))
+ depends_on('perl-class-load-xs', type=('build', 'run'))
+ depends_on('perl-devel-stacktrace', type=('build', 'run'))
+ depends_on('perl-eval-closure', type=('build', 'run'))
+ depends_on('perl-sub-name', type=('build', 'run'))
+ depends_on('perl-module-runtime-conflicts', type=('build', 'run'))
+ depends_on('perl-devel-globaldestruction', type=('build', 'run'))
+ depends_on('perl-package-deprecationmanager', type=('build', 'run'))
+ depends_on('perl-package-stash-xs', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-mro-compat/package.py b/var/spack/repos/builtin/packages/perl-mro-compat/package.py
new file mode 100644
index 0000000000..81b6f19ffa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-mro-compat/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlMroCompat(PerlPackage):
+ """Provides several utilities for dealing with method resolution order."""
+
+ homepage = "http://search.cpan.org/~haarg/MRO-Compat-0.13/lib/MRO/Compat.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/MRO-Compat-0.13.tar.gz"
+
+ version('0.13', 'd2e603e8ae9dc6934162d190eb085385')
diff --git a/var/spack/repos/builtin/packages/perl-namespace-clean/package.py b/var/spack/repos/builtin/packages/perl-namespace-clean/package.py
new file mode 100644
index 0000000000..8dc2492430
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-namespace-clean/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlNamespaceClean(PerlPackage):
+ """Keep imports and functions out of your namespace."""
+
+ homepage = "http://search.cpan.org/~ribasushi/namespace-clean-0.27/lib/namespace/clean.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RI/RIBASUSHI/namespace-clean-0.27.tar.gz"
+
+ version('0.27', 'cba97f39ef7e594bd8489b4fdcddb662')
+
+ depends_on('perl-b-hooks-endofscope', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py b/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py
new file mode 100644
index 0000000000..89e1690fdd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-package-deprecationmanager/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlPackageDeprecationmanager(PerlPackage):
+ """Manage deprecation warnings for your distribution"""
+
+ homepage = "http://search.cpan.org/~drolsky/Package-DeprecationManager-0.17/lib/Package/DeprecationManager.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Package-DeprecationManager-0.17.tar.gz"
+
+ version('0.17', '7b46e92aaae3047ede3c67c1714ab88e')
diff --git a/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py b/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py
new file mode 100644
index 0000000000..7d627ffb65
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-package-stash-xs/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlPackageStashXs(PerlPackage):
+ """Faster and more correct implementation of the Package::Stash API"""
+
+ homepage = "http://search.cpan.org/~doy/Package-Stash-XS-0.28/lib/Package/Stash/XS.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-XS-0.28.tar.gz"
+
+ version('0.28', '9664356ec3be02626cbd3081ec246b70')
diff --git a/var/spack/repos/builtin/packages/perl-package-stash/package.py b/var/spack/repos/builtin/packages/perl-package-stash/package.py
new file mode 100644
index 0000000000..abc8a5ccfe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-package-stash/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlPackageStash(PerlPackage):
+ """Routines for manipulating stashes"""
+
+ homepage = "http://search.cpan.org/~doy/Package-Stash-0.37/lib/Package/Stash.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-0.37.tar.gz"
+
+ version('0.37', '7e47a8261312e1cf3d12bd2007916b66')
+
+ depends_on('perl-test-requires', type=('build', 'run'))
+ depends_on('perl-test-fatal', type=('build', 'run'))
+ depends_on('perl-module-implementation', type=('build', 'run'))
+ depends_on('perl-dist-checkconflicts', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-padwalker/package.py b/var/spack/repos/builtin/packages/perl-padwalker/package.py
new file mode 100644
index 0000000000..0ffef9cf18
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-padwalker/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlPadwalker(PerlPackage):
+ """play with other peoples' lexical variables"""
+
+ homepage = "http://search.cpan.org/~robin/PadWalker-2.2/PadWalker.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RO/ROBIN/PadWalker-2.2.tar.gz"
+
+ version('2.2', '6bcc741f77b1831a893b2a22c785e31a')
diff --git a/var/spack/repos/builtin/packages/perl-params-util/package.py b/var/spack/repos/builtin/packages/perl-params-util/package.py
new file mode 100644
index 0000000000..834601512b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-params-util/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlParamsUtil(PerlPackage):
+ """Simple, compact and correct param-checking functions"""
+
+ homepage = "http://search.cpan.org/~adamk/Params-Util-1.07/lib/Params/Util.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/Params-Util-1.07.tar.gz"
+
+ version('1.07', '02db120c0eef87aae1830cc62bdec37b')
diff --git a/var/spack/repos/builtin/packages/perl-pdf-api2/package.py b/var/spack/repos/builtin/packages/perl-pdf-api2/package.py
new file mode 100644
index 0000000000..216971529c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-pdf-api2/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlPdfApi2(PerlPackage):
+ """Facilitates the creation and modification of PDF files"""
+
+ homepage = "http://search.cpan.org/~ssimms/PDF-API2-2.033/lib/PDF/API2.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/S/SS/SSIMMS/PDF-API2-2.033.tar.gz"
+
+ version('2.033', '4223a38add42741f996bd67d5f2f8e5b')
+
+ depends_on('perl-test-exception', type=('build', 'run'))
+ depends_on('perl-test-memory-cycle', type=('build', 'run'))
+ depends_on('perl-font-ttf', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-star-fusion/package.py b/var/spack/repos/builtin/packages/perl-star-fusion/package.py
new file mode 100644
index 0000000000..5985bd7fd3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-star-fusion/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from glob import glob
+
+
+class PerlStarFusion(Package):
+ """STAR-Fusion is a component of the Trinity Cancer Transcriptome Analysis
+ Toolkit (CTAT). STAR-Fusion uses the STAR aligner to identify candidate
+ fusion transcripts supported by Illumina reads. STAR-Fusion further
+ processes the output generated by the STAR aligner to map junction reads
+ and spanning reads to a reference annotation set."""
+
+ homepage = "https://github.com/STAR-Fusion/STAR-Fusion"
+ url = "https://github.com/STAR-Fusion/STAR-Fusion.git"
+
+ version('master', git='https://github.com/STAR-Fusion/STAR-Fusion.git', commit='a16a0a8')
+
+ extends('perl')
+
+ depends_on('star', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+ depends_on('perl-intervaltree', type=('build', 'run'))
+ depends_on('perl-dbi', type=('build', 'run'))
+ depends_on('perl-dbfile', type=('build', 'run'))
+ depends_on('perl-uri-escape', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('STAR-Fusion', prefix.bin)
+ mkdirp(perl_lib_dir)
+ with working_dir('PerlLib'):
+ for pm in glob("*.pm"):
+ install(pm, perl_lib_dir)
+ with working_dir('util'):
+ for files in glob("*"):
+ install(files, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py b/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py
new file mode 100644
index 0000000000..a6642fce2c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-exporter-progressive/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubExporterProgressive(PerlPackage):
+ """Progressive Sub::Exporter"""
+
+ homepage = "http://search.cpan.org/~frew/Sub-Exporter-Progressive-0.001013/lib/Sub/Exporter/Progressive.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001013.tar.gz"
+
+ version('0.001013', '72cf6acdd2a0a8b105821a4db98e4ebe')
diff --git a/var/spack/repos/builtin/packages/perl-sub-exporter/package.py b/var/spack/repos/builtin/packages/perl-sub-exporter/package.py
new file mode 100644
index 0000000000..0b13cb870e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-exporter/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubExporter(PerlPackage):
+ """A sophisticated exporter for custom-built routines"""
+
+ homepage = "http://search.cpan.org/~rjbs/Sub-Exporter-0.987/lib/Sub/Exporter.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Exporter-0.987.tar.gz"
+
+ version('0.987', '5332d269a7ba387773fcd140b72a0ed2')
+
+ depends_on('perl-params-util', type=('build', 'run'))
+ depends_on('perl-data-optlist', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-sub-identify/package.py b/var/spack/repos/builtin/packages/perl-sub-identify/package.py
new file mode 100644
index 0000000000..e173ebfeae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-identify/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubIdentify(PerlPackage):
+ """Retrieve names of code references"""
+
+ homepage = "http://search.cpan.org/~rgarcia/Sub-Identify-0.14/lib/Sub/Identify.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RG/RGARCIA/Sub-Identify-0.14.tar.gz"
+
+ version('0.14', '014f19e72698b6a2cbcb54adc9691825')
diff --git a/var/spack/repos/builtin/packages/perl-sub-install/package.py b/var/spack/repos/builtin/packages/perl-sub-install/package.py
new file mode 100644
index 0000000000..8354eb5be7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-install/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubInstall(PerlPackage):
+ """Install subroutines into packages easily"""
+
+ homepage = "http://search.cpan.org/~rjbs/Sub-Install-0.928/lib/Sub/Install.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Install-0.928.tar.gz"
+
+ version('0.928', 'e1ce4f9cb6b2f6b8778b036c31afa5ab')
diff --git a/var/spack/repos/builtin/packages/perl-sub-name/package.py b/var/spack/repos/builtin/packages/perl-sub-name/package.py
new file mode 100644
index 0000000000..74df14dbd1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-name/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubName(PerlPackage):
+ """Name or rename a sub"""
+
+ homepage = "http://search.cpan.org/~ether/Sub-Name-0.21/lib/Sub/Name.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Sub-Name-0.21.tar.gz"
+
+ version('0.21', '7e7a181e30b3249d0b81585f55e36621')
diff --git a/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py b/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py
new file mode 100644
index 0000000000..049c844e1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-sub-uplevel/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlSubUplevel(PerlPackage):
+ """apparently run a function in a higher stack frame"""
+
+ homepage = "http://search.cpan.org/~dagolden/Sub-Uplevel-0.2800/lib/Sub/Uplevel.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-0.2800.tar.gz"
+
+ version('0.2800', '6c6a174861fd160e8d5871a86df00baf')
diff --git a/var/spack/repos/builtin/packages/perl-term-readkey/package.py b/var/spack/repos/builtin/packages/perl-term-readkey/package.py
new file mode 100644
index 0000000000..b25e34c04d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-term-readkey/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTermReadkey(PerlPackage):
+ """Term::ReadKey is a compiled perl module dedicated to providing simple
+ control over terminal driver modes (cbreak, raw, cooked, etc.,) support
+ for non-blocking reads, if the architecture allows, and some generalized
+ handy functions for working with terminals. One of the main goals is to
+ have the functions as portable as possible, so you can just plug in
+ "use Term::ReadKey" on any architecture and have a good likelihood of it
+ working."""
+
+ homepage = "http://search.cpan.org/perldoc/Term::ReadKey"
+ url = "http://www.cpan.org/authors/id/J/JS/JSTOWE/TermReadKey-2.37.tar.gz"
+
+ version('2.37', 'e8ea15c16333ac4f8d146d702e83cc0c')
diff --git a/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py b/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py
new file mode 100644
index 0000000000..86e8bfae4a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-cleannamespaces/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestCleannamespaces(PerlPackage):
+ """This module lets you check your module's namespaces for imported
+ functions you might have forgotten to remove"""
+
+ homepage = "http://search.cpan.org/~ether/Test-CleanNamespaces-0.22/lib/Test/CleanNamespaces.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Test-CleanNamespaces-0.22.tar.gz"
+
+ version('0.22', '8c48bb0427f2077edce57c50491468ec')
+
+ depends_on('perl-sub-exporter', type=('build', 'run'))
+ depends_on('perl-module-runtime', type=('build', 'run'))
+ depends_on('perl-test-needs', type=('build', 'run'))
+ depends_on('perl-test-deep', type=('build', 'run'))
+ depends_on('perl-test-warnings', type=('build', 'run'))
+ depends_on('perl-file-pushd', type=('build', 'run'))
+ depends_on('perl-package-stash', type=('build', 'run'))
+ depends_on('perl-sub-identify', type=('build', 'run'))
+ depends_on('perl-namespace-clean', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-deep/package.py b/var/spack/repos/builtin/packages/perl-test-deep/package.py
new file mode 100644
index 0000000000..d1a6d248f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-deep/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestDeep(PerlPackage):
+ """Extremely flexible deep comparison"""
+
+ homepage = "http://search.cpan.org/~rjbs/Test-Deep-1.127/lib/Test/Deep.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Test-Deep-1.127.tar.gz"
+
+ version('1.127', 'eeafe5795ba20ba051a1423f4fa86dd6')
diff --git a/var/spack/repos/builtin/packages/perl-test-differences/package.py b/var/spack/repos/builtin/packages/perl-test-differences/package.py
new file mode 100644
index 0000000000..b37442fc28
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-differences/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestDifferences(PerlPackage):
+ """Test strings and data structures and show differences if not ok"""
+
+ homepage = "http://search.cpan.org/~dcantrell/Test-Differences-0.64/lib/Test/Differences.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/D/DC/DCANTRELL/Test-Differences-0.64.tar.gz"
+
+ version('0.64', 'ecfda620fe133e36a6e392d94ab8424d')
+
+ depends_on('perl-module-build', type='build')
+ depends_on('perl-capture-tiny', type=('build', 'run'))
+ depends_on('perl-text-diff', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-exception/package.py b/var/spack/repos/builtin/packages/perl-test-exception/package.py
new file mode 100644
index 0000000000..32b902221e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-exception/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestException(PerlPackage):
+ """Test exception-based code"""
+
+ homepage = "http://search.cpan.org/~exodist/Test-Exception-0.43/lib/Test/Exception.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/E/EX/EXODIST/Test-Exception-0.43.tar.gz"
+
+ version('0.43', '572d355026fb0b87fc2b8c64b83cada0')
+
+ depends_on('perl-sub-uplevel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-fatal/package.py b/var/spack/repos/builtin/packages/perl-test-fatal/package.py
new file mode 100644
index 0000000000..314fee9df6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-fatal/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestFatal(PerlPackage):
+ """Incredibly simple helpers for testing code with exceptions"""
+
+ homepage = "http://search.cpan.org/~rjbs/Test-Fatal-0.014/lib/Test/Fatal.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Test-Fatal-0.014.tar.gz"
+
+ version('0.014', '7954f6d2e3607be10c0fbd69063a3d1b')
+
+ depends_on('perl-try-tiny', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py b/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py
new file mode 100644
index 0000000000..b9132952b2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-memory-cycle/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestMemoryCycle(PerlPackage):
+ """Check for memory leaks and circular memory references"""
+
+ homepage = "http://search.cpan.org/~petdance/Test-Memory-Cycle-1.06/Cycle.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/P/PE/PETDANCE/Test-Memory-Cycle-1.06.tar.gz"
+
+ version('1.06', '397e709ba33d3883b5fb2bc49e3a70b0')
+
+ depends_on('perl-padwalker', type=('build', 'run'))
+ depends_on('perl-devel-cycle', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-most/package.py b/var/spack/repos/builtin/packages/perl-test-most/package.py
new file mode 100644
index 0000000000..a6a3650c42
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-most/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestMost(PerlPackage):
+ """Most commonly needed test functions and features."""
+
+ homepage = "http://search.cpan.org/~ovid/Test-Most-0.35/lib/Test/Most.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/O/OV/OVID/Test-Most-0.35.tar.gz"
+
+ version('0.35', '03dbabd34d6f40af8bd47f5fbb0c6989')
+
+ depends_on('perl-exception-class', type=('build', 'run'))
+ depends_on('perl-test-differences', type=('build', 'run'))
+ depends_on('perl-test-exception', type=('build', 'run'))
+ depends_on('perl-test-warn', type=('build', 'run'))
+ depends_on('perl-test-deep', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-test-needs/package.py b/var/spack/repos/builtin/packages/perl-test-needs/package.py
new file mode 100644
index 0000000000..9006067309
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-needs/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestNeeds(PerlPackage):
+ """Skip tests when modules not available."""
+
+ homepage = "http://search.cpan.org/~haarg/Test-Needs-0.002005/lib/Test/Needs.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/Test-Needs-0.002005.tar.gz"
+
+ version('0.002005', '356634a56c99282e8059f290f5d534c8')
diff --git a/var/spack/repos/builtin/packages/perl-test-requires/package.py b/var/spack/repos/builtin/packages/perl-test-requires/package.py
new file mode 100644
index 0000000000..79bfb211a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-requires/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestRequires(PerlPackage):
+ """Checks to see if the module can be loaded."""
+
+ homepage = "http://search.cpan.org/~tokuhirom/Test-Requires-0.10/lib/Test/Requires.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/T/TO/TOKUHIROM/Test-Requires-0.10.tar.gz"
+
+ version('0.10', '0d5da779609d0c8fa6f796b45ff8c6f3')
diff --git a/var/spack/repos/builtin/packages/perl-test-warn/package.py b/var/spack/repos/builtin/packages/perl-test-warn/package.py
new file mode 100644
index 0000000000..e1e9a873a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-warn/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestWarn(PerlPackage):
+ """Perl extension to test methods for warnings"""
+
+ homepage = "http://search.cpan.org/~chorny/Test-Warn-0.30/Warn.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/C/CH/CHORNY/Test-Warn-0.30.tar.gz"
+
+ version('0.30', '8306b998a96d2cc69266b5248d550472')
diff --git a/var/spack/repos/builtin/packages/perl-test-warnings/package.py b/var/spack/repos/builtin/packages/perl-test-warnings/package.py
new file mode 100644
index 0000000000..dc3640fe33
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-test-warnings/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTestWarnings(PerlPackage):
+ """Test for warnings and the lack of them"""
+
+ homepage = "http://deps.cpantesters.org/?module=Test%3A%3ACleanNamespaces;perl=latest"
+ url = "http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Test-Warnings-0.026.tar.gz"
+
+ version('0.026', '1a379f7eac4c89155d98e652459593a7')
diff --git a/var/spack/repos/builtin/packages/perl-text-diff/package.py b/var/spack/repos/builtin/packages/perl-text-diff/package.py
new file mode 100644
index 0000000000..4c61b3cbb1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-text-diff/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlTextDiff(PerlPackage):
+ """Provides a basic set of services akin to the GNU diff utility."""
+
+ homepage = "http://search.cpan.org/~neilb/Text-Diff-1.45/lib/Text/Diff.pm"
+ url = "http://search.cpan.org/CPAN/authors/id/N/NE/NEILB/Text-Diff-1.45.tar.gz"
+
+ version('1.45', 'edf57b6189f7651a6be454062a4e6d9c')
+
+ depends_on('perl-algorithm-diff', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/perl-uri-escape/package.py b/var/spack/repos/builtin/packages/perl-uri-escape/package.py
new file mode 100644
index 0000000000..29f96003e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-uri-escape/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PerlUriEscape(PerlPackage):
+ """This module provides functions to percent-encode and percent-decode URI
+ strings as defined by RFC 3986. Percent-encoding URI's is informally called
+ "URI escaping". This is the terminology used by this module, which predates
+ the formalization of the terms by the RFC by several years."""
+
+ homepage = "https://metacpan.org/pod/URI::Escape"
+ url = "https://cpan.metacpan.org/authors/id/E/ET/ETHER/URI-1.71.tar.gz"
+
+ version('1.71', '247c3da29a794f72730e01aa5a715daf')
+
+ depends_on('perl-extutils-makemaker', type='build')
diff --git a/var/spack/repos/builtin/packages/perl-xml-parser/package.py b/var/spack/repos/builtin/packages/perl-xml-parser/package.py
new file mode 100644
index 0000000000..baa337319d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl-xml-parser/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PerlXmlParser(PerlPackage):
+ """XML::Parser - A perl module for parsing XML documents"""
+
+ homepage = "http://search.cpan.org/perldoc/XML::Parser"
+ url = "http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/XML-Parser-2.44.tar.gz"
+
+ version('2.44', 'af4813fe3952362451201ced6fbce379')
+
+ depends_on('expat')
+
+ def configure_args(self):
+ args = []
+
+ p = self.spec['expat'].prefix.lib
+ args.append('EXPATLIBPATH={0}'.format(p))
+ p = self.spec['expat'].prefix.include
+ args.append('EXPATINCPATH={0}'.format(p))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/perl/package.py b/var/spack/repos/builtin/packages/perl/package.py
index d71a7492ba..fbf788d106 100644
--- a/var/spack/repos/builtin/packages/perl/package.py
+++ b/var/spack/repos/builtin/packages/perl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,26 +23,53 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
#
+# Author: Milton Woods <milton.woods@bom.gov.au>
+# Date: March 22, 2017
# Author: George Hartzell <hartzell@alerce.com>
# Date: July 21, 2016
# Author: Justin Too <justin@doubleotoo.com>
# Date: September 6, 2015
#
from spack import *
+import os
+from contextlib import contextmanager
+import spack
+from llnl.util.lang import match_predicate
-class Perl(Package):
+class Perl(Package): # Perl doesn't use Autotools, it should subclass Package
"""Perl 5 is a highly capable, feature-rich programming language with over
27 years of development."""
+
homepage = "http://www.perl.org"
- url = "http://www.cpan.org/src/5.0/perl-5.22.2.tar.gz"
+ # URL must remain http:// so Spack can bootstrap curl
+ url = "http://www.cpan.org/src/5.0/perl-5.24.1.tar.gz"
+
+ # Development releases
+ version('5.25.11', '37a398682c36cd85992b34b5c1c25dc1')
+
+ # Maintenance releases (recommended)
+ version('5.24.1', '765ef511b5b87a164e2531403ee16b3c', preferred=True)
+ version('5.22.3', 'aa4f236dc2fc6f88b871436b8d0fda95')
- version('5.24.0', 'c5bf7f3285439a2d3b6a488e14503701')
+ # Misc releases that people need
version('5.22.2', '5767e2a10dd62a46d7b57f74a90d952b')
+ version('5.22.1', '19295bbb775a3c36123161b9bf4892f1')
+ version('5.22.0', 'e32cb6a8dda0084f2a43dac76318d68d')
+
+ # End of life releases
version('5.20.3', 'd647d0ea5a7a8194c34759ab9f2610cd')
- # 5.18.4 fails with gcc-5
- # https://rt.perl.org/Public/Bug/Display.html?id=123784
- # version('5.18.4' , '1f9334ff730adc05acd3dd7130d295db')
+ version('5.18.4', '1f9334ff730adc05acd3dd7130d295db')
+ version('5.16.3', 'eb5c40f2575df6c155bc99e3fe0a9d82')
+
+ extendable = True
+
+ depends_on('gdbm')
+
+ # there has been a long fixed issue with 5.22.0 with regard to the ccflags
+ # definition. It is well documented here:
+ # https://rt.perl.org/Public/Bug/Display.html?id=126468
+ patch('protect-quotes-in-ccflags.patch', when='@5.22.0')
# Installing cpanm alongside the core makes it safe and simple for
# people/projects to install their own sets of perl modules. Not
@@ -51,6 +78,9 @@ class Perl(Package):
variant('cpanm', default=True,
description='Optionally install cpanm with the core packages.')
+ variant('shared', default=True,
+ description='Build a shared libperl.so library')
+
resource(
name="cpanm",
url="http://search.cpan.org/CPAN/authors/id/M/MI/MIYAGAWA/App-cpanminus-1.7042.tar.gz",
@@ -59,17 +89,191 @@ class Perl(Package):
placement="cpanm"
)
- def install(self, spec, prefix):
+ phases = ['configure', 'build', 'install']
+
+ def configure_args(self):
+ spec = self.spec
+ prefix = self.prefix
+
+ config_args = [
+ '-des',
+ '-Dprefix={0}'.format(prefix),
+ '-Dlocincpth=' + self.spec['gdbm'].prefix.include,
+ '-Dloclibpth=' + self.spec['gdbm'].prefix.lib,
+ ]
+
+ # Extensions are installed into their private tree via
+ # `INSTALL_BASE`/`--install_base` (see [1]) which results in a
+ # "predictable" installation tree that sadly does not match the
+ # Perl core's @INC structure. This means that when activation
+ # merges the extension into the extendee[2], the directory tree
+ # containing the extensions is not on @INC and the extensions can
+ # not be found.
+ #
+ # This bit prepends @INC with the directory that is used when
+ # extensions are activated [3].
+ #
+ # [1] https://metacpan.org/pod/ExtUtils::MakeMaker#INSTALL_BASE
+ # [2] via the activate method in the PackageBase class
+ # [3] https://metacpan.org/pod/distribution/perl/INSTALL#APPLLIB_EXP
+ config_args.append('-Accflags=-DAPPLLIB_EXP=\\"' +
+ self.prefix.lib.perl5 + '\\"')
+
+ # Discussion of -fPIC for Intel at:
+ # https://github.com/spack/spack/pull/3081 and
+ # https://github.com/spack/spack/pull/4416
+ if spec.satisfies('%intel'):
+ config_args.append('-Accflags={0}'.format(self.compiler.pic_flag))
+
+ if '+shared' in spec:
+ config_args.append('-Duseshrplib')
+
+ return config_args
+
+ def configure(self, spec, prefix):
configure = Executable('./Configure')
- configure("-des", "-Dprefix=" + prefix)
+ configure(*self.configure_args())
+
+ def build(self, spec, prefix):
make()
- if self.run_tests:
- make("test")
- make("install")
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def test(self):
+ make('test')
+
+ def install(self, spec, prefix):
+ make('install')
+
+ @run_after('install')
+ def install_cpanm(self):
+ spec = self.spec
if '+cpanm' in spec:
with working_dir(join_path('cpanm', 'cpanm')):
- perl = Executable(join_path(prefix.bin, 'perl'))
+ perl = spec['perl'].command
perl('Makefile.PL')
make()
make('install')
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Set PATH and PERL5LIB to include the extension and
+ any other perl extensions it depends on,
+ assuming they were installed with INSTALL_BASE defined."""
+ perl_lib_dirs = []
+ perl_bin_dirs = []
+ for d in dependent_spec.traverse(
+ deptype=('build', 'run'), deptype_query='run'):
+ if d.package.extends(self.spec):
+ perl_lib_dirs.append(d.prefix.lib.perl5)
+ perl_bin_dirs.append(d.prefix.bin)
+ if perl_bin_dirs:
+ perl_bin_path = ':'.join(perl_bin_dirs)
+ spack_env.prepend_path('PATH', perl_bin_path)
+ run_env.prepend_path('PATH', perl_bin_path)
+ if perl_lib_dirs:
+ perl_lib_path = ':'.join(perl_lib_dirs)
+ spack_env.prepend_path('PERL5LIB', perl_lib_path)
+ run_env.prepend_path('PERL5LIB', perl_lib_path)
+
+ def setup_dependent_package(self, module, dependent_spec):
+ """Called before perl modules' install() methods.
+ In most cases, extensions will only need to have one line:
+ perl('Makefile.PL','INSTALL_BASE=%s' % self.prefix)
+ """
+
+ # perl extension builds can have a global perl executable function
+ module.perl = self.spec['perl'].command
+
+ # Add variables for library directory
+ module.perl_lib_dir = dependent_spec.prefix.lib.perl5
+
+ # Make the site packages directory for extensions,
+ # if it does not exist already.
+ if dependent_spec.package.is_extension:
+ mkdirp(module.perl_lib_dir)
+
+ @run_after('install')
+ def filter_config_dot_pm(self):
+ """Run after install so that Config.pm records the compiler that Spack
+ built the package with. If this isn't done, $Config{cc} will
+ be set to Spack's cc wrapper script. These files are read-only, which
+ frustrates filter_file on some filesystems (NFSv4), so make them
+ temporarily writable.
+ """
+
+ kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
+
+ # Find the actual path to the installed Config.pm file.
+ perl = self.spec['perl'].command
+ config_dot_pm = perl('-MModule::Loaded', '-MConfig', '-e',
+ 'print is_loaded(Config)', output=str)
+
+ with self.make_briefly_writable(config_dot_pm):
+ match = 'cc *=>.*'
+ substitute = "cc => '{cc}',".format(cc=self.compiler.cc)
+ filter_file(match, substitute, config_dot_pm, **kwargs)
+
+ # And the path Config_heavy.pl
+ d = os.path.dirname(config_dot_pm)
+ config_heavy = join_path(d, 'Config_heavy.pl')
+
+ with self.make_briefly_writable(config_heavy):
+ match = '^cc=.*'
+ substitute = "cc='{cc}'".format(cc=self.compiler.cc)
+ filter_file(match, substitute, config_heavy, **kwargs)
+
+ match = '^ld=.*'
+ substitute = "ld='{ld}'".format(ld=self.compiler.cc)
+ filter_file(match, substitute, config_heavy, **kwargs)
+
+ @contextmanager
+ def make_briefly_writable(self, path):
+ """Temporarily make a file writable, then reset"""
+ perm = os.stat(path).st_mode
+ os.chmod(path, perm | 0o200)
+ yield
+ os.chmod(path, perm)
+
+ # ========================================================================
+ # Handle specifics of activating and deactivating perl modules.
+ # ========================================================================
+
+ def perl_ignore(self, ext_pkg, args):
+ """Add some ignore files to activate/deactivate args."""
+ ignore_arg = args.get('ignore', lambda f: False)
+
+ # Many perl packages describe themselves in a perllocal.pod file,
+ # so the files conflict when multiple packages are activated.
+ # We could merge the perllocal.pod files in activated packages,
+ # but this is unnecessary for correct operation of perl.
+ # For simplicity, we simply ignore all perllocal.pod files:
+ patterns = [r'perllocal\.pod$']
+
+ return match_predicate(ignore_arg, patterns)
+
+ def activate(self, ext_pkg, **args):
+ ignore = self.perl_ignore(ext_pkg, args)
+ args.update(ignore=ignore)
+
+ super(Perl, self).activate(ext_pkg, **args)
+
+ extensions_layout = args.get("extensions_layout",
+ spack.store.extensions)
+
+ exts = extensions_layout.extension_map(self.spec)
+ exts[ext_pkg.name] = ext_pkg.spec
+
+ def deactivate(self, ext_pkg, **args):
+ ignore = self.perl_ignore(ext_pkg, args)
+ args.update(ignore=ignore)
+
+ super(Perl, self).deactivate(ext_pkg, **args)
+
+ extensions_layout = args.get("extensions_layout",
+ spack.store.extensions)
+
+ exts = extensions_layout.extension_map(self.spec)
+ # Make deactivate idempotent
+ if ext_pkg.name in exts:
+ del exts[ext_pkg.name]
diff --git a/var/spack/repos/builtin/packages/perl/protect-quotes-in-ccflags.patch b/var/spack/repos/builtin/packages/perl/protect-quotes-in-ccflags.patch
new file mode 100644
index 0000000000..f3500d52f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/perl/protect-quotes-in-ccflags.patch
@@ -0,0 +1,36 @@
+From 111bd177427ec912ef9d64a6d055ca5e9abc359d Mon Sep 17 00:00:00 2001
+From: Jarkko Hietaniemi <jhi@iki.fi>
+Date: Wed, 28 Oct 2015 07:56:23 -0400
+Subject: [PATCH] For perl #126468: protect quotes in ccflags.
+
+---
+ cflags.SH | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/cflags.SH b/cflags.SH
+index f3e44ad..33c6c93 100755
+--- a/cflags.SH
++++ b/cflags.SH
+@@ -387,6 +387,9 @@ echo "cflags.SH: warn = $warn"
+ # Code to set any extra flags here.
+ extra=''
+
++# Protect double or single quotes.
++myccflags=`echo $ccflags | sed -e 's/"/\\\"/g' -e "s/'/\\\'/g"`
++
+ echo "Extracting cflags (with variable substitutions)"
+ # This section of the file will have variable substitutions done on it.
+ # Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!.
+@@ -401,7 +404,8 @@ $startsh
+ # This file is generated by cflags.SH
+
+ # Used to restore possible edits by cflags.SH.
+-myccflags="$ccflags"
++myccflags="$myccflags"
++
+ # Extra warnings, used e.g. for gcc.
+ warn="$warn"
+ # Extra standardness.
+--
+2.6.0
+
diff --git a/var/spack/repos/builtin/packages/petsc/macos-clang-8.1.0.diff b/var/spack/repos/builtin/packages/petsc/macos-clang-8.1.0.diff
new file mode 100644
index 0000000000..b4384d3ac3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/petsc/macos-clang-8.1.0.diff
@@ -0,0 +1,18 @@
+diff --git a/config/BuildSystem/config/libraries.py b/config/BuildSystem/config/libraries.py
+index 0af92f0..8644b55 100644
+--- a/config/BuildSystem/config/libraries.py
++++ b/config/BuildSystem/config/libraries.py
+@@ -50,12 +50,7 @@ class Configure(config.base.Configure):
+ flagName = self.language[-1]+'SharedLinkerFlag'
+ flagSubst = self.language[-1].upper()+'_LINKER_SLFLAG'
+ dirname = os.path.dirname(library).replace('\\ ',' ').replace(' ', '\\ ').replace('\\(','(').replace('(', '\\(').replace('\\)',')').replace(')', '\\)')
+- if hasattr(self.setCompilers, flagName) and not getattr(self.setCompilers, flagName) is None:
+- return [getattr(self.setCompilers, flagName)+dirname,'-L'+dirname,'-l'+name]
+- if flagSubst in self.argDB:
+- return [self.argDB[flagSubst]+dirname,'-L'+dirname,'-l'+name]
+- else:
+- return ['-L'+dirname,' -l'+name]
++ return ['-L'+dirname,' -l'+name]
+ else:
+ return ['-l'+name]
+ if os.path.splitext(library)[1] == '.so':
diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py
index a9d4ff6065..838369f4e4 100644
--- a/var/spack/repos/builtin/packages/petsc/package.py
+++ b/var/spack/repos/builtin/packages/petsc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,10 +37,16 @@ class Petsc(Package):
homepage = "http://www.mcs.anl.gov/petsc/index.html"
url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.5.3.tar.gz"
+ maintainers = ['balay', 'barrysmith']
+
version('develop', git='https://bitbucket.org/petsc/petsc.git', tag='master')
- version('for-pflotran-0.1.0', git='https://bitbucket.org/petsc/petsc.git',
- commit='7943f4e1472fff9cf1fc630a1100136616e4970f')
+ version('xsdk-0.2.0', git='https://bitbucket.org/petsc/petsc.git', tag='xsdk-0.2.0')
+ version('3.8.2', '00666e1c4cbfa8dd6eebf91ff8180f79')
+ version('3.8.1', '3ed75c1147800fc156fe1f1e515a68a7')
+ version('3.8.0', '02680f1f78a0d4c5a9de80a366793eb8')
+ version('3.7.7', 'c2cfb76677d32839810c4cf51a2f9cf5')
+ version('3.7.6', '977aa84b85aa3146c695592cd0a11057')
version('3.7.5', 'f00f6e6a3bac39052350dd47194b58a3')
version('3.7.4', 'aaf94fa54ef83022c14091f10866eedf')
version('3.7.2', '50da49867ce7a49e7a0c1b37f4ec7b34')
@@ -66,14 +72,28 @@ class Petsc(Package):
variant('boost', default=True, description='Activates support for Boost')
variant('hypre', default=True,
description='Activates support for Hypre (only parallel)')
- variant('mumps', default=True,
+ # Mumps is disabled by default, because it depends on Scalapack
+ # which is not portable to all HPC systems
+ variant('mumps', default=False,
description='Activates support for MUMPS (only parallel'
' and 32bit indices)')
variant('superlu-dist', default=True,
description='Activates support for SuperluDist (only parallel)')
+ variant('trilinos', default=False,
+ description='Activates support for Trilinos (only parallel)')
variant('int64', default=False,
description='Compile with 64bit indices')
+ # 3.8.0 has a build issue with MKL - so list this conflict explicitly
+ conflicts('^intel-mkl', when='@3.8.0')
+
+ # temporary workaround Clang 8.1.0 with XCode 8.3 on macOS, see
+ # https://bitbucket.org/petsc/petsc/commits/4f290403fdd060d09d5cb07345cbfd52670e3cbc
+ # the patch is an adaptation of the original commit to 3.7.5
+ if sys.platform == "darwin":
+ patch('macos-clang-8.1.0.diff',
+ when='@3.7.5%clang@8.1.0:')
+
# Virtual dependencies
# Git repository needs sowing to build Fortran interface
depends_on('sowing', when='@develop')
@@ -85,29 +105,43 @@ class Petsc(Package):
depends_on('mpi', when='+mpi')
# Build dependencies
- depends_on('python @2.6:2.7', type='build')
+ depends_on('python@2.6:2.8', type='build')
# Other dependencies
depends_on('boost', when='@:3.5+boost')
- depends_on('metis@5:~int64', when='+metis~int64')
- depends_on('metis@5:+int64', when='+metis+int64')
+ depends_on('metis@5:~int64+real64', when='+metis~int64+double')
+ depends_on('metis@5:+int64', when='+metis+int64~double')
+ depends_on('metis@5:~int64+real64', when='+metis~int64+double')
+ depends_on('metis@5:+int64', when='+metis+int64~double')
- depends_on('hdf5+mpi', when='+hdf5+mpi')
+ depends_on('hdf5+mpi+hl', when='+hdf5+mpi')
+ depends_on('zlib', when='+hdf5')
depends_on('parmetis', when='+metis+mpi')
# Hypre does not support complex numbers.
# Also PETSc prefer to build it without internal superlu, likely due to
# conflict in headers see
# https://bitbucket.org/petsc/petsc/src/90564b43f6b05485163c147b464b5d6d28cde3ef/config/BuildSystem/config/packages/hypre.py
depends_on('hypre~internal-superlu~int64', when='+hypre+mpi~complex~int64')
+ depends_on('hypre@xsdk-0.2.0~internal-superlu+int64', when='@xsdk-0.2.0+hypre+mpi~complex+int64')
+ depends_on('hypre@xsdk-0.2.0~internal-superlu~int64', when='@xsdk-0.2.0+hypre+mpi~complex~int64')
+ depends_on('hypre@develop~internal-superlu+int64', when='@develop+hypre+mpi~complex+int64')
+ depends_on('hypre@develop~internal-superlu~int64', when='@develop+hypre+mpi~complex~int64')
depends_on('hypre~internal-superlu+int64', when='+hypre+mpi~complex+int64')
depends_on('superlu-dist@:4.3~int64', when='@3.4.4:3.6.4+superlu-dist+mpi~int64')
depends_on('superlu-dist@:4.3+int64', when='@3.4.4:3.6.4+superlu-dist+mpi+int64')
- depends_on('superlu-dist@5.0.0:~int64', when='@3.7:+superlu-dist+mpi~int64')
- depends_on('superlu-dist@5.0.0:+int64', when='@3.7:+superlu-dist+mpi+int64')
- depends_on('superlu-dist@5.0.0:~int64', when='@for-pflotran-0.1.0+superlu-dist+mpi~int64')
- depends_on('superlu-dist@5.0.0:+int64', when='@for-pflotran-0.1.0+superlu-dist+mpi+int64')
+ depends_on('superlu-dist@5.0.0:~int64', when='@3.7:3.7.99+superlu-dist+mpi~int64')
+ depends_on('superlu-dist@5.0.0:+int64', when='@3.7:3.7.99+superlu-dist+mpi+int64')
+ depends_on('superlu-dist@5.2:5.2.99~int64', when='@3.8:3.8.99+superlu-dist+mpi~int64')
+ depends_on('superlu-dist@5.2:5.2.99+int64', when='@3.8:3.8.99+superlu-dist+mpi+int64')
+ depends_on('superlu-dist@xsdk-0.2.0~int64', when='@xsdk-0.2.0+superlu-dist+mpi~int64')
+ depends_on('superlu-dist@xsdk-0.2.0+int64', when='@xsdk-0.2.0+superlu-dist+mpi+int64')
+ depends_on('superlu-dist@develop~int64', when='@develop+superlu-dist+mpi~int64')
+ depends_on('superlu-dist@develop+int64', when='@develop+superlu-dist+mpi+int64')
depends_on('mumps+mpi', when='+mumps+mpi~int64')
depends_on('scalapack', when='+mumps+mpi~int64')
+ depends_on('trilinos@12.6.2:', when='@3.7.0:+trilinos+mpi')
+ depends_on('trilinos@xsdk-0.2.0', when='@xsdk-0.2.0+trilinos+mpi')
+ depends_on('trilinos@develop', when='@xdevelop+trilinos+mpi')
def mpi_dependent_options(self):
if '~mpi' in self.spec:
@@ -133,14 +167,10 @@ class Petsc(Package):
raise RuntimeError('\n'.join(errors))
else:
compiler_opts = [
- '--with-mpi=1',
- '--with-mpi-dir=%s' % self.spec['mpi'].prefix,
+ '--with-cc=%s' % self.spec['mpi'].mpicc,
+ '--with-cxx=%s' % self.spec['mpi'].mpicxx,
+ '--with-fc=%s' % self.spec['mpi'].mpifc
]
- if sys.platform != "darwin":
- compiler_opts.extend([
- '--with-cpp=cpp',
- '--with-cxxcpp=cpp',
- ])
return compiler_opts
def install(self, spec, prefix):
@@ -161,14 +191,29 @@ class Petsc(Package):
])
# Make sure we use exactly the same Blas/Lapack libraries
# across the DAG. To that end list them explicitly
- lapack_blas = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
options.extend([
'--with-blas-lapack-lib=%s' % lapack_blas.joined()
])
+ if 'trilinos' in spec:
+ options.append('--with-cxx-dialect=C++11')
+
+ # Help PETSc pick up Scalapack from MKL:
+ if 'scalapack' in spec:
+ scalapack = spec['scalapack'].libs
+ options.extend([
+ '--with-scalapack-lib=%s' % scalapack.joined(),
+ '--with-scalapack=1'
+ ])
+ else:
+ options.extend([
+ '--with-scalapack=0'
+ ])
+
# Activates library support if needed
for library in ('metis', 'boost', 'hdf5', 'hypre', 'parmetis',
- 'mumps', 'scalapack'):
+ 'mumps', 'trilinos', 'zlib'):
options.append(
'--with-{library}={value}'.format(
library=library, value=('1' if library in spec else '0'))
diff --git a/var/spack/repos/builtin/packages/pexsi/make.inc b/var/spack/repos/builtin/packages/pexsi/make.inc
index a8020fb370..ec619a7dba 100644
--- a/var/spack/repos/builtin/packages/pexsi/make.inc
+++ b/var/spack/repos/builtin/packages/pexsi/make.inc
@@ -36,7 +36,7 @@ DSUPERLU_INCLUDE = -I${DSUPERLU_DIR}/include
INCLUDES = ${PEXSI_INCLUDE} ${DSUPERLU_INCLUDE}
# Libraries
-CPP_LIB = @STDCXX_LIB @MPICXX_LIB
+CPP_LIB = @MPICXX_LIB @STDCXX_LIB
#GFORTRAN_LIB = /usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.a
LAPACK_LIB = @LAPACK_LIBS
BLAS_LIB = @BLAS_LIBS
@@ -63,7 +63,7 @@ CXXFLAGS = ${COMPILE_FLAG} ${CPPFLAG} ${PROFILE_FLAG} ${INCLUDES}
CCDEFS = ${COMPILE_DEF}
CPPDEFS = ${COMPILE_DEF}
LOADOPTS = ${PROFILE_FLAG} ${LIBS}
-FLOADOPTS = ${PROFILE_FLAG} ${LIBS} ${CPP_LIB}
+FLOADOPTS = @FLDFLAGS ${PROFILE_FLAG} ${LIBS} ${CPP_LIB}
# Generate auto-dependencies
%.d: %.c
diff --git a/var/spack/repos/builtin/packages/pexsi/package.py b/var/spack/repos/builtin/packages/pexsi/package.py
index 9fc71d4c52..63819923af 100644
--- a/var/spack/repos/builtin/packages/pexsi/package.py
+++ b/var/spack/repos/builtin/packages/pexsi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ import shutil
from spack import *
-class Pexsi(Package):
+class Pexsi(MakefilePackage):
"""The PEXSI library is written in C++, and uses message passing interface
(MPI) to parallelize the computation on distributed memory computing
systems and achieve scalability on more than 10,000 processors.
@@ -46,20 +46,29 @@ class Pexsi(Package):
homepage = 'https://math.berkeley.edu/~linlin/pexsi/index.html'
url = 'https://math.berkeley.edu/~linlin/pexsi/download/pexsi_v0.9.0.tar.gz'
+ # version('1.0', '4600b03e235935fe623acf500df0edfa')
+ version('0.10.2', '012f6800098671ec39c2ed7b38935e27')
+ version('0.9.2', '0ce491a3a922d271c4edf9b20aa93076')
version('0.9.0', '0c1a2de891ba1445dfc184b2fa270ed8')
depends_on('parmetis')
- depends_on('superlu-dist@3.3', when='@0.9.0')
+ depends_on('superlu-dist@3.3:3.999', when='@:0.9.0')
+ depends_on('superlu-dist@4.3:4.999', when='@0.9.2')
+ depends_on('superlu-dist@5.1.2:', when='@0.10.2:')
+
+ variant(
+ 'fortran', default=False, description='Builds the Fortran interface'
+ )
parallel = False
- def install(self, spec, prefix):
+ def edit(self, spec, prefix):
substitutions = {
'@MPICC': self.spec['mpi'].mpicc,
'@MPICXX': self.spec['mpi'].mpicxx,
'@MPIFC': self.spec['mpi'].mpifc,
- '@MPICXX_LIB': ' '.join(self.spec['mpi'].mpicxx_shared_libs),
+ '@MPICXX_LIB': self.spec['mpi:cxx'].libs.joined(),
'@RANLIB': 'ranlib',
'@PEXSI_STAGE': self.stage.source_path,
'@SUPERLU_PREFIX': self.spec['superlu-dist'].prefix,
@@ -67,11 +76,16 @@ class Pexsi(Package):
'@PARMETIS_PREFIX': self.spec['parmetis'].prefix,
'@LAPACK_PREFIX': self.spec['lapack'].prefix,
'@BLAS_PREFIX': self.spec['blas'].prefix,
- '@LAPACK_LIBS': self.spec['lapack'].lapack_libs.joined(),
- '@BLAS_LIBS': self.spec['lapack'].blas_libs.joined(),
- '@STDCXX_LIB': ' '.join(self.compiler.stdcxx_libs)
+ '@LAPACK_LIBS': self.spec['lapack'].libs.joined(),
+ '@BLAS_LIBS': self.spec['blas'].libs.joined(),
+ # FIXME : what to do with compiler provided libraries ?
+ '@STDCXX_LIB': ' '.join(self.compiler.stdcxx_libs),
+ '@FLDFLAGS': ''
}
+ if '@0.9.2' in self.spec:
+ substitutions['@FLDFLAGS'] = '-Wl,--allow-multiple-definition'
+
template = join_path(
os.path.dirname(inspect.getmodule(self).__file__),
'make.inc'
@@ -84,20 +98,29 @@ class Pexsi(Package):
for key, value in substitutions.items():
filter_file(key, value, makefile)
- make()
+ def build(self, spec, prefix):
+ super(Pexsi, self).build(spec, prefix)
+ if '+fortran' in self.spec:
+ make('-C', 'fortran')
+
+ def install(self, spec, prefix):
+
# 'make install' does not exist, despite what documentation says
mkdirp(self.prefix.lib)
+
install(
join_path(self.stage.source_path, 'src', 'libpexsi_linux.a'),
join_path(self.prefix.lib, 'libpexsi.a')
)
+
install_tree(
join_path(self.stage.source_path, 'include'),
self.prefix.include
)
+
# fortran "interface"
- make('-C', 'fortran')
- install_tree(
- join_path(self.stage.source_path, 'fortran'),
- join_path(self.prefix, 'fortran')
- )
+ if '+fortran' in self.spec:
+ install_tree(
+ join_path(self.stage.source_path, 'fortran'),
+ join_path(self.prefix, 'fortran')
+ )
diff --git a/var/spack/repos/builtin/packages/pfft/package.py b/var/spack/repos/builtin/packages/pfft/package.py
index 575f0af3c5..93f0222a48 100644
--- a/var/spack/repos/builtin/packages/pfft/package.py
+++ b/var/spack/repos/builtin/packages/pfft/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -39,26 +39,53 @@ class Pfft(AutotoolsPackage):
depends_on('fftw+mpi+pfft_patches')
depends_on('mpi')
- def install(self, spec, prefix):
+ def configure(self, spec, prefix):
options = ['--prefix={0}'.format(prefix)]
if not self.compiler.f77 or not self.compiler.fc:
options.append("--disable-fortran")
- configure(*options)
- make()
- if self.run_tests:
- make("check")
- make("install")
+ configure = Executable('../configure')
+
+ if '+double' in spec['fftw']:
+ with working_dir('double', create=True):
+ configure(*options)
+ if '+float' in spec['fftw']:
+ with working_dir('float', create=True):
+ configure('--enable-float', *options)
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double', create=True):
+ configure('--enable-long-double', *options)
+
+ def build(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make()
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make()
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make()
+ def check(self):
+ spec = self.spec
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("check")
if '+float' in spec['fftw']:
- configure('--enable-float', *options)
- make()
- if self.run_tests:
+ with working_dir('float'):
make("check")
- make("install")
if '+long_double' in spec['fftw']:
- configure('--enable-long-double', *options)
- make()
- if self.run_tests:
+ with working_dir('long-double'):
make("check")
- make("install")
+
+ def install(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("install")
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make("install")
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make("install")
diff --git a/var/spack/repos/builtin/packages/pflotran/package.py b/var/spack/repos/builtin/packages/pflotran/package.py
index 347f792453..e04e33a1db 100644
--- a/var/spack/repos/builtin/packages/pflotran/package.py
+++ b/var/spack/repos/builtin/packages/pflotran/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,13 +33,12 @@ class Pflotran(AutotoolsPackage):
homepage = "http://www.pflotran.org"
- version('develop', hg='https://bitbucket.org/pflotran/pflotran-xsdk')
- version('0.1.0', hg='https://bitbucket.org/pflotran/pflotran-xsdk',
- commmit='4734cf5e606b')
+ version('develop', git='https://bitbucket.org/pflotran/pflotran')
+ version('xsdk-0.2.0', git='https://bitbucket.org/pflotran/pflotran', tag='master')
depends_on('mpi')
- depends_on('hdf5@1.8.12+mpi+fortran')
- depends_on('petsc@develop+hdf5+metis',when='@develop')
- depends_on('petsc@for-pflotran-0.1.0+hdf5+metis',when='@0.1.0')
+ depends_on('hdf5@1.8.12:+mpi+fortran')
+ depends_on('petsc@develop+hdf5+metis', when='@develop')
+ depends_on('petsc@xsdk-0.2.0+hdf5+metis', when='@xsdk-0.2.0')
parallel = False
diff --git a/var/spack/repos/builtin/packages/pgdspider/package.py b/var/spack/repos/builtin/packages/pgdspider/package.py
new file mode 100644
index 0000000000..39a518113f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pgdspider/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Pgdspider(Package):
+ """"PGDSpider is a powerful automated data conversion tool for population
+ genetic and genomics programs"""
+
+ homepage = "http://www.cmpg.unibe.ch/software/PGDSpider"
+ url = "http://www.cmpg.unibe.ch/software/PGDSpider/PGDSpider_2.1.1.2.zip"
+
+ version('2.1.1.2', '170e5b4a002277ff66866486da920693')
+
+ depends_on('java', type=('build', 'run'))
+ depends_on('bcftools')
+ depends_on('bwa')
+ depends_on('samtools')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ jar_file = 'PGDSpider{0}-cli.jar'.format(self.version.up_to(1))
+ install(jar_file, prefix.bin)
+
+ script_sh = join_path(os.path.dirname(__file__), "pgdspider.sh")
+ script = prefix.bin.pgdspider
+ install(script_sh, script)
+ set_executable(script)
+
+ java = self.spec['java'].prefix.bin.java
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('pgdspider.jar', join_path(prefix.bin, jar_file),
+ script, **kwargs)
diff --git a/var/spack/repos/builtin/packages/pgdspider/pgdspider.sh b/var/spack/repos/builtin/packages/pgdspider/pgdspider.sh
new file mode 100644
index 0000000000..5ac0f66c08
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pgdspider/pgdspider.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the astral jar file
+java $JAVA_ARGS $JAVA_OPTS -jar pgdspider.jar "$@"
diff --git a/var/spack/repos/builtin/packages/pgi/package.py b/var/spack/repos/builtin/packages/pgi/package.py
index e8a2f53497..63592d6cc6 100644
--- a/var/spack/repos/builtin/packages/pgi/package.py
+++ b/var/spack/repos/builtin/packages/pgi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from spack.util.prefix import Prefix
import os
@@ -30,19 +31,20 @@ class Pgi(Package):
"""PGI optimizing multi-core x64 compilers for Linux, MacOS & Windows
with support for debugging and profiling of local MPI processes.
- Note: The PGI compilers are licensed software. You will need to create
- an account on the PGI homepage and download PGI yourself. Once the download
- finishes, rename the file (which may contain information such as the
- architecture) to the format: pgi-<version>.tar.gz. Spack will search your
- current directory for a file of this format. Alternatively, add this
+ Note: The PGI compilers are licensed software. You will need to create an
+ account on the PGI homepage and download PGI yourself. Spack will search
+ your current directory for the download tarball. Alternatively, add this
file to a mirror so that Spack can find it. For instructions on how to
set up a mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
homepage = "http://www.pgroup.com/"
- version('16.5', 'a40e8852071b5d600cb42f31631b3de1')
- version('16.3', '618cb7ddbc57d4e4ed1f21a0ab25f427')
- version('15.7', '84a689217b17cdaf78c39270c70bea5d')
+ version('17.4', 'a311d2756ddda657860bad8e5725597b')
+ version('17.3', '6eefc42f85e756cbaba76467ed640902')
+ version('16.10', '9bb6bfb7b1052f9e6a45829ba7a24e47')
+ version('16.5', 'a40e8852071b5d600cb42f31631b3de1')
+ version('16.3', '618cb7ddbc57d4e4ed1f21a0ab25f427')
+ version('15.7', '84a689217b17cdaf78c39270c70bea5d')
variant('network', default=True,
description="Perform a network install")
@@ -99,3 +101,17 @@ class Pgi(Package):
# Run install script
os.system("./install")
+
+ def setup_environment(self, spack_env, run_env):
+ prefix = Prefix(join_path(self.prefix, 'linux86-64', self.version))
+
+ run_env.set('CC', join_path(prefix.bin, 'pgcc'))
+ run_env.set('CXX', join_path(prefix.bin, 'pgc++'))
+ run_env.set('F77', join_path(prefix.bin, 'pgfortran'))
+ run_env.set('FC', join_path(prefix.bin, 'pgfortran'))
+
+ run_env.prepend_path('PATH', prefix.bin)
+ run_env.prepend_path('CPATH', prefix.include)
+ run_env.prepend_path('LIBRARY_PATH', prefix.lib)
+ run_env.prepend_path('LD_LIBRARY_PATH', prefix.lib)
+ run_env.prepend_path('MANPATH', prefix.man)
diff --git a/var/spack/repos/builtin/packages/phasta/package.py b/var/spack/repos/builtin/packages/phasta/package.py
new file mode 100644
index 0000000000..a73c90848b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/phasta/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Phasta(CMakePackage):
+ """SCOREC RPI's Parallel Hierarchic Adaptive Stabilized Transient Analysis
+ (PHASTA) of compressible and incompressible Navier Stokes equations."""
+
+ homepage = "https://www.scorec.rpi.edu/software.php"
+ url = "https://github.com/PHASTA/phasta.git"
+
+ version('0.0.1', git='https://github.com/PHASTA/phasta.git',
+ commit='11f431f2d1a53a529dab4b0f079ab8aab7ca1109')
+ version('develop', git='https://github.com/PHASTA/phasta.git',
+ branch='master')
+
+ depends_on('mpi')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DPHASTA_USE_MPI=ON',
+ '-DPHASTA_BUILD_CONVERTERIO=OFF',
+ '-DPHASTA_BUILD_ACUSTAT=OFF',
+ '-DPHASTA_BUILD_M2N=OFF',
+ '-DPHASTA_BUILD_M2NFixBnd=OFF',
+ '-DPHASTA_USE_LESLIB=OFF',
+ '-DPHASTA_USE_PETSC=OFF',
+ '-DPHASTA_USE_SVLS=ON',
+ '-DPHASTA_INCOMPRESSIBLE=ON',
+ '-DPHASTA_COMPRESSIBLE=ON',
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/phylip/package.py b/var/spack/repos/builtin/packages/phylip/package.py
new file mode 100644
index 0000000000..1ebe04f4ca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/phylip/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Phylip(Package):
+ """PHYLIP (the PHYLogeny Inference Package) is a package of programs for
+ inferring phylogenies (evolutionary trees)."""
+
+ homepage = "http://evolution.genetics.washington.edu/phylip/"
+ url = "http://evolution.gs.washington.edu/phylip/download/phylip-3.696.tar.gz"
+
+ version('3.696', 'dbe5abc26f6089ead3dba41c2db526ee')
+
+ def install(self, spec, prefix):
+ with working_dir('src'):
+ if self.spec.satisfies('platform=darwin'):
+ make('all', '-f', 'Makefile.osx')
+ make('put', '-f', 'Makefile.osx')
+ else:
+ make('all', '-f', 'Makefile.unx')
+ make('put', '-f', 'Makefile.unx')
+ install_tree('exe', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/picard/package.py b/var/spack/repos/builtin/packages/picard/package.py
new file mode 100644
index 0000000000..744479a7f3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/picard/package.py
@@ -0,0 +1,75 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from shutil import copyfile
+import glob
+import os.path
+import re
+
+
+class Picard(Package):
+ """Picard is a set of command line tools for manipulating high-throughput
+ sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF.
+ """
+
+ homepage = "http://broadinstitute.github.io/picard/"
+ url = "https://github.com/broadinstitute/picard/releases/download/2.9.2/picard.jar"
+
+ # They started distributing a single jar file at v2.6.0, prior to
+ # that it was a .zip file with multiple .jar and .so files
+ version('2.9.2', '0449279a6a89830917e8bcef3a976ef7', expand=False,
+ url="https://github.com/broadinstitute/picard/releases/download/2.9.2/picard.jar")
+ version('1.140', '308f95516d94c1f3273a4e7e2b315ec2',
+ url='https://github.com/broadinstitute/picard/releases/download/1.140/picard-tools-1.140.zip')
+
+ depends_on('java@8:', type='run')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ # The list of files to install varies with release...
+ # ... but skip the spack-{build.env}.out files.
+ files = [x for x in glob.glob("*") if not re.match("^spack-", x)]
+ for f in files:
+ install(f, prefix.bin)
+
+ # Set up a helper script to call java on the jar file,
+ # explicitly codes the path for java and the jar file.
+ script_sh = join_path(os.path.dirname(__file__), "picard.sh")
+ script = join_path(prefix.bin, "picard")
+ copyfile(script_sh, script)
+ set_executable(script)
+
+ # Munge the helper script to explicitly point to java and the
+ # jar file.
+ java = join_path(self.spec['java'].prefix, 'bin', 'java')
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('picard.jar', join_path(prefix.bin, 'picard.jar'),
+ script, **kwargs)
+
+ def setup_environment(self, spack_env, run_env):
+ """The Picard docs suggest setting this as a convenience."""
+ run_env.prepend_path('PICARD',
+ join_path(self.prefix, 'bin', 'picard.jar'))
diff --git a/var/spack/repos/builtin/packages/picard/picard.sh b/var/spack/repos/builtin/packages/picard/picard.sh
new file mode 100644
index 0000000000..6d4864f118
--- /dev/null
+++ b/var/spack/repos/builtin/packages/picard/picard.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the picard jar file
+java -jar picard.jar "$@"
diff --git a/var/spack/repos/builtin/packages/pidx/package.py b/var/spack/repos/builtin/packages/pidx/package.py
index e19bb9e470..bc3977d733 100644
--- a/var/spack/repos/builtin/packages/pidx/package.py
+++ b/var/spack/repos/builtin/packages/pidx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Pidx(Package):
+class Pidx(CMakePackage):
"""PIDX Parallel I/O Library.
PIDX is an efficient parallel I/O library that reads and writes
@@ -37,11 +37,5 @@ class Pidx(Package):
version('1.0', git='https://github.com/sci-visus/PIDX.git',
commit='6afa1cf71d1c41263296dc049c8fabaf73c296da')
- depends_on('cmake', type='build')
- depends_on("mpi")
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
- make()
- make("install")
+ depends_on('cmake@2.8.4:', type='build')
+ depends_on('mpi')
diff --git a/var/spack/repos/builtin/packages/pigz/package.py b/var/spack/repos/builtin/packages/pigz/package.py
new file mode 100644
index 0000000000..fe933c4f54
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pigz/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pigz(MakefilePackage):
+ """A parallel implementation of gzip for modern multi-processor,
+ multi-core machines."""
+
+ homepage = "http://zlib.net/pigz/"
+ url = "http://zlib.net/pigz/pigz-2.3.4.tar.gz"
+
+ version('2.3.4', '08e6b2e682bbf65ccf12c8966d633fc6')
+
+ depends_on('zlib')
+
+ def build(self, spec, prefix):
+ make()
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.man.man1)
+ install('pigz', "%s/pigz" % prefix.bin)
+ install('pigz.1', "%s/pigz.1" % prefix.man.man1)
diff --git a/var/spack/repos/builtin/packages/piranha/package.py b/var/spack/repos/builtin/packages/piranha/package.py
index dbf949f000..9f4b26d050 100644
--- a/var/spack/repos/builtin/packages/piranha/package.py
+++ b/var/spack/repos/builtin/packages/piranha/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Piranha(Package):
+class Piranha(CMakePackage):
"""Piranha is a computer-algebra library for the symbolic manipulation of
sparse multivariate polynomials and other closely-related symbolic objects
(such as Poisson series)."""
@@ -40,7 +40,7 @@ class Piranha(Package):
description='Build the Python bindings')
# Build dependencies
- depends_on('cmake@3.0:', type='build')
+ depends_on('cmake@3.2.0:', type='build')
extends('python', when='+pyranha')
depends_on('python@2.6:', type='build', when='+pyranha')
@@ -53,21 +53,8 @@ class Piranha(Package):
depends_on('gmp') # mpir is a drop-in replacement for this
depends_on('mpfr') # Could also be built against mpir
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
-
- # Python bindings
- options.extend([
- '-DBUILD_PYRANHA=%s' % (
- 'ON' if '+python' in spec else 'OFF'),
+ def cmake_args(self):
+ return [
+ '-DBUILD_PYRANHA=%s' % ('ON' if '+python' in self.spec else 'OFF'),
'-DBUILD_TESTS:BOOL=ON',
- ])
-
- with working_dir('spack-build', create=True):
- cmake('..', *options)
-
- make()
- make('install')
- if self.run_tests:
- make('test')
+ ]
diff --git a/var/spack/repos/builtin/packages/pixman/package.py b/var/spack/repos/builtin/packages/pixman/package.py
index c780fd64aa..4191550803 100644
--- a/var/spack/repos/builtin/packages/pixman/package.py
+++ b/var/spack/repos/builtin/packages/pixman/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import sys
-class Pixman(Package):
+class Pixman(AutotoolsPackage):
"""The Pixman package contains a library that provides low-level
pixel manipulation features such as image compositing and
trapezoid rasterization."""
@@ -37,18 +37,16 @@ class Pixman(Package):
version('0.34.0', 'e80ebae4da01e77f68744319f01d52a3')
version('0.32.6', '3a30859719a41bd0f5cccffbfefdd4c2')
- depends_on('pkg-config', type='build')
+ depends_on('pkg-config@0.9.0:', type='build')
depends_on('libpng')
- def install(self, spec, prefix):
- config_args = ["--prefix=" + prefix,
- "--disable-gtk"]
+ def configure_args(self):
+ args = [
+ '--enable-libpng',
+ '--disable-gtk',
+ ]
- if sys.platform == "darwin":
- config_args.append("--disable-mmx")
+ if sys.platform == 'darwin':
+ args.append('--disable-mmx')
- configure(*config_args)
-
- make()
- make('check')
- make('install')
+ return args
diff --git a/var/spack/repos/builtin/packages/pkg-config/package.py b/var/spack/repos/builtin/packages/pkg-config/package.py
index a98f65fb07..22a8833a11 100644
--- a/var/spack/repos/builtin/packages/pkg-config/package.py
+++ b/var/spack/repos/builtin/packages/pkg-config/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,32 +25,45 @@
from spack import *
-class PkgConfig(Package):
+class PkgConfig(AutotoolsPackage):
"""pkg-config is a helper tool used when compiling applications
and libraries"""
homepage = "http://www.freedesktop.org/wiki/Software/pkg-config/"
- url = "http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz"
+ url = "http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz"
+ version('0.29.2', 'f6e931e319531b736fadc017f470e68a')
version('0.29.1', 'f739a28cae4e0ca291f82d1d41ef107d')
version('0.28', 'aa3c86e67551adc3ac865160e34a2a0d')
- parallel = False
variant('internal_glib', default=True,
description='Builds with internal glib')
# The following patch is needed for gcc-6.1
- patch('g_date_strftime.patch')
+ patch('g_date_strftime.patch', when='@:0.29.1')
+
+ parallel = False
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """spack built pkg-config on cray's requires adding /usr/local/
+ and /usr/lib64/ to PKG_CONFIG_PATH in order to access cray '.pc'
+ files.
+ Adds the ACLOCAL path for autotools."""
+ spack_env.append_path('ACLOCAL_PATH',
+ join_path(self.prefix.share, 'aclocal'))
+ if 'platform=cray' in self.spec:
+ spack_env.append_path('PKG_CONFIG_PATH',
+ '/usr/lib64/pkgconfig')
+ spack_env.append_path('PKG_CONFIG_PATH',
+ '/usr/local/lib64/pkgconfig')
+
+ def configure_args(self):
+ config_args = ['--enable-shared']
- def install(self, spec, prefix):
- args = ["--prefix={0}".format(prefix),
- "--enable-shared"]
- if "+internal_glib" in spec:
+ if '+internal_glib' in self.spec:
# There's a bootstrapping problem here;
# glib uses pkg-config as well, so break
# the cycle by using the internal glib.
- args.append("--with-internal-glib")
- configure(*args)
+ config_args.append('--with-internal-glib')
- make()
- make("install")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/pkgconf/package.py b/var/spack/repos/builtin/packages/pkgconf/package.py
new file mode 100644
index 0000000000..7b4b570945
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pkgconf/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pkgconf(AutotoolsPackage):
+ """pkgconf is a program which helps to configure compiler and linker
+ flags for development frameworks. It is similar to pkg-config from
+ freedesktop.org, providing additional functionality while also
+ maintaining compatibility."""
+
+ homepage = "http://pkgconf.org/"
+ url = "https://distfiles.dereferenced.org/pkgconf/pkgconf-1.3.8.tar.xz"
+
+ version('1.3.8', '484ba3360d983ce07416843d5bc916a8')
+
+ @run_after('install')
+ def link_pkg_config(self):
+ symlink('pkgconf', '{0}/pkg-config'.format(self.prefix.bin))
+ symlink('pkgconf.1',
+ '{0}/pkg-config.1'.format(self.prefix.share.man.man1))
diff --git a/var/spack/repos/builtin/packages/planck-likelihood/fortran.patch b/var/spack/repos/builtin/packages/planck-likelihood/fortran.patch
new file mode 100644
index 0000000000..b63d268eca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/planck-likelihood/fortran.patch
@@ -0,0 +1,11 @@
+--- a/src/bflike/bflike_smw.f90
++++ b/src/bflike/bflike_smw.f90
+@@ -1600,6 +1600,8 @@
+ ok = .false.
+
+ call fid%init()
++
++ unit = 3001
+
+ open(unit = unit,file=trim(filein),status='old',action='read',&
+ iostat=istat)
diff --git a/var/spack/repos/builtin/packages/planck-likelihood/make.patch b/var/spack/repos/builtin/packages/planck-likelihood/make.patch
new file mode 100644
index 0000000000..6f3ce81b80
--- /dev/null
+++ b/var/spack/repos/builtin/packages/planck-likelihood/make.patch
@@ -0,0 +1,21 @@
+--- a/Makefile
++++ b/Makefile
+@@ -336,15 +336,15 @@
+
+ $(BDIR)/libclik_f90.$(SO): $(BDIR)/libclik.$(SO) $(addprefix $(ODIR)/,clik_fortran.o clik.f90.o)
+ @$(ECHO) "build $(BLUE_COLOR)$(@) $(NO_COLOR)"
+- @$(LD) $(SHARED) $(LDFLAG) $(LAPACK) -L$(BDIR) -lclik $^ -o $@
++ @$(LD) -o $@ $(addprefix $(ODIR)/,clik_fortran.o clik.f90.o) -L$(BDIR) -lclik $(SHARED) $(LAPACK) $(LDFLAG)
+
+ $(BDIR)/clik_example_C: $(ODIR)/clik_example_c.o $(BDIR)/libclik.$(SO)
+ @$(ECHO) "build $(BLUE_COLOR)$(@) $(NO_COLOR)"
+- @$(CC) $(LDFLAG) $(LAPACK) -L$(BDIR) -lclik $< -o $@
++ @$(CC) -o $@ $(ODIR)/clik_example_c.o -L$(BDIR) -lclik $(LAPACK) $(LDFLAG)
+
+ $(BDIR)/clik_example_f90: $(ODIR)/clik_example_f90.f90.o $(BDIR)/libclik_f90.$(SO)
+ @$(ECHO) "build $(BLUE_COLOR)$(@) $(NO_COLOR)"
+- @$(FC) $(LDFLAG) $(LAPACK) -L$(BDIR) -lclik_f90 -lclik $< -o $@
++ @$(FC) -o $@ $(ODIR)/clik_example_f90.f90.o -L$(BDIR) -lclik_f90 -lclik $(LAPACK) $(LDFLAG)
+
+ $(BDIR)/liblapack_clik.$(SO): |$(BDIR)
+ ifndef MKL_LIB_FULLPATH
diff --git a/var/spack/repos/builtin/packages/planck-likelihood/package.py b/var/spack/repos/builtin/packages/planck-likelihood/package.py
new file mode 100644
index 0000000000..a92fc328db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/planck-likelihood/package.py
@@ -0,0 +1,148 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PlanckLikelihood(Package):
+ """2015 Cosmic Microwave Background (CMB) spectra and likelihood code"""
+
+ homepage = "https://wiki.cosmos.esa.int/planckpla2015/index.php/CMB_spectrum_%26_Likelihood_Code"
+ url = "http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Code-v2.0.R2.00.tar.bz2"
+
+ version('2.00', '7a081679ff249dc4f94fb7177e16e818',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Code-v2.0.R2.00.tar.bz2")
+
+ variant('lensing-ext', default=False,
+ description="Provide lensing-ext data")
+ variant('plik-DS', default=False,
+ description="Provide plik-DS data")
+ variant('plik-HM-ext', default=False,
+ description="Provide plik-HM-ext data")
+ variant('plik-unbinned', default=False,
+ description="Provide plik-unbinned data")
+
+ patch('fortran.patch')
+ patch('make.patch')
+
+ resource(
+ name='baseline',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Data-baseline_R2.00.tar.gz",
+ md5='7e784819cea65dbc290ea3619420295a',
+ destination='.')
+ resource(
+ name='lensing-ext',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Data-extra-lensing-ext.R2.00.tar.gz",
+ md5='091736f73b47a09162050bee27d68399',
+ destination='.',
+ when='+lensing-ext')
+ resource(
+ name='plik-DS',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Data-extra-plik-DS.R2.00.tar.gz",
+ md5='76ac04f989025eecab3825aba7e41f36',
+ destination='.',
+ when='+plik-DS')
+ resource(
+ name='plik-HM-ext',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Data-extra-plik-HM-ext.R2.00.tar.gz",
+ md5='1c3bd8221f973b7bf7e76647451fd6e5',
+ destination='.',
+ when='+plik-HM-ext')
+ resource(
+ name='plik-unbinned',
+ url="http://irsa.ipac.caltech.edu/data/Planck/release_2/software/COM_Likelihood_Data-extra-plik-unbinned.R2.00.tar.gz",
+ md5='c5869aa6b6581b6863d2a6e0ffd3826c',
+ destination='.',
+ when='+plik-unbinned')
+
+ depends_on('blas')
+ depends_on('cfitsio +shared')
+ depends_on('lapack')
+
+ # Note: Could also install Python bindings
+
+ parallel = False
+
+ def install(self, spec, prefix):
+ # Configure
+
+ # Don't hide build commands
+ filter_file("^\t@", "\t", "Makefile")
+
+ makeflags = [
+ 'PREFIX=%s' % prefix,
+ 'COLORS=0',
+ 'CFITSIOPATH=%s' % spec['cfitsio'].prefix,
+ 'CC=cc',
+ 'FC=fc',
+ 'IFORTLIBPATH=',
+ 'IFORTRUNTIME=-lintlc -limf -lsvml -liomp5 -lifportmt -lifcoremt',
+ 'GFORTRANLIBPATH=',
+ 'GFORTRANRUNTIME=-lgfortran -lgomp',
+ 'LAPACKLIBPATH=',
+ 'LAPACK=%s' % (spec['lapack'].libs + spec['blas'].libs).ld_flags,
+ 'COPENMP=%s' % self.compiler.openmp_flag,
+ 'FOPENMP=%s' % self.compiler.openmp_flag,
+ ]
+
+ # Build
+ make(*makeflags)
+
+ # Install
+ make('install', *makeflags)
+ fix_darwin_install_name(prefix.lib)
+ dirs = ['plc_2.0']
+ if '+lensing-ext' in spec:
+ dirs.append('lensing_ext')
+ if '+plik-DS' in spec:
+ dirs.append('plik_DS')
+ if '+plik-HM-ext' in spec:
+ dirs.append('plik_HM_ext')
+ if '+plik-unbinned' in spec:
+ dirs.append('plik_unbinned')
+ for dir in dirs:
+ install_tree(dir, join_path(prefix, 'share', 'clik', dir))
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ prefix = self.prefix
+ spack_env.set('CLIK_PATH', prefix)
+ spack_env.set('CLIK_DATA', join_path(prefix, 'share', 'clik'))
+ spack_env.set('CLIK_PLUGIN', 'rel2015')
+
+ def setup_environment(self, spack_env, run_env):
+ prefix = self.prefix
+ run_env.set('CLIK_PATH', prefix)
+ run_env.set('CLIK_DATA', join_path(prefix, 'share', 'clik'))
+ run_env.set('CLIK_PLUGIN', 'rel2015')
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ prefix = self.prefix
+ clik_example_C = Executable(join_path(prefix.bin, 'clik_example_C'))
+ with working_dir('spack-check', create=True):
+ clik_example_C(join_path(prefix, 'share', 'clik',
+ 'plc_2.0', 'hi_l', 'plik',
+ 'plik_dx11dr2_HM_v18_TT.clik'))
diff --git a/var/spack/repos/builtin/packages/plasma/package.py b/var/spack/repos/builtin/packages/plasma/package.py
new file mode 100644
index 0000000000..46b662d63d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/plasma/package.py
@@ -0,0 +1,90 @@
+##############################################################################
+# Copyright (c) 2017, Innovative Computing Laboratory
+# Produced at the Innovative Computing Laboratory.
+#
+# Created by Piotr Luszczek, luszczek@icl.utk.edu, All rights reserved.
+#
+# For details, see https://github.com/spack/spack
+#
+##############################################################################
+#
+from spack import *
+
+
+class Plasma(MakefilePackage):
+ """Parallel Linear Algebra Software for Multicore Architectures, PLASMA is
+ a software package for solving problems in dense linear algebra using
+ multicore processors and Xeon Phi coprocessors. PLASMA provides
+ implementations of state-of-the-art algorithms using cutting-edge task
+ scheduling techniques. PLASMA currently offers a collection of routines for
+ solving linear systems of equations, least squares problems, eigenvalue
+ problems, and singular value problems."""
+
+ homepage = "https://bitbucket.org/icl/plasma/"
+ url = "https://bitbucket.org/icl/plasma/downloads/plasma-17.1.tar.gz"
+
+ version("17.1", "64b410b76023a41b3f07a5f0dca554e1")
+
+ version("develop", hg="https://luszczek@bitbucket.org/icl/plasma")
+
+ depends_on("blas")
+ depends_on("lapack")
+
+ conflicts("atlas") # does not have LAPACKE interface
+ conflicts("netlib-lapack@:2.999") # missing LAPACKE features
+ # clashes with OpenBLAS declarations and has a problem compiling on its own
+ conflicts("cblas")
+ conflicts("openblas-with-lapack") # incomplete LAPACK implementation
+ conflicts("veclibfort")
+
+ # only GCC 7+ and higher have sufficient support for OpenMP 4+ tasks+deps
+ conflicts("%gcc@:6.999")
+ conflicts("%cce")
+ conflicts("%clang")
+ conflicts("%intel")
+ conflicts("%nag")
+ conflicts("%pgi")
+ conflicts("%xl")
+ conflicts("%xl_r")
+
+ patch("remove_absolute_mkl_include.patch", when="@17.1")
+
+ def edit(self, spec, prefix):
+ # copy "make.inc.mkl-gcc" provided by default into "make.inc"
+ open("make.inc", "w").write(open("make.inc.mkl-gcc").read())
+
+ make_inc = FileFilter("make.inc")
+
+ if not spec.satisfies("^mkl"):
+ make_inc.filter("-DPLASMA_WITH_MKL", "") # not using MKL
+
+ header_flags = ""
+ # accumulate CPP flags for headers: <cblas.h> and <lapacke.h>
+ for dep in ("blas", "lapack"):
+ try: # in case the dependency does not provide header flags
+ header_flags += " " + spec[dep].headers.cpp_flags
+ except AttributeError:
+ pass
+
+ make_inc.filter("CFLAGS +[+]=", "CFLAGS += " + header_flags + " ")
+
+ # pass prefix variable from "make.inc" to "Makefile"
+ make_inc.filter("# --*", "prefix={0}".format(self.prefix))
+
+ # make sure CC variable comes from build environment
+ make_inc.filter("CC *[?]*= * .*cc", "")
+
+ @property
+ def build_targets(self):
+ targets = list()
+
+ # use $CC set by Spack
+ targets.append("CC = {0}".format(self.compiler.cc))
+
+ if self.spec.satisfies("^mkl"):
+ targets.append("MKLROOT = {0}/mkl".format(env["MKLROOT"]))
+
+ # pass BLAS library flags
+ targets.append("LIBS = {0}".format(self.spec["blas"].libs.ld_flags))
+
+ return targets
diff --git a/var/spack/repos/builtin/packages/plasma/remove_absolute_mkl_include.patch b/var/spack/repos/builtin/packages/plasma/remove_absolute_mkl_include.patch
new file mode 100644
index 0000000000..2c9ef151e8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/plasma/remove_absolute_mkl_include.patch
@@ -0,0 +1,55 @@
+--- a/compute/zgbtrf.c 2017-01-13 13:59:46.000000000 -0500
++++ b/compute/zgbtrf.c 2017-09-21 17:18:46.550538802 -0400
+@@ -18,7 +18,7 @@
+ #include "plasma_types.h"
+ #include "plasma_workspace.h"
+
+-#include "mkl_lapacke.h"
++#include "core_lapack.h"
+
+ /***************************************************************************//**
+ *
+--- a/compute/zgetrf.c 2017-01-13 13:59:46.000000000 -0500
++++ b/compute/zgetrf.c 2017-09-21 17:18:46.550538802 -0400
+@@ -18,7 +18,7 @@
+ #include "plasma_types.h"
+ #include "plasma_workspace.h"
+
+-#include "mkl_lapacke.h"
++#include "core_lapack.h"
+
+ /***************************************************************************//**
+ *
+--- a/compute/zgetrs.c 2017-01-13 13:59:46.000000000 -0500
++++ b/compute/zgetrs.c 2017-09-21 17:18:46.550538802 -0400
+@@ -18,7 +18,7 @@
+ #include "plasma_types.h"
+ #include "plasma_workspace.h"
+
+-#include "mkl_lapacke.h"
++#include "core_lapack.h"
+
+ /***************************************************************************//**
+ *
+--- a/compute/zgesv.c 2017-01-13 13:59:46.000000000 -0500
++++ b/compute/zgesv.c 2017-09-21 17:18:46.550538802 -0400
+@@ -18,7 +18,7 @@
+ #include "plasma_types.h"
+ #include "plasma_workspace.h"
+
+-#include "mkl_lapacke.h"
++#include "core_lapack.h"
+
+ /***************************************************************************//**
+ *
+--- a/compute/zgbsv.c 2017-01-13 13:59:46.000000000 -0500
++++ b/compute/zgbsv.c 2017-09-21 17:18:46.550538802 -0400
+@@ -18,7 +18,7 @@
+ #include "plasma_types.h"
+ #include "plasma_workspace.h"
+
+-#include "mkl_lapacke.h"
++#include "core_lapack.h"
+
+ /***************************************************************************//**
+ *
diff --git a/var/spack/repos/builtin/packages/plink/package.py b/var/spack/repos/builtin/packages/plink/package.py
new file mode 100644
index 0000000000..b6df013978
--- /dev/null
+++ b/var/spack/repos/builtin/packages/plink/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Plink(Package):
+ """PLINK is a free, open-source whole genome association analysis toolset,
+ designed to perform a range of basic, large-scale analyses in a
+ computationally efficient manner."""
+
+ homepage = "https://www.cog-genomics.org/plink/1.9/"
+
+ version('1.9', 'a2325881594856c0f1b7523290d1e04f',
+ url='https://www.cog-genomics.org/static/bin/plink170815/plink_linux_x86_64.zip')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('plink', prefix.bin)
+ install('prettify', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/plumed/package.py b/var/spack/repos/builtin/packages/plumed/package.py
index 60dfdf7405..cac4f4254f 100644
--- a/var/spack/repos/builtin/packages/plumed/package.py
+++ b/var/spack/repos/builtin/packages/plumed/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,12 +22,12 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import subprocess
+import collections
from spack import *
-class Plumed(Package):
+class Plumed(AutotoolsPackage):
"""PLUMED is an open source library for free energy calculations in
molecular systems which works together with some of the most popular
molecular dynamics engines.
@@ -43,17 +43,21 @@ class Plumed(Package):
homepage = 'http://www.plumed.org/'
url = 'https://github.com/plumed/plumed2/archive/v2.2.3.tar.gz'
+ version('2.3.3', '9f5729e406e79a06a16976fcb020e024')
+ version('2.3.0', 'a9b5728f115dca8f0519111f1f5a6fa5')
+ version('2.2.4', 'afb00da25a3fbd47acf377e53342059d')
version('2.2.3', 'a6e3863e40aac07eb8cf739cbd14ecf8')
# Variants. PLUMED by default builds a number of optional modules.
# The ones listed here are not built by default for various reasons,
# such as stability, lack of testing, or lack of demand.
- variant('crystallization', default=False,
- description='Build support for optional crystallization module.')
- variant('imd', default=False,
- description='Build support for optional imd module.')
- variant('manyrestraints', default=False,
- description='Build support for optional manyrestraints module.')
+ # FIXME: This needs to be an optional
+ variant(
+ 'optional_modules',
+ default='all',
+ values=lambda x: True,
+ description='String that is used to build optional modules'
+ )
variant('shared', default=True, description='Builds shared libraries')
variant('mpi', default=True, description='Activates MPI support')
variant('gsl', default=True, description='Activates GSL support')
@@ -67,44 +71,58 @@ class Plumed(Package):
depends_on('gsl', when='+gsl')
depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
- # Dictionary mapping PLUMED versions to the patches it provides
- # interactively
- plumed_patches = {
- '2.2.3': {
- 'amber-14': '1',
- 'gromacs-4.5.7': '2',
- 'gromacs-4.6.7': '3',
- 'gromacs-5.0.7': '4',
- 'gromacs-5.1.2': '5',
- 'lammps-6Apr13': '6',
- 'namd-2.8': '7',
- 'namd-2.9': '8',
- 'espresso-5.0.2': '9'
- }
- }
+ force_autoreconf = True
+
+ parallel = False
def apply_patch(self, other):
- plumed = subprocess.Popen(
- [join_path(self.spec.prefix.bin, 'plumed'), 'patch', '-p'],
- stdin=subprocess.PIPE
+
+ # The name of MD engines differ slightly from the ones used in Spack
+ format_strings = collections.defaultdict(
+ lambda: '{0.name}-{0.version}'
)
- opts = Plumed.plumed_patches[str(self.version)]
- search = '{0.name}-{0.version}'.format(other)
- choice = opts[search] + '\n'
- plumed.stdin.write(choice)
- plumed.wait()
+ format_strings['espresso'] = 'q{0.name}-{0.version}'
+ format_strings['amber'] = '{0.name}{0.version}'
+
+ get_md = lambda x: format_strings[x.name].format(x)
+
+ # Get available patches
+ plumed_patch = Executable(
+ join_path(self.spec.prefix.bin, 'plumed-patch')
+ )
+
+ out = plumed_patch('-q', '-l', output=str)
+ available = out.split(':')[-1].split()
+
+ # Check that `other` is among the patchable applications
+ if get_md(other) not in available:
+ msg = '{0.name}@{0.version} is not among the MD engine'
+ msg += ' that can be patched by {1.name}@{1.version}.\n'
+ msg += 'Supported engines are:\n'
+ for x in available:
+ msg += x + '\n'
+ raise RuntimeError(msg.format(other, self.spec))
- def setup_dependent_package(self, module, ext_spec):
+ # Call plumed-patch to patch executables
+ target = format_strings[other.name].format(other)
+ plumed_patch('-p', '-e', target)
+
+ def setup_dependent_package(self, module, dependent_spec):
# Make plumed visible from dependent packages
- module.plumed = Executable(join_path(self.spec.prefix.bin, 'plumed'))
+ module.plumed = dependent_spec['plumed'].command
- def install(self, spec, prefix):
+ @run_before('autoreconf')
+ def filter_gslcblas(self):
# This part is needed to avoid linking with gsl cblas
# interface which will mask the cblas interface
# provided by optimized libraries due to linking order
filter_file('-lgslcblas', '', 'configure.ac')
- autoreconf('-ivf')
+
+ def configure_args(self):
+ spec = self.spec
# From plumed docs :
# Also consider that this is different with respect to what some other
@@ -114,7 +132,11 @@ class Plumed(Package):
# with MPI you should use:
#
# > ./configure CXX="$MPICXX"
- configure_opts = ['--prefix=' + prefix]
+
+ # The configure.ac script may detect the wrong linker for
+ # LD_RO which causes issues at link time. Here we work around
+ # the issue saying we have no LD_RO executable.
+ configure_opts = ['--disable-ld-r']
# If using MPI then ensure the correct compiler wrapper is used.
if '+mpi' in spec:
@@ -126,11 +148,19 @@ class Plumed(Package):
# If the MPI dependency is provided by the intel-mpi package then
# the following additional argument is required to allow it to
# build.
- if spec.satisfies('^intel-mpi'):
+ if 'intel-mpi' in spec:
configure_opts.extend([
'STATIC_LIBS=-mt_mpi'
])
+ # Set flags to help find gsl
+ if '+gsl' in self.spec:
+ gsl_libs = self.spec['gsl'].libs
+ blas_libs = self.spec['blas'].libs
+ configure_opts.append('LDFLAGS={0}'.format(
+ (gsl_libs + blas_libs).ld_flags
+ ))
+
# Additional arguments
configure_opts.extend([
'--enable-shared={0}'.format('yes' if '+shared' in spec else 'no'),
@@ -138,21 +168,16 @@ class Plumed(Package):
])
# Construct list of optional modules
- module_opts = []
- module_opts.extend([
- '+crystallization' if (
- '+crystallization' in spec) else '-crystallization',
- '+imd' if '+imd' in spec else '-imd',
- '+manyrestraints' if (
- '+manyrestraints' in spec) else '-manyrestraints'
- ])
# If we have specified any optional modules then add the argument to
# enable or disable them.
- if module_opts:
- configure_opts.extend([
- '--enable-modules={0}'.format("".join(module_opts))])
-
- configure(*configure_opts)
- make()
- make('install')
+ optional_modules = self.spec.variants['optional_modules'].value
+ if optional_modules:
+ # From 'configure --help' @2.3:
+ # all/none/reset or : separated list such as
+ # +crystallization:-bias default: reset
+ configure_opts.append(
+ '--enable-modules={0}'.format(optional_modules)
+ )
+
+ return configure_opts
diff --git a/var/spack/repos/builtin/packages/pmgr-collective/package.py b/var/spack/repos/builtin/packages/pmgr-collective/package.py
index f6466a7954..c96e777e5b 100644
--- a/var/spack/repos/builtin/packages/pmgr-collective/package.py
+++ b/var/spack/repos/builtin/packages/pmgr-collective/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/pmix/package.py b/var/spack/repos/builtin/packages/pmix/package.py
new file mode 100644
index 0000000000..0763dfbaed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pmix/package.py
@@ -0,0 +1,71 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Pmix(AutotoolsPackage):
+ """The Process Management Interface (PMI) has been used for quite some time
+ as a means of exchanging wireup information needed for interprocess
+ communication. Two versions (PMI-1 and PMI-2) have been released as part
+ of the MPICH effort. While PMI-2 demonstrates better scaling properties
+ than its PMI-1 predecessor, attaining rapid launch and wireup of the
+ roughly 1M processes executing across 100k nodes expected for exascale
+ operations remains challenging. PMI Exascale (PMIx) represents an
+ attempt to resolve these questions by providing an extended version
+ of the PMI definitions specifically designed to support clusters up
+ to and including exascale sizes. The overall objective of the project
+ is not to branch the existing definitions - in fact, PMIx fully
+ supports both of the existing PMI-1 and PMI-2 APIs - but rather to
+ (a) augment and extend those APIs to eliminate some current restrictions
+ that impact scalability, (b) establish a standards-like body for
+ maintaining the definitions, and (c) provide a reference implementation
+ of the PMIx standard that demonstrates the desired level of
+ scalability."""
+
+ homepage = "https://pmix.github.io/pmix"
+ url = "https://github.com/pmix/pmix/releases/download/v2.0.1/pmix-2.0.1.tar.bz2"
+
+ version('2.0.1', 'ba3193b485843516e6b4e8641e443b1e')
+ version('2.0.0', '3e047c2ea0ba8ee9925ed92b205fd92e')
+ version('1.2.3', '102b1cc650018b62348b45d572b158e9')
+ version('1.2.2', 'd85c8fd437bd88f984549425ad369e9f')
+ version('1.2.1', 'f090f524681c52001ea2db3b0285596f')
+ version('1.2.0', '6a42472d5a32e1c31ce5da19d50fc21a')
+
+ depends_on('libevent')
+
+ def configure_args(self):
+ spec = self.spec
+ config_args = [
+ '--enable-shared',
+ '--enable-static'
+ ]
+
+ # external libevent support (needed to keep Open MPI happy)
+ config_args.append(
+ '--with-libevent={0}'.format(spec['libevent'].prefix))
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/pnfft/package.py b/var/spack/repos/builtin/packages/pnfft/package.py
new file mode 100644
index 0000000000..fbb6b636b1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pnfft/package.py
@@ -0,0 +1,88 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Pnfft(AutotoolsPackage):
+ """PNFFT is a parallel software library for the calculation of
+ three-dimensional nonequispaced FFTs."""
+
+ homepage = "https://www-user.tu-chemnitz.de/~potts/workgroup/pippig/software.php.en"
+ url = "https://www-user.tu-chemnitz.de/~potts/workgroup/pippig/software/pnfft-1.0.7-alpha.tar.gz"
+
+ version('1.0.7-alpha', '5caa7f214eed99de2281043ca2367e9e')
+
+ depends_on('pfft')
+
+ def configure(self, spec, prefix):
+ options = ['--prefix={0}'.format(prefix)]
+ if not self.compiler.f77 or not self.compiler.fc:
+ options.append("--disable-fortran")
+
+ configure = Executable('../configure')
+
+ if '+double' in spec['fftw']:
+ with working_dir('double', create=True):
+ configure(*options)
+ if '+float' in spec['fftw']:
+ with working_dir('float', create=True):
+ configure('--enable-float', *options)
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double', create=True):
+ configure('--enable-long-double', *options)
+
+ def build(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make()
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make()
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make()
+
+ def check(self):
+ spec = self.spec
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("check")
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make("check")
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make("check")
+
+ def install(self, spec, prefix):
+ if '+double' in spec['fftw']:
+ with working_dir('double'):
+ make("install")
+ if '+float' in spec['fftw']:
+ with working_dir('float'):
+ make("install")
+ if '+long_double' in spec['fftw']:
+ with working_dir('long-double'):
+ make("install")
diff --git a/var/spack/repos/builtin/packages/pngwriter/package.py b/var/spack/repos/builtin/packages/pngwriter/package.py
index 4c0370a7ef..896b660ac6 100644
--- a/var/spack/repos/builtin/packages/pngwriter/package.py
+++ b/var/spack/repos/builtin/packages/pngwriter/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Pngwriter(Package):
+class Pngwriter(CMakePackage):
"""PNGwriter is a very easy to use open source graphics library that uses
PNG as its output format. The interface has been designed to be as simple
and intuitive as possible. It supports plotting and reading pixels in the
@@ -38,21 +38,13 @@ class Pngwriter(Package):
homepage = "http://pngwriter.sourceforge.net/"
url = "https://github.com/pngwriter/pngwriter/archive/0.5.6.tar.gz"
- version('dev', branch='dev',
+ version('develop', branch='dev',
git='https://github.com/pngwriter/pngwriter.git')
version('master', branch='master',
git='https://github.com/pngwriter/pngwriter.git')
+ version('0.6.0', '0a19bc55c5f6379fea7343752fd3ffae')
version('0.5.6', 'c13bd1fdc0e331a246e6127b5f262136')
- depends_on('cmake', type='build')
depends_on('libpng')
depends_on('zlib')
depends_on('freetype')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('-DCMAKE_INSTALL_PREFIX=%s' % prefix,
- '..', *std_cmake_args)
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/poamsa/package.py b/var/spack/repos/builtin/packages/poamsa/package.py
new file mode 100644
index 0000000000..dba8a03546
--- /dev/null
+++ b/var/spack/repos/builtin/packages/poamsa/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Poamsa(MakefilePackage):
+ """POA is Partial Order Alignment, a fast program for multiple sequence
+ alignment in bioinformatics. Its advantages are speed, scalability,
+ sensitivity, and the superior ability to handle branching / indels
+ in the alignment."""
+
+ homepage = "https://sourceforge.net/projects/poamsa"
+ url = "https://downloads.sourceforge.net/project/poamsa/poamsa/2.0/poaV2.tar.gz"
+
+ version('2.0', '9e2eb270d4867114406f53dab1311b2b')
+
+ def url_for_version(self, version):
+ url = "https://downloads.sourceforge.net/project/poamsa/poamsa/{0}/poaV{1}.tar.gz"
+ return url.format(version.dotted, version.up_to(1))
+
+ def build(self, spec, prefix):
+ make('poa')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.lib)
+ install('poa', prefix.bin)
+ install('liblpo.a', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/pocl/example1.c b/var/spack/repos/builtin/packages/pocl/example1.c
new file mode 100644
index 0000000000..84c3e5e30f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pocl/example1.c
@@ -0,0 +1,232 @@
+/* example1 - Simple example from OpenCL specification.
+
+ Copyright (c) 2011 Universidad Rey Juan Carlos
+
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use, copy,
+ modify, merge, publish, distribute, sublicense, and/or sell copies
+ of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
+*/
+
+#include <CL/opencl.h>
+#include <poclu.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#define N 128
+
+void delete_memobjs(cl_mem *memobjs, int n) {
+ for (int i = 0; i < n; ++i)
+ clReleaseMemObject(memobjs[i]);
+}
+
+int exec_dot_product_kernel(const char *program_source, int n, cl_float4 *srcA,
+ cl_float4 *srcB, cl_float *dst) {
+ cl_context context = poclu_create_any_context();
+ if (context == (cl_context)0)
+ return -1;
+
+ // get the list of GPU devices associated with context
+ size_t cb;
+ clGetContextInfo(context, CL_CONTEXT_DEVICES, 0, NULL, &cb);
+ cl_device_id *devices = malloc(cb);
+ clGetContextInfo(context, CL_CONTEXT_DEVICES, cb, devices, NULL);
+
+ // create a command-queue
+ cl_command_queue cmd_queue =
+ clCreateCommandQueue(context, devices[0], 0, NULL);
+ if (cmd_queue == 0) {
+ clReleaseContext(context);
+ free(devices);
+ return -1;
+ }
+
+ // don't know why this is necessary
+ for (int i = 0; i < n; ++i) {
+ poclu_bswap_cl_float_array(devices[0], &srcA[i], 4);
+ poclu_bswap_cl_float_array(devices[0], &srcB[i], 4);
+ }
+
+ // allocate the buffer memory objects
+ cl_mem memobjs[3];
+
+ memobjs[0] = clCreateBuffer(context, CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR,
+ sizeof(cl_float4) * n, srcA, NULL);
+ if (memobjs[0] == 0) {
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ memobjs[1] = clCreateBuffer(context, CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR,
+ sizeof(cl_float4) * n, srcB, NULL);
+ if (memobjs[1] == 0) {
+ delete_memobjs(memobjs, 1);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ memobjs[2] = clCreateBuffer(context, CL_MEM_READ_WRITE, sizeof(cl_float) * n,
+ NULL, NULL);
+ if (memobjs[2] == 0) {
+ delete_memobjs(memobjs, 2);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // create the program
+ cl_program program =
+ clCreateProgramWithSource(context, 1, &program_source, NULL, NULL);
+ if (program == 0) {
+ delete_memobjs(memobjs, 3);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // build the program
+ cl_int err = clBuildProgram(program, 0, NULL, NULL, NULL, NULL);
+ if (err != CL_SUCCESS) {
+ delete_memobjs(memobjs, 3);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // create the kernel
+ cl_kernel kernel = clCreateKernel(program, "dot_product", NULL);
+ if (kernel == 0) {
+ delete_memobjs(memobjs, 3);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // set the args values
+ err = clSetKernelArg(kernel, 0, sizeof(cl_mem), (void *)&memobjs[0]);
+ err |= clSetKernelArg(kernel, 1, sizeof(cl_mem), (void *)&memobjs[1]);
+ err |= clSetKernelArg(kernel, 2, sizeof(cl_mem), (void *)&memobjs[2]);
+
+ if (err != CL_SUCCESS) {
+ delete_memobjs(memobjs, 3);
+ clReleaseKernel(kernel);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // set work-item dimensions
+ size_t global_work_size[1];
+ global_work_size[0] = n;
+ size_t local_work_size[1];
+ local_work_size[0] = 128;
+
+ // execute kernel
+ err = clEnqueueNDRangeKernel(cmd_queue, kernel, 1, NULL, global_work_size,
+ local_work_size, 0, NULL, NULL);
+ if (err != CL_SUCCESS) {
+ delete_memobjs(memobjs, 3);
+ clReleaseKernel(kernel);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ // read output image
+ err = clEnqueueReadBuffer(cmd_queue, memobjs[2], CL_TRUE, 0,
+ n * sizeof(cl_float), dst, 0, NULL, NULL);
+ if (err != CL_SUCCESS) {
+ delete_memobjs(memobjs, 3);
+ clReleaseKernel(kernel);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+ return -1;
+ }
+
+ for (int i = 0; i < n; ++i) {
+ poclu_bswap_cl_float_array(devices[0], &dst[i], 1);
+ poclu_bswap_cl_float_array(devices[0], &srcA[i], 4);
+ poclu_bswap_cl_float_array(devices[0], &srcB[i], 4);
+ }
+
+ free(devices);
+
+ // release kernel, program, and memory objects
+ delete_memobjs(memobjs, 3);
+ clReleaseKernel(kernel);
+ clReleaseProgram(program);
+ clReleaseCommandQueue(cmd_queue);
+ clReleaseContext(context);
+
+ // success
+ return 0;
+}
+
+int main(void) {
+ const char *source = "__kernel void dot_product(\n"
+ " __global const float4 *a,\n"
+ " __global const float4 *b,\n"
+ " __global float *c)\n"
+ "{\n"
+ " int gid = get_global_id(0);\n"
+ " float4 prod = a[gid] * b[gid];\n"
+ " c[gid] = prod.x + prod.y + prod.z + prod.w;\n"
+ "}\n";
+
+ cl_float4 *srcA = malloc(N * sizeof(cl_float4));
+ cl_float4 *srcB = malloc(N * sizeof(cl_float4));
+ cl_float *dst = malloc(N * sizeof(cl_float));
+
+ for (int i = 0; i < N; ++i) {
+ srcA[i].s[0] = (cl_float)i;
+ srcA[i].s[1] = (cl_float)i;
+ srcA[i].s[2] = (cl_float)i;
+ srcA[i].s[3] = (cl_float)i;
+ srcB[i].s[0] = (cl_float)i;
+ srcB[i].s[1] = (cl_float)i;
+ srcB[i].s[2] = (cl_float)i;
+ srcB[i].s[3] = (cl_float)i;
+ }
+
+ if (exec_dot_product_kernel(source, N, srcA, srcB, dst)) {
+ printf("Error running the tests\n");
+ return -1;
+ }
+
+ for (int i = 0; i < 4; ++i) {
+ printf("(%f, %f, %f, %f) . (%f, %f, %f, %f) = %f\n", srcA[i].s[0],
+ srcA[i].s[1], srcA[i].s[2], srcA[i].s[3], srcB[i].s[0], srcB[i].s[1],
+ srcB[i].s[2], srcB[i].s[3], dst[i]);
+ if (srcA[i].s[0] * srcB[i].s[0] + srcA[i].s[1] * srcB[i].s[1] +
+ srcA[i].s[2] * srcB[i].s[2] + srcA[i].s[3] * srcB[i].s[3] !=
+ dst[i]) {
+ printf("FAIL\n");
+ return -1;
+ }
+ }
+
+ printf("OK\n");
+ return 0;
+}
diff --git a/var/spack/repos/builtin/packages/pocl/example1.out b/var/spack/repos/builtin/packages/pocl/example1.out
new file mode 100644
index 0000000000..ef35a124f8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pocl/example1.out
@@ -0,0 +1,5 @@
+(0.000000, 0.000000, 0.000000, 0.000000) . (0.000000, 0.000000, 0.000000, 0.000000) = 0.000000
+(1.000000, 1.000000, 1.000000, 1.000000) . (1.000000, 1.000000, 1.000000, 1.000000) = 4.000000
+(2.000000, 2.000000, 2.000000, 2.000000) . (2.000000, 2.000000, 2.000000, 2.000000) = 16.000000
+(3.000000, 3.000000, 3.000000, 3.000000) . (3.000000, 3.000000, 3.000000, 3.000000) = 36.000000
+OK
diff --git a/var/spack/repos/builtin/packages/pocl/package.py b/var/spack/repos/builtin/packages/pocl/package.py
new file mode 100644
index 0000000000..ec4ef09bbe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pocl/package.py
@@ -0,0 +1,115 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import os
+
+from spack import *
+from spack.package_test import compile_c_and_execute, compare_output_file
+
+
+class Pocl(CMakePackage):
+ """Portable Computing Language (pocl) is an open source implementation
+ of the OpenCL standard which can be easily adapted for new targets
+ and devices, both for homogeneous CPU and heterogeneous
+ GPUs/accelerators."""
+
+ homepage = "http://portablecl.org"
+ url = "http://portablecl.org/downloads/pocl-0.13.tar.gz"
+
+ version("master", git="https://github.com/pocl/pocl.git")
+ version('0.14', '1d35f09299e76b9e3918c42826555194')
+ # version("0.14-rc",
+ # git="https://github.com/pocl/pocl.git", branch="release_0_14")
+ version("0.13", "344480864d4269f2f63f1509395898bd")
+ version("0.12", "e197ba3aa01a35f40581c48e053330dd")
+ version("0.11", "9be0640cde2983062c47393d9e8e8fe7")
+ version("0.10", "0096be4f595c7b5cbfa42430c8b3af6a")
+
+ # This is Github's pocl/pocl#373
+ patch("uint.patch", when="@:0.13")
+ patch("vecmathlib.patch", when="@:0.13")
+
+ # Note: We should describe correctly which pocl versions provide
+ # which version of the OpenCL standard
+ # OpenCL standard versions are: 1.0, 1.1, 1.2, 2.0, 2.1, 2.2
+ provides('opencl@:2.0')
+
+ depends_on("cmake @2.8.12:", type="build")
+ depends_on("hwloc")
+ depends_on("libtool", type=("build", "run"))
+ # We don't request LLVM's shared libraries because these are not
+ # enabled by default, and also because they fail to build for us
+ # (see #1616)
+ depends_on("llvm +clang")
+ depends_on("pkg-config", type="build")
+
+ # These are the supported LLVM versions
+ depends_on("llvm @3.7:3.9", when="@master")
+ depends_on("llvm @3.7:4.0", when="@0.14")
+ depends_on("llvm @3.7:3.8", when="@0.13")
+ depends_on("llvm @3.2:3.7", when="@0.12")
+ depends_on("llvm @3.2:3.6", when="@0.11")
+ depends_on("llvm @3.2:3.5", when="@0.10")
+
+ variant("distro", default=False,
+ description=("Support several CPU architectures, "
+ "suitable e.g. in a build "
+ "that will be made available for download"))
+ variant("icd", default=False,
+ description="Support a system-wide ICD loader")
+
+ def cmake_args(self):
+ spec = self.spec
+ args = ["-DINSTALL_OPENCL_HEADERS=ON"]
+ if "~shared" in spec["llvm"]:
+ args += ["-DSTATIC_LLVM"]
+ if "+distro" in spec:
+ args += ["-DKERNELLIB_HOST_CPU_VARIANTS=distro"]
+ args += ["-DENABLE_ICD=%s" % ("ON" if "+icd" in spec else "OFF")]
+ return args
+
+ @run_after('install')
+ def symlink_opencl(self):
+ with working_dir(self.build_directory):
+ os.symlink("OpenCL", join_path(self.prefix.include, "CL"))
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
+ def check_install(self):
+ # Build and run a small program to test the installed OpenCL library
+ spec = self.spec
+ print("Checking pocl installation...")
+ checkdir = "spack-check"
+ with working_dir(checkdir, create=True):
+ source = join_path(os.path.dirname(self.module.__file__),
+ "example1.c")
+ cflags = spec["pocl"].headers.cpp_flags.split()
+ # ldflags = spec["pocl"].libs.ld_flags.split()
+ ldflags = ["-L%s" % spec["pocl"].prefix.lib,
+ "-lOpenCL", "-lpoclu"]
+ output = compile_c_and_execute(source, cflags, ldflags)
+ compare_output_file(
+ output,
+ join_path(os.path.dirname(self.module.__file__),
+ "example1.out"))
diff --git a/var/spack/repos/builtin/packages/pocl/uint.patch b/var/spack/repos/builtin/packages/pocl/uint.patch
new file mode 100644
index 0000000000..1a620cd901
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pocl/uint.patch
@@ -0,0 +1,11 @@
+--- a/lib/CL/clCreateSubDevices.c
++++ b/lib/CL/clCreateSubDevices.c
+@@ -46,7 +46,7 @@
+ cl_device_id *new_devs = NULL;
+ // number of elements in (copies of) properties, including terminating null
+ cl_uint num_props = 0;
+- uint i;
++ cl_uint i;
+
+ POCL_GOTO_ERROR_COND((in_device == NULL), CL_INVALID_DEVICE);
+ POCL_GOTO_ERROR_COND((properties == NULL), CL_INVALID_VALUE);
diff --git a/var/spack/repos/builtin/packages/pocl/vecmathlib.patch b/var/spack/repos/builtin/packages/pocl/vecmathlib.patch
new file mode 100644
index 0000000000..73d2742e43
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pocl/vecmathlib.patch
@@ -0,0 +1,75 @@
+diff --git a/lib/kernel/vecmathlib/vec_sse_double1.h b/lib/kernel/vecmathlib/vec_sse_double1.h
+index d727de8..dc582b3 100644
+--- a/lib/kernel/vecmathlib/vec_sse_double1.h
++++ b/lib/kernel/vecmathlib/vec_sse_double1.h
+@@ -397,8 +397,8 @@ public:
+ }
+ return r;
+ }
+- boolvec_t isfinite() const { return vml_std::isfinite(v); }
+- boolvec_t isinf() const { return vml_std::isinf(v); }
++ boolvec_t isfinite() const { return bool(vml_std::isfinite(v)); }
++ boolvec_t isinf() const { return bool(vml_std::isinf(v)); }
+ boolvec_t isnan() const {
+ // This is wrong:
+ // return _mm_ucomineq_sd(from_double(v), from_double(v));
+@@ -407,9 +407,9 @@ public:
+ // __asm__("ucomisd %[v],%[v]; setp %[r]": [r]"=q"(r): [v]"x"(v));
+ // return boolvec_t::scalar_t(r);
+ // This works as well:
+- return vml_std::isnan(v);
++ return bool(vml_std::isnan(v));
+ }
+- boolvec_t isnormal() const { return vml_std::isnormal(v); }
++ boolvec_t isnormal() const { return bool(vml_std::isnormal(v)); }
+ realvec_t ldexp(int_t n) const { return vml_std::ldexp(v, n); }
+ realvec_t ldexp(intvec_t n) const { return vml_std::ldexp(v, n); }
+ realvec_t log() const { return MF::vml_log(*this); }
+@@ -433,7 +433,7 @@ public:
+ }
+ realvec_t round() const { return MF::vml_round(*this); }
+ realvec_t rsqrt() const { return MF::vml_rsqrt(*this); }
+- boolvec_t signbit() const { return vml_std::signbit(v); }
++ boolvec_t signbit() const { return bool(vml_std::signbit(v)); }
+ realvec_t sin() const { return MF::vml_sin(*this); }
+ realvec_t sinh() const { return MF::vml_sinh(*this); }
+ realvec_t sqrt() const {
+diff --git a/lib/kernel/vecmathlib/vec_sse_float1.h b/lib/kernel/vecmathlib/vec_sse_float1.h
+index a84a046..4868b2c 100644
+--- a/lib/kernel/vecmathlib/vec_sse_float1.h
++++ b/lib/kernel/vecmathlib/vec_sse_float1.h
+@@ -394,8 +394,8 @@ public:
+ }
+ return r;
+ }
+- boolvec_t isfinite() const { return vml_std::isfinite(v); }
+- boolvec_t isinf() const { return vml_std::isinf(v); }
++ boolvec_t isfinite() const { return bool(vml_std::isfinite(v)); }
++ boolvec_t isinf() const { return bool(vml_std::isinf(v)); }
+ boolvec_t isnan() const {
+ #if defined VML_HAVE_NAN
+ // This is wrong:
+@@ -405,12 +405,12 @@ public:
+ // __asm__("ucomiss %[v],%[v]; setp %[r]": [r]"=q"(r): [v]"x"(v));
+ // return boolvec_t::scalar_t(r);
+ // This works as well:
+- return vml_std::isnan(v);
++ return bool(vml_std::isnan(v));
+ #else
+ return BV(false);
+ #endif
+ }
+- boolvec_t isnormal() const { return vml_std::isnormal(v); }
++ boolvec_t isnormal() const { return bool(vml_std::isnormal(v)); }
+ realvec_t ldexp(int_t n) const { return vml_std::ldexp(v, n); }
+ realvec_t ldexp(intvec_t n) const { return vml_std::ldexp(v, n); }
+ realvec_t log() const { return MF::vml_log(*this); }
+@@ -434,7 +434,7 @@ public:
+ }
+ realvec_t round() const { return MF::vml_round(*this); }
+ realvec_t rsqrt() const { return MF::vml_rsqrt(*this); }
+- boolvec_t signbit() const { return vml_std::signbit(v); }
++ boolvec_t signbit() const { return bool(vml_std::signbit(v)); }
+ realvec_t sin() const { return MF::vml_sin(*this); }
+ realvec_t sinh() const { return MF::vml_sinh(*this); }
+ realvec_t sqrt() const { return to_float(_mm_sqrt_ss(from_float(v))); }
diff --git a/var/spack/repos/builtin/packages/polymake/package.py b/var/spack/repos/builtin/packages/polymake/package.py
index c0bb9082ae..0fbfe52640 100644
--- a/var/spack/repos/builtin/packages/polymake/package.py
+++ b/var/spack/repos/builtin/packages/polymake/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/porta/package.py b/var/spack/repos/builtin/packages/porta/package.py
index b620daf78f..e54187188f 100644
--- a/var/spack/repos/builtin/packages/porta/package.py
+++ b/var/spack/repos/builtin/packages/porta/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/portage/package.py b/var/spack/repos/builtin/packages/portage/package.py
new file mode 100644
index 0000000000..b70139c3ed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/portage/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Portage(CMakePackage):
+ """Portage is a framework that computational physics applications can use
+ to build a highly customized, hybrid parallel (MPI+X) conservative
+ remapping library for transfer of field data between meshes.
+ """
+ homepage = "http://portage.lanl.gov/"
+ url = "https://github.com/laristra/portage/tarball/v1.0"
+
+ # tarballs don't have submodules, so use git tags
+ version('1.1.1', git='https://github.com/laristra/portage', tag='v1.1.1', submodules=True)
+ version('1.1.0', git='https://github.com/laristra/portage', tag='v1.1.0', submodules=True)
+ version('develop', git='https://github.com/laristra/portage', branch='master', submodules=True)
+
+ variant('mpi', default=True, description='Support MPI')
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on('mpi', when='+mpi')
+ depends_on('lapack')
+
+ def cmake_args(self):
+ options = ['-DENABLE_UNIT_TESTS=ON', '-DENABLE_APP_TESTS=ON']
+
+ if '+mpi' in self.spec:
+ options.extend([
+ '-DENABLE_MPI=ON',
+ '-DENABLE_MPI_CXX_BINDINGS=ON',
+ '-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx,
+ '-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc,
+ ])
+ else:
+ options.append('-DENABLE_MPI=OFF')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/postgresql/package.py b/var/spack/repos/builtin/packages/postgresql/package.py
index caf3768362..1323405b1f 100644
--- a/var/spack/repos/builtin/packages/postgresql/package.py
+++ b/var/spack/repos/builtin/packages/postgresql/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Postgresql(Package):
+class Postgresql(AutotoolsPackage):
"""PostgreSQL is a powerful, open source object-relational database system.
It has more than 15 years of active development and a proven architecture
that has earned it a strong reputation for reliability, data integrity, and
@@ -40,8 +40,13 @@ class Postgresql(Package):
depends_on('openssl')
depends_on('readline')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--with-openssl")
- make()
- make("install")
+ variant('threadsafe', default=False, description='Build with thread safe.')
+
+ def configure_arg(self):
+ config_args = ["--with-openssl"]
+ if '+threadsafe' in self.spec:
+ config_args.append("--enable-thread-safety")
+ else:
+ config_args.append("--disable-thread-safety")
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/ppl/package.py b/var/spack/repos/builtin/packages/ppl/package.py
index 73404103f0..0a5636d457 100644
--- a/var/spack/repos/builtin/packages/ppl/package.py
+++ b/var/spack/repos/builtin/packages/ppl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/prank/package.py b/var/spack/repos/builtin/packages/prank/package.py
index d627e8a0b6..740cb63b85 100644
--- a/var/spack/repos/builtin/packages/prank/package.py
+++ b/var/spack/repos/builtin/packages/prank/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class Prank(Package):
"""A powerful multiple sequence alignment browser."""
homepage = "http://wasabiapp.org/software/prank/"
- url = "http://wasabiapp.org/download/prank/prank.source.140603.tgz"
+ url = "http://wasabiapp.org/download/prank/prank.source.150803.tgz"
version('150803', '71ac2659e91c385c96473712c0a23e8a')
diff --git a/var/spack/repos/builtin/packages/presentproto/package.py b/var/spack/repos/builtin/packages/presentproto/package.py
index ca145abb6b..e31490a07c 100644
--- a/var/spack/repos/builtin/packages/presentproto/package.py
+++ b/var/spack/repos/builtin/packages/presentproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Presentproto(Package):
+class Presentproto(AutotoolsPackage):
"""Present protocol specification and Xlib/Xserver headers."""
homepage = "https://cgit.freedesktop.org/xorg/proto/presentproto/"
@@ -35,8 +35,3 @@ class Presentproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/preseq/package.py b/var/spack/repos/builtin/packages/preseq/package.py
new file mode 100644
index 0000000000..136bbb62b9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/preseq/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Preseq(MakefilePackage):
+ """The preseq package is aimed at predicting and estimating the complexity
+ of a genomic sequencing library, equivalent to predicting and
+ estimating the number of redundant reads from a given sequencing depth
+ and how many will be expected from additional sequencing using an
+ initial sequencing experiment."""
+
+ homepage = "https://github.com/smithlabcode/preseq"
+ url = "https://github.com/smithlabcode/preseq/releases/download/v2.0.2/preseq_v2.0.2.tar.bz2"
+
+ version('2.0.2', '9f2a7b597c9f08b821db6ee55e2ea39c')
+
+ depends_on('samtools')
+ depends_on('gsl')
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('PREFIX', self.prefix)
diff --git a/var/spack/repos/builtin/packages/price/package.py b/var/spack/repos/builtin/packages/price/package.py
new file mode 100644
index 0000000000..ee47d600b8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/price/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Price(MakefilePackage):
+ """PRICE (Paired-Read Iterative Contig Extension): a de novo genome
+ assembler implemented in C++."""
+
+ homepage = "http://derisilab.ucsf.edu/software/price/"
+ url = "http://derisilab.ucsf.edu/software/price/PriceSource140408.tar.gz"
+
+ version('140408', '2880274a514c34b812718b13a620813e')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('PriceTI', prefix.bin)
+ install('PriceSeqFilter', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/primer3/package.py b/var/spack/repos/builtin/packages/primer3/package.py
new file mode 100644
index 0000000000..5a747d8dec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/primer3/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Primer3(MakefilePackage):
+ """Primer3 is a widely used program for designing PCR primers
+ (PCR = "Polymerase Chain Reaction"). PCR is an essential and
+ ubiquitous tool in genetics and molecular biology. Primer3
+ can also design hybridization probes and sequencing primers."""
+
+ homepage = "http://primer3.sourceforge.net/"
+ url = "https://sourceforge.net/projects/primer3/files/primer3/2.3.7/primer3-2.3.7.tar.gz/download"
+
+ version('2.3.7', 'c6b89067bf465e62b6b1fd830b5b4418')
+
+ build_directory = 'src'
+
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ mkdirp(prefix.bin)
+ for binary in ('primer3_core', 'ntdpal', 'oligotm',
+ 'long_seq_tm_test'):
+ install(binary, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/printproto/package.py b/var/spack/repos/builtin/packages/printproto/package.py
index 151924dd49..c3d0e28e8f 100644
--- a/var/spack/repos/builtin/packages/printproto/package.py
+++ b/var/spack/repos/builtin/packages/printproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Printproto(Package):
+class Printproto(AutotoolsPackage):
"""Xprint extension to the X11 protocol - a portable, network-transparent
printing system."""
@@ -36,8 +36,3 @@ class Printproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/probconsrna/package.py b/var/spack/repos/builtin/packages/probconsrna/package.py
new file mode 100644
index 0000000000..56abd8b59e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/probconsrna/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Probconsrna(Package):
+ """Experimental version of PROBCONS with parameters estimated via
+ unsupervised training on BRAliBASE """
+
+ homepage = "http://probcons.stanford.edu/"
+ url = "http://probcons.stanford.edu/probconsRNA.tar.gz"
+
+ version('2005-6-7', '2aa13012124208ca5dd6b0a1d508208d')
+
+ def install(self, build, prefix):
+ mkdirp(prefix.bin)
+ install('compare', prefix.bin)
+ install('makegnuplot', prefix.bin)
+ install('probcons', prefix.bin)
+ # needed for tcoffee
+ install('probcons', prefix.bin.probconsRNA)
+ install('project', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/proj/package.py b/var/spack/repos/builtin/packages/proj/package.py
index 06ab6108b6..efddcb876c 100644
--- a/var/spack/repos/builtin/packages/proj/package.py
+++ b/var/spack/repos/builtin/packages/proj/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Proj(Package):
+class Proj(AutotoolsPackage):
"""Cartographic Projections"""
homepage = "https://github.com/OSGeo/proj.4/wiki"
url = "http://download.osgeo.org/proj/proj-4.9.2.tar.gz"
@@ -35,11 +35,3 @@ class Proj(Package):
version('4.8.0', 'd815838c92a29179298c126effbb1537')
version('4.7.0', '927d34623b52e0209ba2bfcca18fe8cd')
version('4.6.1', '7dbaab8431ad50c25669fd3fb28dc493')
-
- # No dependencies
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/protobuf/package.py b/var/spack/repos/builtin/packages/protobuf/package.py
index bf0073b16a..038c208864 100644
--- a/var/spack/repos/builtin/packages/protobuf/package.py
+++ b/var/spack/repos/builtin/packages/protobuf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,18 +23,44 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import spack.util.web
-class Protobuf(Package):
+class Protobuf(CMakePackage):
"""Google's data interchange format."""
homepage = "https://developers.google.com/protocol-buffers"
- url = "https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.bz2"
+ url = "https://github.com/google/protobuf/archive/v3.2.0.tar.gz"
+ root_cmakelists_dir = "cmake"
- version('2.5.0', 'a72001a9067a4c2c4e0e836d0f92ece4')
+ version('3.4.0', '1d077a7d4db3d75681f5c333f2de9b1a')
+ version('3.3.0', 'f0f712e98de3db0c65c0c417f5e7aca8')
+ version('3.2.0', 'efaa08ae635664fb5e7f31421a41a995')
+ version('3.1.0', '39d6a4fa549c0cce164aa3064b1492dc')
+ version('3.0.2', '7349a7f43433d72c6d805c6ca22b7eeb')
+ # does not build with CMake:
+ # version('2.5.0', '9c21577a03adc1879aba5b52d06e25cf')
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("check")
- make("install")
+ depends_on('zlib')
+
+ conflicts('%gcc@:4.6') # Requires c++11
+
+ # first fixed in 3.4.0: https://github.com/google/protobuf/pull/3406
+ patch('pkgconfig.patch', when='@:3.3.2')
+
+ def fetch_remote_versions(self):
+ """Ignore additional source artifacts uploaded with releases,
+ only keep known versions
+ fix for https://github.com/spack/spack/issues/5356"""
+ return dict(map(
+ lambda u: (u, self.url_for_version(u)),
+ spack.util.web.find_versions_of_archive(
+ self.all_urls, self.list_url, self.list_depth)
+ ))
+
+ def cmake_args(self):
+ args = [
+ '-Dprotobuf_BUILD_TESTS:BOOL=OFF',
+ '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON'
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/protobuf/pkgconfig.patch b/var/spack/repos/builtin/packages/protobuf/pkgconfig.patch
new file mode 100644
index 0000000000..a0e8b4b3b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/protobuf/pkgconfig.patch
@@ -0,0 +1,58 @@
+diff --git a/cmake/install.cmake b/cmake/install.cmake
+index 28dc90d..441bf55 100644
+--- a/cmake/install.cmake
++++ b/cmake/install.cmake
+@@ -1,5 +1,10 @@
+ include(GNUInstallDirs)
+
++configure_file(${CMAKE_CURRENT_SOURCE_DIR}/protobuf.pc.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc @ONLY)
++configure_file(${CMAKE_CURRENT_SOURCE_DIR}/protobuf-lite.pc.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc @ONLY)
++
+ foreach(_library
+ libprotobuf-lite
+ libprotobuf
+@@ -17,6 +22,8 @@ endforeach()
+ install(TARGETS protoc EXPORT protobuf-targets
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT protoc)
+
++install(FILES ${CMAKE_CURRENT_BINARY_DIR}/protobuf.pc ${CMAKE_CURRENT_BINARY_DIR}/protobuf-lite.pc DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
++
+ file(STRINGS extract_includes.bat.in _extract_strings
+ REGEX "^copy")
+ foreach(_extract_string ${_extract_strings})
+diff --git a/cmake/protobuf-lite.pc.cmake b/cmake/protobuf-lite.pc.cmake
+new file mode 100644
+index 0000000..cbe5426
+--- /dev/null
++++ b/cmake/protobuf-lite.pc.cmake
+@@ -0,0 +1,11 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=@CMAKE_INSTALL_PREFIX@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
++
++Name: Protocol Buffers
++Description: Google's Data Interchange Format
++Version: @protobuf_VERSION@
++Libs: -L${libdir} -lprotobuf-lite @CMAKE_THREAD_LIBS_INIT@
++Cflags: -I${includedir} @CMAKE_THREAD_LIBS_INIT@
++Conflicts: protobuf
+diff --git a/cmake/protobuf.pc.cmake b/cmake/protobuf.pc.cmake
+new file mode 100644
+index 0000000..2e30763
+--- /dev/null
++++ b/cmake/protobuf.pc.cmake
+@@ -0,0 +1,11 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=@CMAKE_INSTALL_PREFIX@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
++
++Name: Protocol Buffers
++Description: Google's Data Interchange Format
++Version: @protobuf_VERSION@
++Libs: -L${libdir} -lprotobuf @CMAKE_THREAD_LIBS_INIT@
++Cflags: -I${includedir} @CMAKE_THREAD_LIBS_INIT@
++Conflicts: protobuf-lite
diff --git a/var/spack/repos/builtin/packages/proxymngr/package.py b/var/spack/repos/builtin/packages/proxymngr/package.py
index 896f4a516b..cc38d6ae55 100644
--- a/var/spack/repos/builtin/packages/proxymngr/package.py
+++ b/var/spack/repos/builtin/packages/proxymngr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Proxymngr(Package):
+class Proxymngr(AutotoolsPackage):
"""The proxy manager (proxymngr) is responsible for resolving requests from
xfindproxy (and other similar clients), starting new proxies when
appropriate, and keeping track of all of the available proxy services.
@@ -44,9 +44,3 @@ class Proxymngr(Package):
depends_on('xproxymanagementprotocol', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/pruners-ninja/package.py b/var/spack/repos/builtin/packages/pruners-ninja/package.py
new file mode 100644
index 0000000000..c8e93ad997
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pruners-ninja/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PrunersNinja(AutotoolsPackage):
+ """NINJA: Noise Inject agent tool to expose subtle and unintended message
+ races."""
+ homepage = "https://github.com/PRUNERS/NINJA"
+ url = "https://github.com/PRUNERS/NINJA/releases/download/v1.0.0/NINJA-1.0.0.tar.gz"
+
+ version("1.0.1", "f0728cad61d8f1f970dffb7bb430addb")
+ version("1.0.0", "fee53c4712ac521ebec3cd8692e5185a")
+
+ depends_on("mpi")
+ depends_on("autoconf", type='build')
+ depends_on("automake", type='build')
+ depends_on("libtool", type='build')
diff --git a/var/spack/repos/builtin/packages/ps-lite/cmake.patch b/var/spack/repos/builtin/packages/ps-lite/cmake.patch
new file mode 100644
index 0000000000..246a8d820c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ps-lite/cmake.patch
@@ -0,0 +1,22 @@
+From b787a6413d6d54c46db476176656fec108c57527 Mon Sep 17 00:00:00 2001
+From: Jianwen WEI <weijianwen@gmail.com>
+Date: Wed, 5 Apr 2017 19:53:51 +0800
+Subject: [PATCH] Add install() for ps-lite in CMake.
+
+---
+ CMakeLists.txt | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e5d13d0..d68491c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -63,3 +63,8 @@ set(pslite_LINKER_LIBS ${pslite_LINKER_LIBS_L} PARENT_SCOPE)
+ set(pslite_LINKER_LIBS_RELEASE ${pslite_LINKER_LIBS_L_RELEASE} PARENT_SCOPE)
+ set(pslite_LINKER_LIBS_DEBUG ${pslite_LINKER_LIBS_L_DEBUG} PARENT_SCOPE)
+ set(pslite_INCLUDE_DIR ${pslite_INCLUDE_DIR_L} PARENT_SCOPE)
++
++install(TARGETS pslite ARCHIVE DESTINATION lib)
++install(DIRECTORY include DESTINATION .)
++install(DIRECTORY docs DESTINATION .)
++install(DIRECTORY make DESTINATION .)
diff --git a/var/spack/repos/builtin/packages/ps-lite/package.py b/var/spack/repos/builtin/packages/ps-lite/package.py
new file mode 100644
index 0000000000..b78315c060
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ps-lite/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PsLite(CMakePackage):
+ """ps-lite is A light and efficient implementation
+ of the parameter server framework."""
+
+ homepage = "https://github.com/dmlc/ps-lite"
+ url = "https://github.com/dmlc/ps-lite.git"
+
+ version('master', git='https://github.com/dmlc/ps-lite.git', branch='master')
+ version('20170328', git='https://github.com/dmlc/ps-lite.git',
+ commit='acdb698fa3bb80929ef83bb37c705f025e119b82')
+
+ depends_on('protobuf@3:')
+ depends_on('zeromq')
+
+ patch('cmake.patch')
diff --git a/var/spack/repos/builtin/packages/psi4/package.py b/var/spack/repos/builtin/packages/psi4/package.py
index 4248c24646..f322e6c1ca 100644
--- a/var/spack/repos/builtin/packages/psi4/package.py
+++ b/var/spack/repos/builtin/packages/psi4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@ from spack import *
import os
-class Psi4(Package):
+class Psi4(CMakePackage):
"""Psi4 is an open-source suite of ab initio quantum chemistry
programs designed for efficient, high-accuracy simulations of
a variety of molecular properties."""
@@ -36,20 +36,16 @@ class Psi4(Package):
version('0.5', '53041b8a9be3958384171d0d22f9fdd0')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
+
# Required dependencies
depends_on('blas')
depends_on('lapack')
- depends_on('boost'
- '+chrono'
- '+filesystem'
- '+python'
- '+regex'
- '+serialization'
- '+system'
- '+timer'
- '+thread')
+ depends_on('boost+chrono+filesystem+python+regex+serialization+system+timer+thread')
depends_on('python')
- depends_on('cmake', type='build')
+ depends_on('cmake@3.3:', type='build')
depends_on('py-numpy', type=('build', 'run'))
# Optional dependencies
@@ -59,28 +55,21 @@ class Psi4(Package):
# depends_on('pcm-solver')
# depends_on('chemps2')
- def install(self, spec, prefix):
- cmake_args = [
+ def cmake_args(self):
+ spec = self.spec
+
+ return [
'-DBLAS_TYPE={0}'.format(spec['blas'].name.upper()),
- '-DBLAS_LIBRARIES={0}'.format(spec['blas'].blas_libs.joined()),
+ '-DBLAS_LIBRARIES={0}'.format(spec['blas'].libs.joined()),
'-DLAPACK_TYPE={0}'.format(spec['lapack'].name.upper()),
'-DLAPACK_LIBRARIES={0}'.format(
- spec['lapack'].lapack_libs.joined()),
+ spec['lapack'].libs.joined()),
'-DBOOST_INCLUDEDIR={0}'.format(spec['boost'].prefix.include),
'-DBOOST_LIBRARYDIR={0}'.format(spec['boost'].prefix.lib),
'-DENABLE_CHEMPS2=OFF'
]
- cmake_args.extend(std_cmake_args)
-
- with working_dir('spack-build', create=True):
- cmake('..', *cmake_args)
-
- make()
- make('install')
-
- self.filter_compilers(spec, prefix)
-
+ @run_after('install')
def filter_compilers(self, spec, prefix):
"""Run after install to tell the configuration files to
use the compilers that Spack built the package with.
@@ -115,8 +104,7 @@ class Psi4(Package):
' -I'.join([
os.path.join(spec['psi4'].prefix.include, 'psi4'),
os.path.join(spec['boost'].prefix.include, 'boost'),
- os.path.join(spec['python'].prefix.include, 'python{0}'.format(
- spec['python'].version.up_to(2))),
+ os.path.join(spec['python'].headers.directories[0]),
spec['lapack'].prefix.include,
spec['blas'].prefix.include,
'/usr/include'
diff --git a/var/spack/repos/builtin/packages/pstreams/package.py b/var/spack/repos/builtin/packages/pstreams/package.py
new file mode 100644
index 0000000000..2bf7fa63c9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pstreams/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Pstreams(Package):
+ """C++ wrapper for the POSIX.2 functions popen(3) and pclose(3)"""
+
+ homepage = "http://pstreams.sourceforge.net/"
+ url = "https://superb-sea2.dl.sourceforge.net/project/pstreams/pstreams/Release%201.0/pstreams-1.0.1.tar.gz"
+
+ version('1.0.1', '23199e3d12a644a2a0c66ec889d4c064')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.include)
+ install('pstream.h', prefix.include)
diff --git a/var/spack/repos/builtin/packages/pugixml/package.py b/var/spack/repos/builtin/packages/pugixml/package.py
new file mode 100644
index 0000000000..5cab25c3b3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pugixml/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Pugixml(CMakePackage):
+ """Light-weight, simple, and fast XML parser for C++ with XPath support"""
+
+ homepage = "http://pugixml.org/"
+ url = "http://github.com/zeux/pugixml/tarball/v1.8.1"
+
+ version('1.8.1', 'bff935f82fa45bee4d31257d948bcba2')
diff --git a/var/spack/repos/builtin/packages/pumi/package.py b/var/spack/repos/builtin/packages/pumi/package.py
new file mode 100644
index 0000000000..f4f65a33d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pumi/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import sys
+
+
+class Pumi(CMakePackage):
+ """SCOREC RPI's Parallel Unstructured Mesh Infrastructure (PUMI).
+ An efficient distributed mesh data structure and methods to support
+ parallel adaptive analysis including general mesh-based operations,
+ such as mesh entity creation/deletion, adjacency and geometric
+ classification, iterators, arbitrary (field) data attachable to mesh
+ entities, efficient communication involving entities duplicated
+ across multiple tasks, migration of mesh entities between tasks,
+ and dynamic load balancing."""
+
+ homepage = "https://www.scorec.rpi.edu/pumi"
+ url = "https://github.com/SCOREC/core.git"
+
+ version('0.0.1', git='https://github.com/SCOREC/core.git',
+ commit='0c315e82b3f2478dc18bdd6cfa89f1cddb85cd6a')
+ version('develop', git='https://github.com/SCOREC/core.git',
+ branch='master')
+
+ if sys.platform == 'darwin':
+ patch('phiotimer.cc.darwin.patch', level=0) # !clock_gettime
+
+ variant('zoltan', default=False, description='Enable Zoltan Features')
+
+ depends_on('mpi')
+ depends_on('zoltan', when='+zoltan')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DSCOREC_CXX_WARNINGS=OFF',
+ '-DENABLE_ZOLTAN=%s' % ('ON' if '+zoltan' in spec else 'OFF'),
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
+ ]
+
+ return args
diff --git a/var/spack/repos/builtin/packages/pumi/phiotimer.cc.darwin.patch b/var/spack/repos/builtin/packages/pumi/phiotimer.cc.darwin.patch
new file mode 100644
index 0000000000..52c6e63fca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pumi/phiotimer.cc.darwin.patch
@@ -0,0 +1,21 @@
+*** ./phasta/phiotimer.cc 2017-05-03 12:26:25.000000000 -0700
+--- ./phasta/phiotimer.cc.patched 2017-05-03 12:26:11.000000000 -0700
+***************
+*** 56,63 ****
+ }
+ #else
+ void phastaio_time(phastaioTime* t) {
+! int err;
+! err = clock_gettime(CLOCK_MONOTONIC,t);
+ PCU_ALWAYS_ASSERT(!err);
+ }
+ /*return elapsed time in micro seconds*/
+--- 56,63 ----
+ }
+ #else
+ void phastaio_time(phastaioTime* t) {
+! int err=0;
+! /*err = clock_gettime(CLOCK_MONOTONIC,t);*/
+ PCU_ALWAYS_ASSERT(!err);
+ }
+ /*return elapsed time in micro seconds*/
diff --git a/var/spack/repos/builtin/packages/pvm/package.py b/var/spack/repos/builtin/packages/pvm/package.py
new file mode 100644
index 0000000000..de4848413d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pvm/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import subprocess
+
+
+class Pvm(MakefilePackage):
+ """PVM (Parallel Virtual Machine) is a software package that permits a
+ heterogeneous collection of Unix and/or Windows computers hooked together
+ by a network to be used as a single large parallel computer."""
+
+ homepage = "http://www.csm.ornl.gov/pvm/pvm_home.html"
+ url = "http://www.netlib.org/pvm3/pvm3.4.6.tgz"
+
+ version('3.4.6', '7b5f0c80ea50b6b4b10b6128e197747b')
+
+ parallel = False
+
+ @property
+ def pvm_arch(self):
+ """Returns the appropriate PVM_ARCH."""
+ process = subprocess.Popen(['lib/pvmgetarch'], stdout=subprocess.PIPE)
+ return process.communicate()[0].strip()
+
+ def edit(self, spec, prefix):
+ # Before building PVM, you must set the environment
+ # variable "PVM_ROOT" to the path where PVM resides
+ env['PVM_ROOT'] = self.stage.source_path
+
+ def install(self, spec, prefix):
+ pvm_arch = self.pvm_arch
+
+ install_tree(join_path('bin', pvm_arch), prefix.bin)
+ install_tree('include', prefix.include)
+ install_tree(join_path('lib', pvm_arch), prefix.lib)
+ install_tree('man', prefix.man)
+
+ def setup_environment(self, spack_env, run_env):
+ # Before running PVM, you must set the environment
+ # variable "PVM_ROOT" to the path where PVM resides
+ run_env.set('PVM_ROOT', self.prefix)
diff --git a/var/spack/repos/builtin/packages/py-3to2/package.py b/var/spack/repos/builtin/packages/py-3to2/package.py
index 80b95fcbfd..1a1a6f8805 100644
--- a/var/spack/repos/builtin/packages/py-3to2/package.py
+++ b/var/spack/repos/builtin/packages/py-3to2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,6 +30,6 @@ class Py3to2(PythonPackage):
for Python version 3.x into Python version 2.x."""
homepage = "https://pypi.python.org/pypi/3to2"
- url = "https://pypi.python.org/packages/source/3/3to2/3to2-1.1.1.zip"
+ url = "https://pypi.io/packages/source/3/3to2/3to2-1.1.1.zip"
version('1.1.1', 'cbeed28e350dbdaef86111ace3052824')
diff --git a/var/spack/repos/builtin/packages/py-4suite-xml/package.py b/var/spack/repos/builtin/packages/py-4suite-xml/package.py
new file mode 100644
index 0000000000..e0fa713fd8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-4suite-xml/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Py4suiteXml(PythonPackage):
+ """XML tools and libraries for Python: Domlette, XPath, XSLT, XPointer,
+ XLink, XUpdate"""
+
+ homepage = "http://4suite.org/"
+ url = "https://pypi.io/packages/source/4/4Suite-XML/4Suite-XML-1.0.2.tar.gz"
+
+ version('1.0.2', '3ca3db95cb0263ad80beba034d1ff6ea')
+
+ depends_on('python@2.2.1:')
diff --git a/var/spack/repos/builtin/packages/py-abipy/package.py b/var/spack/repos/builtin/packages/py-abipy/package.py
new file mode 100644
index 0000000000..dc07aaebd2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-abipy/package.py
@@ -0,0 +1,77 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyAbipy(PythonPackage):
+ """Python package to automate ABINIT calculations and analyze
+ the results."""
+
+ homepage = "https://github.com/abinit/abipy"
+ url = "https://pypi.io/packages/source/a/abipy/abipy-0.2.0.tar.gz"
+
+ version('0.2.0', 'af9bc5cf7d5ca1a56ff73e2a65c5bcbd')
+
+ variant('gui', default=False, description='Build the GUI')
+ variant('ipython', default=False, description='Build IPython support')
+
+ extends('python', ignore='bin/(feff_.*|gaussian_analyzer|get_environment|html2text|nc3tonc4|nc4tonc3|ncinfo|pmg|pydii|tabulate|tqdm)')
+
+ depends_on('python@2.7:')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-prettytable', type=('build', 'run'))
+ depends_on('py-tabulate', type=('build', 'run'))
+ depends_on('py-apscheduler@2.1.0', type=('build', 'run'))
+ depends_on('py-pydispatcher@2.0.5:', type=('build', 'run'))
+ depends_on('py-tqdm', type=('build', 'run'))
+ depends_on('py-html2text', type=('build', 'run'))
+ depends_on('py-pyyaml@3.11:', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
+ depends_on('py-numpy@1.9:', type=('build', 'run'))
+ depends_on('py-scipy@0.14:', type=('build', 'run'))
+ depends_on('py-spglib', type=('build', 'run'))
+ depends_on('py-pymatgen@4.7.2:', type=('build', 'run'))
+ depends_on('py-netcdf4', type=('build', 'run'))
+ depends_on('py-matplotlib@1.5:', type=('build', 'run'))
+ depends_on('py-seaborn', type=('build', 'run'))
+
+ depends_on('py-wxpython', type=('build', 'run'), when='+gui')
+ depends_on('py-wxmplot', type=('build', 'run'), when='+gui')
+
+ depends_on('py-ipython', type=('build', 'run'), when='+ipython')
+ depends_on('py-jupyter', type=('build', 'run'), when='+ipython')
+ depends_on('py-nbformat', type=('build', 'run'), when='+ipython')
+
+ def build_args(self, spec, prefix):
+ args = []
+
+ if '+ipython' in spec:
+ args.append('--with-ipython')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/py-alabaster/package.py b/var/spack/repos/builtin/packages/py-alabaster/package.py
index f2402c9bc6..2f718ca9e8 100644
--- a/var/spack/repos/builtin/packages/py-alabaster/package.py
+++ b/var/spack/repos/builtin/packages/py-alabaster/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,10 +29,12 @@ class PyAlabaster(PythonPackage):
"""Alabaster is a visually (c)lean, responsive, configurable theme
for the Sphinx documentation system."""
- homepage = "https://pypi.python.org/pypi/alabaster"
- url = "https://pypi.python.org/packages/source/a/alabaster/alabaster-0.7.9.tar.gz"
+ homepage = "https://alabaster.readthedocs.io/"
+ url = "https://pypi.io/packages/source/a/alabaster/alabaster-0.7.10.tar.gz"
- version('0.7.9', 'b29646a8bbe7aa52830375b7d17b5d7a',
- url="https://pypi.python.org/packages/71/c3/70da7d8ac18a4f4c502887bd2549e05745fa403e2cd9d06a8a9910a762bc/alabaster-0.7.9.tar.gz")
+ import_modules = ['alabaster']
+
+ version('0.7.10', '7934dccf38801faa105f6e7b4784f493')
+ version('0.7.9', 'b29646a8bbe7aa52830375b7d17b5d7a')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-apache-libcloud/package.py b/var/spack/repos/builtin/packages/py-apache-libcloud/package.py
new file mode 100644
index 0000000000..c46987f2ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-apache-libcloud/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyApacheLibcloud(PythonPackage):
+ """Python library for multiple cloud provider APIs"""
+
+ homepage = "http://libcloud.apache.org"
+ url = "https://pypi.io/packages/source/a/apache-libcloud/apache-libcloud-1.2.1.tar.gz"
+
+ version('1.2.1', '912e6fb1f2d13f7d3b58ee982b9f9d1f')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-apipkg/package.py b/var/spack/repos/builtin/packages/py-apipkg/package.py
new file mode 100644
index 0000000000..ee0f979b63
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-apipkg/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyApipkg(PythonPackage):
+ """apipkg: namespace control and lazy-import mechanism"""
+
+ homepage = "https://pypi.python.org/pypi/apipkg"
+ url = "https://pypi.io/packages/source/a/apipkg/apipkg-1.4.tar.gz"
+
+ version('1.4', '17e5668601a2322aff41548cb957e7c8')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-appdirs/package.py b/var/spack/repos/builtin/packages/py-appdirs/package.py
new file mode 100644
index 0000000000..4fd412bb39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-appdirs/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyAppdirs(PythonPackage):
+ """A small Python module for determining appropriate platform-specific
+ dirs, e.g. a "user data dir"."""
+
+ homepage = "https://github.com/ActiveState/appdirs"
+ url = "https://pypi.io/packages/source/a/appdirs/appdirs-1.4.3.tar.gz"
+
+ import_modules = ['appdirs']
+
+ version('1.4.3', '44c679904082a2133f5566c8a0d3ab42')
+ version('1.4.0', '1d17b4c9694ab84794e228f28dc3275b')
+
+ patch('setuptools-import.patch', when='@:1.4.0')
+
+ # Newer versions of setuptools require appdirs. Although setuptools is an
+ # optional dependency of appdirs, if it is not found, setup.py will
+ # fallback on distutils.core instead. Don't add a setuptools dependency
+ # or we won't be able to bootstrap setuptools.
+
+ # depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-appdirs/setuptools-import.patch b/var/spack/repos/builtin/packages/py-appdirs/setuptools-import.patch
new file mode 100644
index 0000000000..55b3ce7b38
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-appdirs/setuptools-import.patch
@@ -0,0 +1,17 @@
+diff --git a/setup.py b/setup.py
+index ccd1e72..5d907aa 100644
+--- a/setup.py
++++ b/setup.py
+@@ -2,7 +2,11 @@
+ import sys
+ import os
+ import os.path
+-from setuptools import setup
++# appdirs is a dependency of setuptools, so allow installing without it.
++try:
++ from setuptools import setup
++except ImportError:
++ from distutils.core import setup
+ import appdirs
+
+ tests_require = []
diff --git a/var/spack/repos/builtin/packages/py-appnope/package.py b/var/spack/repos/builtin/packages/py-appnope/package.py
new file mode 100644
index 0000000000..98d3e44032
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-appnope/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyAppnope(PythonPackage):
+ """Disable App Nap on OS X 10.9"""
+
+ homepage = "https://github.com/minrk/appnope"
+ url = "https://pypi.io/packages/source/a/appnope/appnope-0.1.0.tar.gz"
+
+ version('0.1.0', '932fbaa73792c9b06754755a774dcac5')
diff --git a/var/spack/repos/builtin/packages/py-apscheduler/package.py b/var/spack/repos/builtin/packages/py-apscheduler/package.py
new file mode 100644
index 0000000000..47404f9944
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-apscheduler/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyApscheduler(PythonPackage):
+ """In-process task scheduler with Cron-like capabilities."""
+
+ homepage = "https://github.com/agronholm/apscheduler"
+ url = "https://pypi.io/packages/source/A/APScheduler/APScheduler-3.3.1.tar.gz"
+
+ version('3.3.1', '6342b3b78b41920a8aa54fd3cd4a299d')
+ version('2.1.0', 'b837d23822fc46651862dd2186ec361a')
+
+ depends_on('py-setuptools@0.7:', type='build')
+
+ depends_on('py-six@1.4.0:', type=('build', 'run'))
+ depends_on('py-pytz', type=('build', 'run'))
+ depends_on('py-tzlocal@1.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-argcomplete/package.py b/var/spack/repos/builtin/packages/py-argcomplete/package.py
index 585540f23b..9c08f46b19 100644
--- a/var/spack/repos/builtin/packages/py-argcomplete/package.py
+++ b/var/spack/repos/builtin/packages/py-argcomplete/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class PyArgcomplete(PythonPackage):
"""Bash tab completion for argparse."""
homepage = "https://pypi.python.org/pypi/argcomplete"
- url = "https://pypi.python.org/packages/source/a/argcomplete/argcomplete-1.1.1.tar.gz"
+ url = "https://pypi.io/packages/source/a/argcomplete/argcomplete-1.1.1.tar.gz"
version('1.1.1', '89a3839096c9f991ad33828e72d21abf')
diff --git a/var/spack/repos/builtin/packages/py-argparse/package.py b/var/spack/repos/builtin/packages/py-argparse/package.py
new file mode 100644
index 0000000000..c89e30fdb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-argparse/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyArgparse(PythonPackage):
+ """Python command-line parsing library."""
+
+ homepage = "https://github.com/ThomasWaldmann/argparse/"
+ url = "https://pypi.io/packages/source/a/argparse/argparse-1.4.0.tar.gz"
+
+ version('1.4.0', '08062d2ceb6596fcbc5a7e725b53746f')
+
+ depends_on('python@2.3:')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-ase/package.py b/var/spack/repos/builtin/packages/py-ase/package.py
new file mode 100644
index 0000000000..0030615861
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ase/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyAse(PythonPackage):
+ """The Atomic Simulation Environment (ASE) is a set of tools
+ and Python modules for setting up, manipulating, running,
+ visualizing and analyzing atomistic simulations."""
+
+ homepage = "https://wiki.fysik.dtu.dk/ase/"
+ url = "https://pypi.io/packages/source/a/ase/ase-3.13.0.tar.gz"
+
+ version('3.13.0', 'e946a0addc5b61e5e2e75857e0f99b89')
+
+ depends_on('python@2.6:')
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-asn1crypto/package.py b/var/spack/repos/builtin/packages/py-asn1crypto/package.py
new file mode 100644
index 0000000000..1e1e408b4a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-asn1crypto/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyAsn1crypto(PythonPackage):
+ """Python ASN.1 library with a focus on performance and a pythonic API """
+
+ homepage = "https://github.com/wbond/asn1crypto"
+ url = "https://pypi.io/packages/source/a/asn1crypto/asn1crypto-0.22.0.tar.gz"
+
+ version('0.22.0', '74a8b9402625b38ef19cf3fa69ef8470')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-astroid/package.py b/var/spack/repos/builtin/packages/py-astroid/package.py
index f275813d86..63be8ae470 100644
--- a/var/spack/repos/builtin/packages/py-astroid/package.py
+++ b/var/spack/repos/builtin/packages/py-astroid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-astropy/package.py b/var/spack/repos/builtin/packages/py-astropy/package.py
index 8688e0ee7e..e40fee11c6 100644
--- a/var/spack/repos/builtin/packages/py-astropy/package.py
+++ b/var/spack/repos/builtin/packages/py-astropy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,12 +31,13 @@ class PyAstropy(PythonPackage):
Python astronomy packages."""
homepage = 'http://www.astropy.org/'
- url = 'https://pypi.python.org/packages/source/a/astropy/astropy-1.1.2.tar.gz'
+ url = 'https://pypi.io/packages/source/a/astropy/astropy-1.1.2.tar.gz'
version('1.1.2', 'cbe32023b5b1177d1e2498a0d00cda51')
version('1.1.post1', 'b52919f657a37d45cc45f5cb0f58c44d')
# Required dependencies
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
# Optional dependencies
diff --git a/var/spack/repos/builtin/packages/py-attrs/package.py b/var/spack/repos/builtin/packages/py-attrs/package.py
new file mode 100644
index 0000000000..04daf75da4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-attrs/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyAttrs(PythonPackage):
+ """Python Attributes Without Boilerplate"""
+
+ homepage = "http://attrs.org/"
+ url = "https://pypi.io/packages/source/a/attrs/attrs-16.3.0.tar.gz"
+
+ version('16.3.0', '4ec003c49360853cf935113d1ae56151')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-autopep8/package.py b/var/spack/repos/builtin/packages/py-autopep8/package.py
index c892e2979c..3dff029a8a 100644
--- a/var/spack/repos/builtin/packages/py-autopep8/package.py
+++ b/var/spack/repos/builtin/packages/py-autopep8/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,21 +30,14 @@ class PyAutopep8(PythonPackage):
PEP 8 style guide."""
homepage = "https://github.com/hhatto/autopep8"
- url = "https://github.com/hhatto/autopep8/archive/v1.2.4.tar.gz"
+ url = "https://pypi.io/packages/source/a/autopep8/autopep8-1.2.4.tar.gz"
- version('1.2.4', '0458db85159a9e1b45f3e71ce6c158da')
- version('1.2.2', 'def3d023fc9dfd1b7113602e965ad8e1')
+ version('1.2.4', 'fcea19c0c5e505b425e2a78afb771f5c')
+ version('1.2.2', '3d97f9c89d14a0975bffd32a2c61c36c')
extends('python', ignore='bin/pep8')
- depends_on('python@2.6:2.7,3.2:')
+ depends_on('python@2.6:2.8,3.2:')
depends_on('py-pycodestyle@1.5.7:1.7.0', type=('build', 'run'))
depends_on('py-setuptools', type='build')
-
- def url_for_version(self, version):
- url = "https://github.com/hhatto/autopep8/archive/{0}{1}.tar.gz"
- if version >= Version('1.2.3'):
- return url.format('v', version)
- else:
- return url.format('ver', version)
diff --git a/var/spack/repos/builtin/packages/py-babel/package.py b/var/spack/repos/builtin/packages/py-babel/package.py
index 844ceab34e..8b20318c20 100644
--- a/var/spack/repos/builtin/packages/py-babel/package.py
+++ b/var/spack/repos/builtin/packages/py-babel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,10 +31,12 @@ class PyBabel(PythonPackage):
emphasis on web-based applications."""
homepage = "http://babel.pocoo.org/en/latest/"
- url = "https://pypi.python.org/packages/source/B/Babel/Babel-2.3.4.tar.gz"
+ url = "https://pypi.io/packages/source/B/Babel/Babel-2.4.0.tar.gz"
- version('2.3.4', 'afa20bc55b0e991833030129ad498f35',
- url="https://pypi.python.org/packages/6e/96/ba2a2462ed25ca0e651fb7b66e7080f5315f91425a07ea5b34d7c870c114/Babel-2.3.4.tar.gz")
+ import_modules = ['babel', 'babel.localtime', 'babel.messages']
+
+ version('2.4.0', '90e7a0add19b2036a9b415630a0d9388')
+ version('2.3.4', 'afa20bc55b0e991833030129ad498f35')
depends_on('py-setuptools', type='build')
depends_on('py-pytz', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-backports-abc/package.py b/var/spack/repos/builtin/packages/py-backports-abc/package.py
index 7d062bff6a..69cd6165b5 100644
--- a/var/spack/repos/builtin/packages/py-backports-abc/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-abc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py b/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
index 5950faa765..daa019daef 100644
--- a/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-shutil-get-terminal-size/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,5 +34,7 @@ class PyBackportsShutilGetTerminalSize(PythonPackage):
version('1.0.0', '03267762480bd86b50580dc19dff3c66')
- depends_on('py-setuptools', type='build')
- depends_on('python@:3.2.999')
+ # newer setuptools version mess with "namespace" packages in an
+ # incompatible way cf. https://github.com/pypa/setuptools/issues/900
+ depends_on('py-setuptools@:30.999.999', type='build')
+ depends_on('python@:3.2')
diff --git a/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py b/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
index bf4679556b..88edc5b571 100644
--- a/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
+++ b/var/spack/repos/builtin/packages/py-backports-ssl-match-hostname/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,5 +32,3 @@ class PyBackportsSslMatchHostname(PythonPackage):
url = "https://pypi.io/packages/source/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.5.0.1.tar.gz"
version('3.5.0.1', 'c03fc5e2c7b3da46b81acf5cbacfe1e6')
-
- depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-basemap/package.py b/var/spack/repos/builtin/packages/py-basemap/package.py
index 4a35134e40..4e127f9626 100644
--- a/var/spack/repos/builtin/packages/py-basemap/package.py
+++ b/var/spack/repos/builtin/packages/py-basemap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,7 +23,6 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
class PyBasemap(PythonPackage):
@@ -35,7 +34,10 @@ class PyBasemap(PythonPackage):
version('1.0.7', '48c0557ced9e2c6e440b28b3caff2de8')
- depends_on('py-setuptools', type='build')
+ # Per Github issue #3813, setuptools is required at runtime in order
+ # to make mpl_toolkits a namespace package that can span multiple
+ # directories (i.e., matplotlib and basemap)
+ depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-matplotlib', type=('build', 'run'))
depends_on('pil', type=('build', 'run'))
@@ -43,79 +45,3 @@ class PyBasemap(PythonPackage):
def setup_environment(self, spack_env, run_env):
spack_env.set('GEOS_DIR', self.spec['geos'].prefix)
-
- @PythonPackage.sanity_check('install')
- def post_install_patch(self):
- spec = self.spec
- # We are not sure if this fix is needed before Python 3.5.2.
- # If it is needed, this test should be changed.
- # See: https://github.com/LLNL/spack/pull/1964
- if spec['python'].version >= Version('3.5.2'):
- # Use symlinks to join the two mpl_toolkits/ directories into
- # one, inside of basemap. This is because Basemap tries to
- # "add to" an existing package in Matplotlib, which is only
- # legal Python for "Implicit Namespace Packages":
- # https://www.python.org/dev/peps/pep-0420/
- # https://github.com/Homebrew/homebrew-python/issues/112
- # In practice, Python will see only the basemap version of
- # mpl_toolkits
- path_m = find_package_dir(
- spec['py-matplotlib'].prefix, 'mpl_toolkits')
- path_b = find_package_dir(spec.prefix, 'mpl_toolkits')
- link_dir(path_m, path_b)
-
-
-def find_package_dir(spack_package_root, name):
-
- """Finds directory with a specific name, somewhere inside a Spack
- package.
-
- spack_package_root:
- Root directory to start searching
- oldname:
- Original name of package (not fully qualified, just the leaf)
- newname:
- What to rename it to
-
- """
- for root, dirs, files in os.walk(spack_package_root):
- path = os.path.join(root, name)
-
- # Make sure it's a directory
- if not os.path.isdir(path):
- continue
-
- # Make sure it's really a package
- if not os.path.exists(os.path.join(path, '__init__.py')):
- continue
-
- return path
-
- return None
-
-
-def link_dir(src_root, dest_root, link=os.symlink):
- """Link all files in src_root into directory dest_root"""
-
- for src_path, dirnames, filenames in os.walk(src_root):
- if not filenames:
- continue # avoid explicitly making empty dirs
-
- # Avoid internal Python stuff
- src_leaf = os.path.split(src_path)[1]
- if src_leaf.startswith('__'):
- continue
-
- # Make sure the destination directory exists
- dest_path = os.path.join(dest_root, src_path[len(src_root) + 1:])
- try:
- os.makedirs(dest_path)
- except:
- pass
-
- # Link all files from src to dest directory
- for fname in filenames:
- src = os.path.join(src_path, fname)
- dst = os.path.join(dest_path, fname)
- if not os.path.exists(dst):
- link(src, dst)
diff --git a/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py b/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
index 3a90d02127..4874f1cba5 100644
--- a/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
+++ b/var/spack/repos/builtin/packages/py-beautifulsoup4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,11 +31,10 @@ class PyBeautifulsoup4(PythonPackage):
of navigating, searching, and modifying the parse tree."""
homepage = "https://www.crummy.com/software/BeautifulSoup"
- url = "https://pypi.python.org/packages/source/b/beautifulsoup4/beautifulsoup4-4.4.1.tar.gz"
+ url = "https://pypi.io/packages/source/b/beautifulsoup4/beautifulsoup4-4.5.3.tar.gz"
- version('4.5.1', '994abd90e691beaf7d42c00ffb2f3a67',
- url='https://www.crummy.com/software/BeautifulSoup/bs4/'
- 'download/4.5/beautifulsoup4-4.5.1.tar.gz')
+ version('4.5.3', '937e0df0d699a1237646f38fd567f0c6')
+ version('4.5.1', '994abd90e691beaf7d42c00ffb2f3a67')
version('4.4.1', '8fbd9a7cac0704645fa20d1419036815')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-binwalk/package.py b/var/spack/repos/builtin/packages/py-binwalk/package.py
new file mode 100644
index 0000000000..25f9eb5dd0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-binwalk/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyBinwalk(PythonPackage):
+ """Binwalk is a fast, easy to use tool for analyzing, reverse engineering,
+ and extracting firmware images."""
+
+ homepage = "https://github.com/devttys0/binwalk"
+ url = "https://pypi.io/packages/source/b/binwalk/binwalk-2.1.0.tar.gz"
+
+ version('2.1.0', '054867d9abe6a05f43200cf2591051e6')
+
+ depends_on('python')
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-biom-format/package.py b/var/spack/repos/builtin/packages/py-biom-format/package.py
new file mode 100644
index 0000000000..1323ddee3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-biom-format/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBiomFormat(PythonPackage):
+ """The BIOM file format (canonically pronounced biome) is designed to be
+ a general-use format for representing biological sample by observation
+ contingency tables."""
+
+ homepage = "https://pypi.python.org/pypi/biom-format/2.1.6"
+ url = "https://pypi.io/packages/source/b/biom-format/biom-format-2.1.6.tar.gz"
+
+ version('2.1.6', '1dd4925b74c56e8ee864d5e1973068de')
+
+ variant('h5py', default=True, description='For use with BIOM 2.0+ files')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-h5py', type=('build', 'run'), when='+h5py')
+ depends_on('py-click', type=('build', 'run'))
+ depends_on('py-numpy@1.3.0:', type=('build', 'run'))
+ depends_on('py-future@0.16.0:', type=('build', 'run'))
+ depends_on('py-scipy@0.13.0:', type=('build', 'run'))
+ depends_on('py-pandas@0.19.2:', type=('build', 'run'))
+ depends_on('py-six@1.10.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-biopython/package.py b/var/spack/repos/builtin/packages/py-biopython/package.py
index 3411e244f9..4fcfeaf81d 100644
--- a/var/spack/repos/builtin/packages/py-biopython/package.py
+++ b/var/spack/repos/builtin/packages/py-biopython/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-bleach/package.py b/var/spack/repos/builtin/packages/py-bleach/package.py
index 4a6d7ed9d2..aa7866c3c3 100644
--- a/var/spack/repos/builtin/packages/py-bleach/package.py
+++ b/var/spack/repos/builtin/packages/py-bleach/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,11 +29,11 @@ class PyBleach(PythonPackage):
"""An easy whitelist-based HTML-sanitizing tool."""
homepage = "http://github.com/mozilla/bleach"
- url = "https://pypi.python.org/packages/99/00/25a8fce4de102bf6e3cc76bc4ea60685b2fee33bde1b34830c70cacc26a7/bleach-1.5.0.tar.gz"
+ url = "https://pypi.io/packages/source/b/bleach/bleach-1.5.0.tar.gz"
version('1.5.0', 'b663300efdf421b3b727b19d7be9c7e7')
- depends_on('python@2.6:2.7,3.2:3.5')
+ depends_on('python@2.6:2.8,3.2:3.5')
depends_on('py-setuptools', type='build')
depends_on('py-six', type=('build', 'run'))
depends_on('py-html5lib@0.999,0.999999:0.9999999', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-blessings/package.py b/var/spack/repos/builtin/packages/py-blessings/package.py
index b38f34b412..9f5b57c469 100644
--- a/var/spack/repos/builtin/packages/py-blessings/package.py
+++ b/var/spack/repos/builtin/packages/py-blessings/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyBlessings(PythonPackage):
"""A nicer, kinder way to write to the terminal """
homepage = "https://github.com/erikrose/blessings"
- url = "https://pypi.python.org/packages/source/b/blessings/blessings-1.6.tar.gz"
+ url = "https://pypi.io/packages/source/b/blessings/blessings-1.6.tar.gz"
version('1.6', '4f552a8ebcd4982693c92571beb99394')
diff --git a/var/spack/repos/builtin/packages/py-bokeh/package.py b/var/spack/repos/builtin/packages/py-bokeh/package.py
new file mode 100644
index 0000000000..00850c51aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-bokeh/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBokeh(PythonPackage):
+ """Statistical and novel interactive HTML plots for Python"""
+
+ homepage = "http://github.com/bokeh/bokeh"
+ url = "https://pypi.io/packages/source/b/bokeh/bokeh-0.12.2.tar.gz"
+
+ version('0.12.2', '2d1621bffe6e2ab9d42efbf733861c4f')
+
+ depends_on('python@2.6:')
+ depends_on('py-six@1.5.2:', type=('build', 'run'))
+ depends_on('py-requests@1.2.3:', type=('build', 'run'))
+ depends_on('py-pyyaml@3.10:', type=('build', 'run'))
+ depends_on('py-dateutil@2.1:', type=('build', 'run'))
+ depends_on('py-jinja2@2.7:', type=('build', 'run'))
+ depends_on('py-numpy@1.7.1:', type=('build', 'run'))
+ depends_on('py-tornado@4.3:', type=('build', 'run'))
+ depends_on('py-futures@3.0.3:', type=('build', 'run'),
+ when='^python@2.7:2.8')
diff --git a/var/spack/repos/builtin/packages/py-boltons/package.py b/var/spack/repos/builtin/packages/py-boltons/package.py
new file mode 100644
index 0000000000..54355ad7f1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-boltons/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBoltons(PythonPackage):
+ """When they're not builtins, they're boltons.
+
+ Functionality that should be in the standard library. Like builtins,
+ but Boltons.
+
+ Otherwise known as, "everyone's util.py," but cleaned up and tested.
+ """
+ homepage = "https://boltons.readthedocs.io/"
+ url = "https://pypi.io/packages/source/b/boltons/boltons-16.5.1.tar.gz"
+
+ version('16.5.1', '014b10f240fa509fc333ebff4978111b')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-bottleneck/package.py b/var/spack/repos/builtin/packages/py-bottleneck/package.py
index a1215ce39e..4fe32139b6 100644
--- a/var/spack/repos/builtin/packages/py-bottleneck/package.py
+++ b/var/spack/repos/builtin/packages/py-bottleneck/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,8 +28,9 @@ from spack import *
class PyBottleneck(PythonPackage):
"""A collection of fast NumPy array functions written in Cython."""
homepage = "https://pypi.python.org/pypi/Bottleneck/1.0.0"
- url = "https://pypi.python.org/packages/source/B/Bottleneck/Bottleneck-1.0.0.tar.gz"
+ url = "https://pypi.io/packages/source/B/Bottleneck/Bottleneck-1.0.0.tar.gz"
version('1.0.0', '380fa6f275bd24f27e7cf0e0d752f5d2')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-brian/package.py b/var/spack/repos/builtin/packages/py-brian/package.py
new file mode 100644
index 0000000000..68ed005b4a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-brian/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBrian(PythonPackage):
+ """A clock-driven simulator for spiking neural networks"""
+
+ homepage = "http://www.briansimulator.org"
+ url = "https://pypi.io/packages/source/b/brian/brian-1.4.3.tar.gz"
+
+ version('1.4.3', '0570099bcce4d7afde73ff4126e6c30f')
+
+ depends_on('py-matplotlib@0.90.1:', type=('build', 'run'))
+ depends_on('py-numpy@1.4.1:', type=('build', 'run'))
+ depends_on('py-scipy@0.7.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-brian2/package.py b/var/spack/repos/builtin/packages/py-brian2/package.py
new file mode 100644
index 0000000000..bf28c5cda2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-brian2/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBrian2(PythonPackage):
+ """A clock-driven simulator for spiking neural networks"""
+
+ homepage = "http://www.briansimulator.org"
+ url = "https://pypi.io/packages/source/B/Brian2/Brian2-2.0.1.tar.gz"
+
+ version('2.0.1', 'df5990e9a71f7344887bc02f54dfd0f0')
+ version('2.0rc3', '3100c5e4eb9eb83a06ff0413a7d43152')
+
+ variant('docs', default=False, description='Build the documentation')
+
+ # depends on py-setuptools@6: for windows, if spack targets windows,
+ # this will need to be added here
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.8.2:', type=('build', 'run'))
+ depends_on('py-sympy@0.7.6:', type=('build', 'run'))
+ depends_on('py-pyparsing', type=('build', 'run'))
+ depends_on('py-jinja2@2.7:', type=('build', 'run'))
+ depends_on('py-cpuinfo@0.1.6:', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nosetests@1.0:', type='test')
+ depends_on('py-sphinx@1.4.2:', type=('build', 'run'), when='+docs')
diff --git a/var/spack/repos/builtin/packages/py-bsddb3/package.py b/var/spack/repos/builtin/packages/py-bsddb3/package.py
new file mode 100644
index 0000000000..91b8d72665
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-bsddb3/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyBsddb3(PythonPackage):
+ """This module provides a nearly complete wrapping of the Oracle/Sleepycat
+ C API for the Database Environment, Database, Cursor, Log Cursor,
+ Sequence and Transaction objects, and each of these is exposed
+ as a Python type in the bsddb3.db module."""
+
+ homepage = "://pypi.python.org/pypi/bsddb3/6.2.5"
+ url = "https://pypi.python.org/packages/ba/a7/131dfd4e3a5002ef30e20bee679d5e6bcb2fcc6af21bd5079dc1707a132c/bsddb3-6.2.5.tar.gz#md5=610267c189964c905a931990e1ba438c"
+
+ version('6.2.5', '610267c189964c905a931990e1ba438c')
+
+ depends_on('python@2.6:')
+ depends_on('py-setuptools')
diff --git a/var/spack/repos/builtin/packages/py-cclib/package.py b/var/spack/repos/builtin/packages/py-cclib/package.py
index b59376d7b8..7d47dcf3fb 100644
--- a/var/spack/repos/builtin/packages/py-cclib/package.py
+++ b/var/spack/repos/builtin/packages/py-cclib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-cdat-lite/package.py b/var/spack/repos/builtin/packages/py-cdat-lite/package.py
new file mode 100644
index 0000000000..a7bf68d50f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cdat-lite/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyCdatLite(PythonPackage):
+ """Cdat-lite is a Python package for managing and analysing climate
+ science data. It is a subset of the Climate Data Analysis Tools (CDAT)
+ developed by PCMDI at Lawrence Livermore National Laboratory."""
+
+ homepage = "http://proj.badc.rl.ac.uk/cedaservices/wiki/CdatLite"
+ url = "https://pypi.io/packages/source/c/cdat-lite/cdat-lite-6.0.1.tar.gz"
+
+ version('6.0.1', '6d5a6e86f15ce15291d25feab8793248')
+
+ depends_on("netcdf")
+ depends_on("python@2.5:2.8", type=('build', 'run'))
+ depends_on("py-numpy", type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+
+ phases = ['install']
+
+ def install(self, spec, prefix):
+ """Install everything from build directory."""
+ install_args = self.install_args(spec, prefix)
+ # Combine all phases into a single setup.py command,
+ # otherwise extensions are rebuilt without rpath by install phase:
+ self.setup_py('build_ext', '--rpath=%s' % ":".join(self.rpath),
+ 'build_py', 'build_scripts',
+ 'install', *install_args)
diff --git a/var/spack/repos/builtin/packages/py-cdo/package.py b/var/spack/repos/builtin/packages/py-cdo/package.py
index 5eb8f414a8..c5b6d39982 100644
--- a/var/spack/repos/builtin/packages/py-cdo/package.py
+++ b/var/spack/repos/builtin/packages/py-cdo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,13 +30,12 @@ class PyCdo(PythonPackage):
Operators from Python."""
homepage = "https://pypi.python.org/pypi/cdo"
- url = "https://pypi.python.org/packages/sources/c/cdo/cdo-1.3.2.tar.gz"
+ url = "https://pypi.io/packages/source/c/cdo/cdo-1.3.2.tar.gz"
- version('1.3.2', '4b3686ec1b9b891f166c1c466c6db745',
- url="https://pypi.python.org/packages/d6/13/908e7c1451e1f5fb68405f341cdcb3196a16952ebfe1f172cb788f864aa9/cdo-1.3.2.tar.gz")
+ version('1.3.2', '4b3686ec1b9b891f166c1c466c6db745')
depends_on('cdo')
depends_on('py-setuptools', type='build')
depends_on('py-scipy', type=('build', 'run'))
- depends_on('py-netcdf', type=('build', 'run'))
+ depends_on('py-netcdf4', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-certifi/package.py b/var/spack/repos/builtin/packages/py-certifi/package.py
index 959c0221ed..8a5df53a27 100644
--- a/var/spack/repos/builtin/packages/py-certifi/package.py
+++ b/var/spack/repos/builtin/packages/py-certifi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,12 @@ class PyCertifi(PythonPackage):
"""Certifi: A carefully curated collection of Root Certificates for validating
the trustworthiness of SSL certificates while verifying the identity of TLS
hosts."""
- homepage = "https://github.com/certifi/python-certifi"
- url = "https://github.com/certifi/python-certifi/archive/2016.02.28.tar.gz"
+ homepage = "http://certifi.io/"
+ url = "https://pypi.io/packages/source/c/certifi/certifi-2017.1.23.tar.gz"
+ import_modules = ['certifi']
+
+ version('2017.1.23', 'b72521a8badff5e89a8eabea586d79ab')
version('2016.02.28', '5ccfc23bd5e931863f0b01ef3e9d2dbd3bef0e1b')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-cffi/package.py b/var/spack/repos/builtin/packages/py-cffi/package.py
index c0fbae639b..d75c9a4f38 100644
--- a/var/spack/repos/builtin/packages/py-cffi/package.py
+++ b/var/spack/repos/builtin/packages/py-cffi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,15 +23,18 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
class PyCffi(PythonPackage):
"""Foreign Function Interface for Python calling C code"""
homepage = "http://cffi.readthedocs.org/en/latest/"
- # base https://pypi.python.org/pypi/cffi
- url = "https://pypi.python.org/packages/source/c/cffi/cffi-1.1.2.tar.gz"
+ url = "https://pypi.io/packages/source/c/cffi/cffi-1.10.0.tar.gz"
- version('1.1.2', 'ca6e6c45b45caa87aee9adc7c796eaea')
+ import_modules = ['cffi']
+
+ version('1.10.0', '2b5fa41182ed0edaf929a789e602a070')
+ version('1.1.2', 'ca6e6c45b45caa87aee9adc7c796eaea')
depends_on('py-setuptools', type='build')
depends_on('py-pycparser', type=('build', 'run'))
@@ -44,4 +47,5 @@ class PyCffi(PythonPackage):
# other compilation. We are setting the 'LDSHARED" to the
# spack compiler wrapper plus a few extra flags necessary for
# building the shared library.
- spack_env.set('LDSHARED', "{0} -shared -pthread".format(spack_cc))
+ if not sys.platform == 'darwin':
+ spack_env.set('LDSHARED', "{0} -shared -pthread".format(spack_cc))
diff --git a/var/spack/repos/builtin/packages/py-chardet/package.py b/var/spack/repos/builtin/packages/py-chardet/package.py
new file mode 100644
index 0000000000..c62bd1bef3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-chardet/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyChardet(PythonPackage):
+ """Universal encoding detector for Python 2 and 3"""
+
+ homepage = "https://github.com/chardet/chardet"
+ url = "https://pypi.io/packages/source/c/chardet/chardet-2.3.0.tar.gz"
+
+ version('2.3.0', '25274d664ccb5130adae08047416e1a8')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-click/package.py b/var/spack/repos/builtin/packages/py-click/package.py
new file mode 100644
index 0000000000..dd2b1b3e5e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-click/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyClick(PythonPackage):
+ """A simple wrapper around optparse for powerful command line utilities."""
+
+ homepage = "http://github.com/mitsuhiko/click"
+ url = "https://pypi.io/packages/source/c/click/click-6.6.tar.gz"
+
+ version('6.6', 'd0b09582123605220ad6977175f3e51d')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-colorama/package.py b/var/spack/repos/builtin/packages/py-colorama/package.py
new file mode 100644
index 0000000000..d9e2678e6e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-colorama/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyColorama(PythonPackage):
+ """Cross-platform colored terminal text."""
+
+ homepage = "https://github.com/tartley/colorama"
+ url = "https://pypi.io/packages/source/c/colorama/colorama-0.3.7.tar.gz"
+
+ version('0.3.7', '349d2b02618d3d39e5c6aede36fe3c1a')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-netcdf/package.py b/var/spack/repos/builtin/packages/py-colormath/package.py
index 2d35320ca0..374dcd3c8e 100644
--- a/var/spack/repos/builtin/packages/py-netcdf/package.py
+++ b/var/spack/repos/builtin/packages/py-colormath/package.py
@@ -1,12 +1,12 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
+# For details, see https://github.com/spack/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
@@ -25,14 +25,14 @@
from spack import *
-class PyNetcdf(PythonPackage):
- """Python interface to the netCDF Library."""
- homepage = "http://unidata.github.io/netcdf4-python"
- url = "https://github.com/Unidata/netcdf4-python/tarball/v1.2.3.1rel"
+class PyColormath(PythonPackage):
+ """Color math and conversion library."""
- version('1.2.3.1', '4fc4320d4f2a77b894ebf8da1c9895af')
+ homepage = "https://pypi.python.org/pypi/colormath/2.1.1"
+ url = "https://pypi.io/packages/source/c/colormath/colormath-2.1.1.tar.gz"
+ version('2.1.1', '10a0fb17e3c24363d0e1a3f2dccaa33b')
+
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-cython', type=('build', 'run'))
- depends_on('py-setuptools', type=('build', 'run'))
- depends_on('netcdf')
+ depends_on('py-networkx', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-configparser/package.py b/var/spack/repos/builtin/packages/py-configparser/package.py
index c9ba7ac15c..2d463b3ef3 100644
--- a/var/spack/repos/builtin/packages/py-configparser/package.py
+++ b/var/spack/repos/builtin/packages/py-configparser/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,16 +29,13 @@ class PyConfigparser(PythonPackage):
"""This library brings the updated configparser from Python 3.5 to
Python 2.6-3.5."""
- homepage = "https://pypi.python.org/pypi/configparser"
- url = "https://pypi.python.org/packages/source/c/configparser/configparser-3.5.0.tar.gz"
+ homepage = "https://docs.python.org/3/library/configparser.html"
+ url = "https://pypi.io/packages/source/c/configparser/configparser-3.5.0.tar.gz"
- version('3.5.0', 'cfdd915a5b7a6c09917a64a573140538',
- url="https://pypi.python.org/packages/7c/69/c2ce7e91c89dc073eb1aa74c0621c3eefbffe8216b3f9af9d3885265c01c/configparser-3.5.0.tar.gz")
+ version('3.5.0', 'cfdd915a5b7a6c09917a64a573140538')
- depends_on('python@2.6:2.7,3.4:')
+ depends_on('py-setuptools', type='build')
# This dependency breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
- # depends_on('py-ordereddict', when='^python@2.6:2.6.999', type=('build', 'run')) # noqa
-
- depends_on('py-setuptools', type='build')
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-ordereddict', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-counter/package.py b/var/spack/repos/builtin/packages/py-counter/package.py
new file mode 100644
index 0000000000..37f1d62203
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-counter/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyCounter(PythonPackage):
+ """Counter package defines the "counter.Counter" class similar to
+ bags or multisets in other languages."""
+
+ import_modules = ['counter']
+
+ homepage = "https://github.com/KelSolaar/Counter"
+ url = "https://pypi.io/packages/source/C/Counter/Counter-1.0.0.tar.gz"
+
+ version('1.0.0', '1b49029693c28813ff276c2b16673f98')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-coverage/package.py b/var/spack/repos/builtin/packages/py-coverage/package.py
index dc8fc08e24..6912c7e898 100644
--- a/var/spack/repos/builtin/packages/py-coverage/package.py
+++ b/var/spack/repos/builtin/packages/py-coverage/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,9 @@ class PyCoverage(PythonPackage):
""" Testing coverage checker for python """
homepage = "http://nedbatchelder.com/code/coverage/"
- url = "https://pypi.python.org/packages/source/c/coverage/coverage-4.0a6.tar.gz"
+ url = "https://pypi.io/packages/source/c/coverage/coverage-4.3.4.tar.gz"
+ version('4.3.4', '89759813309185efcf4af8b9f7762630')
version('4.0a6', '1bb4058062646148965bef0796b61efc')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-cpuinfo/package.py b/var/spack/repos/builtin/packages/py-cpuinfo/package.py
new file mode 100644
index 0000000000..ae75451311
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cpuinfo/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyCpuinfo(PythonPackage):
+ """Get CPU info with pure Python 2 & 3"""
+
+ homepage = "https://github.com/workhorsy/py-cpuinfo"
+ url = "https://pypi.io/packages/source/p/py-cpuinfo/py-cpuinfo-0.2.3.tar.gz"
+
+ version('0.2.3', '780ff46a0e122af09cb2c40b2706c6dc')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-cryptography/package.py b/var/spack/repos/builtin/packages/py-cryptography/package.py
new file mode 100644
index 0000000000..9ecf7015fc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cryptography/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyCryptography(PythonPackage):
+ """cryptography is a package which provides cryptographic recipes
+ and primitives to Python developers"""
+
+ homepage = "https://pypi.python.org/pypi/cryptography"
+ url = "https://pypi.io/packages/source/c/cryptography/cryptography-1.8.1.tar.gz"
+
+ version('1.8.1', '9f28a9c141995cd2300d0976b4fac3fb')
+
+ # dependencies taken from https://github.com/pyca/cryptography/blob/master/setup.py
+ depends_on('py-setuptools@20.5:', type='build')
+ depends_on('py-cffi@1.4.1:', type=('build', 'run'))
+ depends_on('py-asn1crypto@0.21.0:', type=('build', 'run'))
+ depends_on('py-six@1.4.1:', type=('build', 'run'))
+ depends_on('py-idna@2.1:', type=('build', 'run'))
+ depends_on('py-enum34', type=('build', 'run'), when='^python@:3.4')
+ depends_on('py-ipaddress', type=('build', 'run'), when='^python@:3.3')
+ depends_on('openssl')
diff --git a/var/spack/repos/builtin/packages/py-csvkit/package.py b/var/spack/repos/builtin/packages/py-csvkit/package.py
index 5bcda9f449..05682652c0 100644
--- a/var/spack/repos/builtin/packages/py-csvkit/package.py
+++ b/var/spack/repos/builtin/packages/py-csvkit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,13 +30,15 @@ class PyCsvkit(PythonPackage):
formats"""
homepage = 'http://csvkit.rtfd.org/'
- url = "https://pypi.python.org/packages/source/c/csvkit/csvkit-0.9.1.tar.gz"
+ url = "https://pypi.io/packages/source/c/csvkit/csvkit-0.9.1.tar.gz"
version('0.9.1', '48d78920019d18846933ee969502fff6')
- depends_on('py-dateutil', type=('build', 'run'))
- depends_on('py-dbf', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-dateutil@2.2', type=('build', 'run'), when='@0.9.1')
+ depends_on('py-dateutil', type=('build', 'run'), when='@0.9.2:')
+ depends_on('py-dbf@0.94.003', type=('build', 'run'))
depends_on('py-xlrd', type=('build', 'run'))
depends_on('py-sqlalchemy', type=('build', 'run'))
depends_on('py-six', type=('build', 'run'))
- depends_on('py-openpyxl', type=('build', 'run'))
+ depends_on('py-openpyxl@2.2.0-b1', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-current/package.py b/var/spack/repos/builtin/packages/py-current/package.py
new file mode 100644
index 0000000000..f4cd082492
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-current/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyCurrent(PythonPackage):
+ """Current module relative paths and imports"""
+
+ homepage = "http://github.com/xflr6/current"
+ url = "https://pypi.io/packages/source/c/current/current-0.3.1.zip"
+
+ version('0.3.1', '6378769c64d76831e72a6930b47ced27')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-cutadapt/package.py b/var/spack/repos/builtin/packages/py-cutadapt/package.py
new file mode 100644
index 0000000000..5f029375e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-cutadapt/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyCutadapt(PythonPackage):
+ """Cutadapt finds and removes adapter sequences, primers, poly-A tails and
+ other types of unwanted sequence from your high-throughput sequencing
+ reads."""
+
+ homepage = "https://cutadapt.readthedocs.io"
+ url = "https://pypi.io/packages/source/c/cutadapt/cutadapt-1.13.tar.gz"
+
+ version('1.13', '2d2d14e0c20ad53d7d84b57bc3e63b4c')
+
+ depends_on('python@2.6:', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build'))
+ depends_on('py-xopen@0.1.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-cycler/package.py b/var/spack/repos/builtin/packages/py-cycler/package.py
index f2b2a15018..de0be6903f 100644
--- a/var/spack/repos/builtin/packages/py-cycler/package.py
+++ b/var/spack/repos/builtin/packages/py-cycler/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-cython/package.py b/var/spack/repos/builtin/packages/py-cython/package.py
index c84728cf3e..33b980d87b 100644
--- a/var/spack/repos/builtin/packages/py-cython/package.py
+++ b/var/spack/repos/builtin/packages/py-cython/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-dask/package.py b/var/spack/repos/builtin/packages/py-dask/package.py
index 4113c2ac0b..7534e7ae7e 100644
--- a/var/spack/repos/builtin/packages/py-dask/package.py
+++ b/var/spack/repos/builtin/packages/py-dask/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyDask(PythonPackage):
"""Minimal task scheduling abstraction"""
homepage = "https://github.com/dask/dask/"
- url = "https://pypi.python.org/packages/source/d/dask/dask-0.8.1.tar.gz"
+ url = "https://pypi.io/packages/source/d/dask/dask-0.8.1.tar.gz"
version('0.8.1', '5dd8e3a3823b3bc62c9a6d192e2cb5b4')
diff --git a/var/spack/repos/builtin/packages/py-dateutil/package.py b/var/spack/repos/builtin/packages/py-dateutil/package.py
index 3ab5ad029c..f2b8b29429 100644
--- a/var/spack/repos/builtin/packages/py-dateutil/package.py
+++ b/var/spack/repos/builtin/packages/py-dateutil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,8 +28,9 @@ from spack import *
class PyDateutil(PythonPackage):
"""Extensions to the standard Python datetime module."""
homepage = "https://pypi.python.org/pypi/dateutil"
- url = "https://pypi.python.org/packages/source/p/python-dateutil/python-dateutil-2.4.0.tar.gz"
+ url = "https://pypi.io/packages/source/p/python-dateutil/python-dateutil-2.4.0.tar.gz"
+ version('2.2', 'c1f654d0ff7e33999380a8ba9783fd5c')
version('2.4.0', '75714163bb96bedd07685cdb2071b8bc')
version('2.4.2', '4ef68e1c485b09e9f034e10473e5add2')
version('2.5.2', 'eafe168e8f404bf384514f5116eedbb6')
diff --git a/var/spack/repos/builtin/packages/py-dbf/package.py b/var/spack/repos/builtin/packages/py-dbf/package.py
index 56403405e8..2dfc9cd3ec 100644
--- a/var/spack/repos/builtin/packages/py-dbf/package.py
+++ b/var/spack/repos/builtin/packages/py-dbf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,6 +30,7 @@ class PyDbf(PythonPackage):
.dbf files (including memos)"""
homepage = 'https://pypi.python.org/pypi/dbf'
- url = "https://pypi.python.org/packages/source/d/dbf/dbf-0.96.005.tar.gz"
+ url = "https://pypi.io/packages/source/d/dbf/dbf-0.96.005.tar.gz"
version('0.96.005', 'bce1a1ed8b454a30606e7e18dd2f8277')
+ version('0.94.003', '33a659ec90d7e8d8ffcd69d2189c0c6c')
diff --git a/var/spack/repos/builtin/packages/py-decorator/package.py b/var/spack/repos/builtin/packages/py-decorator/package.py
index e5734866ec..b33bcbc6ee 100644
--- a/var/spack/repos/builtin/packages/py-decorator/package.py
+++ b/var/spack/repos/builtin/packages/py-decorator/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class PyDecorator(PythonPackage):
for the average programmer, and to popularize decorators by showing
various non-trivial examples."""
homepage = "https://github.com/micheles/decorator"
- url = "https://pypi.python.org/packages/source/d/decorator/decorator-4.0.9.tar.gz"
+ url = "https://pypi.io/packages/source/d/decorator/decorator-4.0.9.tar.gz"
version('4.0.9', 'f12c5651ccd707e12a0abaa4f76cd69a')
diff --git a/var/spack/repos/builtin/packages/py-deeptools/package.py b/var/spack/repos/builtin/packages/py-deeptools/package.py
new file mode 100644
index 0000000000..68f77628ea
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-deeptools/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDeeptools(PythonPackage):
+ """deepTools addresses the challenge of handling the large amounts of data
+ that are now routinely generated from DNA sequencing centers."""
+
+ homepage = "https://pypi.io/packages/source/d/deepTools"
+ url = "https://pypi.io/packages/source/d/deepTools/deepTools-2.5.2.tar.gz"
+
+ version('2.5.2', 'ba8a44c128c6bb1ed4ebdb20bf9ae9c2')
+
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.9.0:', type=('build', 'run'))
+ depends_on('py-scipy@0.17.0:', type=('build', 'run'))
+ depends_on('py-py2bit@0.2.0:', type=('build', 'run'))
+ depends_on('py-pybigwig@0.2.1:', type=('build', 'run'))
+ depends_on('py-pysam@0.8.2:', type=('build', 'run'))
+ depends_on('py-matplotlib@1.4.0:', type=('build', 'run'))
+ depends_on('py-numpydoc@0.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dev/__init__.py.patch b/var/spack/repos/builtin/packages/py-dev/__init__.py.patch
new file mode 100644
index 0000000000..1c783b82c8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dev/__init__.py.patch
@@ -0,0 +1,10 @@
+--- a/dev/__init__.py 2017-03-24 13:46:56.211385166 +0000
++++ b/dev/__init__.py 2017-03-24 13:47:01.535332256 +0000
+@@ -1,6 +1,6 @@
+ """
+
+-🚧 About
++About
+ --------
+
+ dev is a collection of Python developer tools presented as a
diff --git a/var/spack/repos/builtin/packages/py-dev/package.py b/var/spack/repos/builtin/packages/py-dev/package.py
new file mode 100644
index 0000000000..49b0e9b2c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dev/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDev(PythonPackage):
+ """libraries and tools for Python development"""
+
+ homepage = "https://pypi.python.org/pypi/dev"
+ url = "https://pypi.io/packages/source/d/dev/dev-0.4.0.tar.gz"
+
+ version('0.4.0', '00449cf0b347c32da9c840adcb4cf24b')
+
+ patch('__init__.py.patch')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-dill/package.py b/var/spack/repos/builtin/packages/py-dill/package.py
new file mode 100644
index 0000000000..f5be93cdd7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dill/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDill(PythonPackage):
+ """Serialize all of python """
+
+ homepage = "https://github.com/uqfoundation/dill"
+ url = "https://pypi.io/packages/source/d/dill/dill-0.2.6.zip"
+
+ version('0.2.6', 'f8b98b15223d23431024349f2102b4f9')
+ version('0.2.5', 'c9eecc32351f4934e2e67740a40397f6')
+ version('0.2.4', '5d10cd1cafea38a45bcd4542f2ca3adc')
+ version('0.2.3', '0b6c4f55da320893991cc32628a6e9be')
+ version('0.2.2', 'a282b81a6d289f91218bba8d07f49bd8')
+ version('0.2.1', 'b2354a5717da6228acae33cb13bc407b')
+ version('0.2', '759002d9b71605cde2a7a052dad96b5d')
+
+ depends_on('python@2.5:2.8,3.1:')
+
+ depends_on('py-setuptools@0.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-dlcpar/package.py b/var/spack/repos/builtin/packages/py-dlcpar/package.py
new file mode 100644
index 0000000000..22e1ccd5a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dlcpar/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDlcpar(PythonPackage):
+ """FIXME: Put a proper description of your package here."""
+
+ homepage = "https://www.cs.hmc.edu/~yjw/software/dlcpar/"
+ url = "https://www.cs.hmc.edu/~yjw/software/dlcpar/pub/sw/dlcpar-1.0.tar.gz"
+
+ version('1.0', '0bf684436df3554e46d5e992349eeaec')
+
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-docutils/package.py b/var/spack/repos/builtin/packages/py-docutils/package.py
index 00741284df..25881c9e77 100644
--- a/var/spack/repos/builtin/packages/py-docutils/package.py
+++ b/var/spack/repos/builtin/packages/py-docutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,8 +33,18 @@ class PyDocutils(PythonPackage):
markup language."""
homepage = "http://docutils.sourceforge.net/"
- url = "https://pypi.python.org/packages/source/d/docutils/docutils-0.12.tar.gz"
+ url = "https://pypi.io/packages/source/d/docutils/docutils-0.13.1.tar.gz"
- version('0.13.1', 'ea4a893c633c788be9b8078b6b305d53',
- url="https://pypi.python.org/packages/05/25/7b5484aca5d46915493f1fd4ecb63c38c333bd32aa9ad6e19da8d08895ae/docutils-0.13.1.tar.gz")
+ import_modules = [
+ 'docutils', 'docutils.languages', 'docutils.parsers',
+ 'docutils.readers', 'docutils.transforms', 'docutils.utils',
+ 'docutils.writers', 'docutils.parsers.rst',
+ 'docutils.parsers.rst.directives', 'docutils.parsers.rst.languages',
+ 'docutils.utils.math', 'docutils.writers.html4css1',
+ 'docutils.writers.html5_polyglot', 'docutils.writers.latex2e',
+ 'docutils.writers.odf_odt', 'docutils.writers.pep_html',
+ 'docutils.writers.s5_html', 'docutils.writers.xetex'
+ ]
+
+ version('0.13.1', 'ea4a893c633c788be9b8078b6b305d53')
version('0.12', '4622263b62c5c771c03502afa3157768')
diff --git a/var/spack/repos/builtin/packages/py-doxypy/package.py b/var/spack/repos/builtin/packages/py-doxypy/package.py
new file mode 100644
index 0000000000..eb81b080c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-doxypy/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDoxypy(PythonPackage):
+ """doxypy is an input filter for Doxygen."""
+
+ homepage = "https://pypi.python.org/pypi/doxypy"
+ url = "https://pypi.io/packages/source/d/doxypy/doxypy-0.3.tar.gz"
+
+ version('0.3', '3b52289e0962d31b92af8be0eef8cbb2')
diff --git a/var/spack/repos/builtin/packages/py-doxypypy/package.py b/var/spack/repos/builtin/packages/py-doxypypy/package.py
new file mode 100644
index 0000000000..243909dffc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-doxypypy/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDoxypypy(PythonPackage):
+ """A Doxygen filter for Python.
+
+ A more Pythonic version of doxypy, a Doxygen filter for Python.
+ """
+
+ homepage = "https://github.com/Feneric/doxypypy"
+ url = "https://pypi.io/packages/source/d/doxypypy/doxypypy-0.8.8.6.tar.gz"
+
+ version('0.8.8.6', '6b3fe4eff5d459400071b626333fe15f')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-dryscrape/package.py b/var/spack/repos/builtin/packages/py-dryscrape/package.py
new file mode 100644
index 0000000000..675b8f87e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dryscrape/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDryscrape(PythonPackage):
+ """a lightweight Javascript-aware, headless web scraping library
+ for Python"""
+
+ homepage = "https://github.com/niklasb/dryscrape"
+ url = "https://pypi.io/packages/source/d/dryscrape/dryscrape-1.0.tar.gz"
+
+ version('develop', git="https://github.com/niklasb/dryscrape",
+ branch="master")
+ version('1.0', '267e380a8efaf9cd8fd94de1639d3198')
+
+ depends_on('py-lxml', type=('build', 'run'))
+ depends_on('py-webkit-server@1.0:', type=('build', 'run'))
+ depends_on('py-xvfbwrapper', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dxchange/package.py b/var/spack/repos/builtin/packages/py-dxchange/package.py
new file mode 100644
index 0000000000..6c04f119ae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dxchange/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyDxchange(PythonPackage):
+ """DXchange provides an interface with tomoPy and raw tomographic data
+ collected at different synchrotron facilities."""
+
+ homepage = "https://github.com/data-exchange/dxchange"
+ url = "https://github.com/data-exchange/dxchange/archive/v0.1.2.tar.gz"
+
+ import_modules = ['dxchange']
+
+ version('0.1.2', '36633bb67a1e7d1fb60c2300adbcbab3')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-netcdf4', type=('build', 'run'))
+ depends_on('py-spefile', type=('build', 'run'))
+ depends_on('py-edffile', type=('build', 'run'))
+ depends_on('py-tifffile', type=('build', 'run'))
+ depends_on('py-dxfile', type=('build', 'run'))
+ depends_on('py-olefile', type=('build', 'run'))
+ depends_on('py-astropy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-dxfile/package.py b/var/spack/repos/builtin/packages/py-dxfile/package.py
new file mode 100644
index 0000000000..f131b51f85
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-dxfile/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyDxfile(PythonPackage):
+ """Scientific Data Exchange [A1] is a set of guidelines for storing scientific
+ data and metadata in a Hierarchical Data Format 5 [B6] file."""
+
+ homepage = "https://github.com/data-exchange/dxfile"
+ url = "https://github.com/data-exchange/dxfile/archive/v0.4.tar.gz"
+
+ import_modules = ['dxfile']
+
+ version('0.4', '0402cd38aefdfd5ce92feb43dda18947')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-h5py', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py b/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py
new file mode 100644
index 0000000000..1a116c5a15
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-easybuild-easyblocks/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Kenneth Hoste, kenneth.hoste@gmail.com
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyEasybuildEasyblocks(PythonPackage):
+ """Collection of easyblocks for EasyBuild, a software build and
+ installation framework for (scientific) software on HPC systems.
+ """
+
+ homepage = 'http://hpcugent.github.io/easybuild/'
+ url = 'https://pypi.io/packages/source/e/easybuild-easyblocks/easybuild-easyblocks-3.1.2.tar.gz'
+
+ version('3.1.2', 'be08da30c07e67ed3e136e8d38905fbc')
+
+ depends_on('py-easybuild-framework@3.1:', when='@3.1:', type='run')
diff --git a/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py b/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py
new file mode 100644
index 0000000000..2acb09213b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-easybuild-easyconfigs/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Kenneth Hoste, kenneth.hoste@gmail.com
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyEasybuildEasyconfigs(PythonPackage):
+ """Collection of easyconfig files for EasyBuild, a software build and
+ installation framework for (scientific) software on HPC systems.
+ """
+
+ homepage = 'http://hpcugent.github.io/easybuild/'
+ url = 'https://pypi.io/packages/source/e/easybuild-easyconfigs/easybuild-easyconfigs-3.1.2.tar.gz'
+
+ version('3.1.2', '13a4a97fe8a5b9a94f885661cf497d13')
+
+ depends_on('py-easybuild-framework@3.1:', when='@3.1:', type='run')
+ depends_on('py-easybuild-easyblocks@3.1.2:', when='@3.1.2', type='run')
diff --git a/var/spack/repos/builtin/packages/py-easybuild-framework/package.py b/var/spack/repos/builtin/packages/py-easybuild-framework/package.py
new file mode 100644
index 0000000000..61e4ee1c70
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-easybuild-framework/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Kenneth Hoste, kenneth.hoste@gmail.com
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyEasybuildFramework(PythonPackage):
+ """The core of EasyBuild, a software build and installation framework
+ for (scientific) software on HPC systems.
+ """
+
+ homepage = 'http://hpcugent.github.io/easybuild/'
+ url = 'https://pypi.io/packages/source/e/easybuild-framework/easybuild-framework-3.1.2.tar.gz'
+
+ version('3.1.2', '283bc5f6bdcb90016b32986d52fd04a8')
+
+ depends_on('python@2.6:2.8', type='run')
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-vsc-base@2.5.4:', when='@2.9:', type='run')
+ depends_on('py-vsc-install', type='run') # only required for tests (python -O -m test.framework.suite)
diff --git a/var/spack/repos/builtin/packages/py-edffile/package.py b/var/spack/repos/builtin/packages/py-edffile/package.py
new file mode 100644
index 0000000000..460840e708
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-edffile/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyEdffile(PythonPackage):
+ """Generic class for Edf files manipulation."""
+
+ homepage = "https://github.com/vasole/pymca/blob/master/PyMca5/PyMcaIO/EdfFile.py"
+ url = "https://github.com/conda-forge/edffile-feedstock.git"
+
+ import_modules = ['EdfFile']
+
+ version('5.0.0', git='https://github.com/conda-forge/edffile-feedstock.git',
+ commit='be5ab4199db9f8209c59e31874934b8536b52301')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+
+ build_directory = 'recipe/src'
diff --git a/var/spack/repos/builtin/packages/py-elasticsearch/package.py b/var/spack/repos/builtin/packages/py-elasticsearch/package.py
new file mode 100644
index 0000000000..8b324b29e2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-elasticsearch/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyElasticsearch(PythonPackage):
+ """Python client for Elasticsearch"""
+
+ homepage = "https://github.com/elastic/elasticsearch-py"
+ url = "https://pypi.io/packages/source/e/elasticsearch/elasticsearch-5.2.0.tar.gz"
+
+ version('5.2.0', '66692fd1b4189039206c2fde4a4d616a')
+ version('2.3.0', '2550f3b51629cf1ef9636608af92c340')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-urllib3@1.8:1.999', type=('build', 'run'))
+ # tests_require
+ # depends_on('py-requests@1.0.0:2.9.999', type=('build', 'run'))
+ # depends_on('py-nose', type=('build', 'run'))
+ # depends_on('py-coverage', type=('build', 'run'))
+ # depends_on('py-mock', type=('build', 'run'))
+ # depends_on('py-pyyaml', type=('build', 'run'))
+ # depends_on('py-nosexcover', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-elephant/package.py b/var/spack/repos/builtin/packages/py-elephant/package.py
new file mode 100644
index 0000000000..3cc36b8769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-elephant/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyElephant(PythonPackage):
+ """Elephant is a package for analysis of electrophysiology data in Python
+ """
+
+ homepage = "http://neuralensemble.org/elephant"
+ url = "https://pypi.io/packages/source/e/elephant/elephant-0.3.0.tar.gz"
+
+ version('0.3.0', '84e69e6628fd617af469780c30d2da6c')
+
+ variant('docs', default=False, description='Build the documentation')
+ variant('pandas', default=True, description='Build with pandas')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-neo@0.3.4:', type=('build', 'run')) # > 0.3.3 ?
+ depends_on('py-numpy@1.8.2:', type=('build', 'run'))
+ depends_on('py-quantities@0.10.1:', type=('build', 'run'))
+ depends_on('py-scipy@0.14.0:', type=('build', 'run'))
+ depends_on('py-pandas@0.14.1:', type=('build', 'run'), when='+pandas')
+ depends_on('py-numpydoc@0.5:', type=('build', 'run'), when='+docs')
+ depends_on('py-sphinx@1.2.2:', type=('build', 'run'), when='+docs')
+ # depends_on('py-nose@1.3.3:', type=('build', 'run')) # tests
diff --git a/var/spack/repos/builtin/packages/py-emcee/package.py b/var/spack/repos/builtin/packages/py-emcee/package.py
index 6419a9c40e..1fc6d0ac27 100644
--- a/var/spack/repos/builtin/packages/py-emcee/package.py
+++ b/var/spack/repos/builtin/packages/py-emcee/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,8 +30,9 @@ class PyEmcee(PythonPackage):
Affine Invariant Markov chain Monte Carlo (MCMC) Ensemble sampler."""
homepage = "http://dan.iel.fm/emcee/current/"
- url = "https://pypi.python.org/packages/source/e/emcee/emcee-2.1.0.tar.gz"
+ url = "https://pypi.io/packages/source/e/emcee/emcee-2.1.0.tar.gz"
version('2.1.0', 'c6b6fad05c824d40671d4a4fc58dfff7')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-entrypoints/package.py b/var/spack/repos/builtin/packages/py-entrypoints/package.py
index 944999d69b..335c04267c 100644
--- a/var/spack/repos/builtin/packages/py-entrypoints/package.py
+++ b/var/spack/repos/builtin/packages/py-entrypoints/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,15 @@
from spack import *
-class PyEntrypoints(Package):
+class PyEntrypoints(PythonPackage):
"""Discover and load entry points from installed packages."""
homepage = "https://pypi.python.org/pypi/entrypoints"
- url = "https://files.pythonhosted.org/packages/f8/ad/0e77a853c745a15981ab51fa9a0cb4eca7a7a007b4c1970106ee6ba01e0c/entrypoints-0.2.2-py2.py3-none-any.whl"
+ url = "https://pypi.io/packages/source/e/entrypoints/entrypoints-0.2.3.tar.gz"
- version('0.2.2', '73bd7ce92c19b25dc5a20aff41be996a', expand=False)
+ import_modules = ['entrypoints']
- depends_on('py-pip', type='build')
+ version('0.2.3', '0d3ad1b0130d91e3596ef3a59f25a56c')
- def install(self, spec, prefix):
- pip = which('pip')
- pip('install', self.stage.archive_file, '--prefix={0}'.format(prefix))
+ depends_on('python@2.7:', type=('build', 'run'))
+ depends_on('py-configparser', when='^python@:2.8', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-enum34/package.py b/var/spack/repos/builtin/packages/py-enum34/package.py
index cc111ce092..35808b0094 100644
--- a/var/spack/repos/builtin/packages/py-enum34/package.py
+++ b/var/spack/repos/builtin/packages/py-enum34/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,15 +29,13 @@ class PyEnum34(PythonPackage):
"""Python 3.4 Enum backported to 3.3, 3.2, 3.1, 2.7, 2.6, 2.5, and 2.4."""
homepage = "https://pypi.python.org/pypi/enum34"
- url = "https://pypi.python.org/packages/source/e/enum34/enum34-1.1.6.tar.gz"
+ url = "https://pypi.io/packages/source/e/enum34/enum34-1.1.6.tar.gz"
- version('1.1.6', '5f13a0841a61f7fc295c514490d120d0',
- url="https://pypi.python.org/packages/bf/3e/31d502c25302814a7c2f1d3959d2a3b3f78e509002ba91aea64993936876/enum34-1.1.6.tar.gz")
+ version('1.1.6', '5f13a0841a61f7fc295c514490d120d0')
- depends_on('python@2.4:2.8,3.3:')
+ depends_on('python')
# This dependency breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
- # depends_on('py-ordereddict', when='^python@:2.6.999', type=('build', 'run')) # noqa
-
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-ordereddict', when='^python@:2.6', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-epydoc/package.py b/var/spack/repos/builtin/packages/py-epydoc/package.py
index e13d431f91..e6eed4c94c 100644
--- a/var/spack/repos/builtin/packages/py-epydoc/package.py
+++ b/var/spack/repos/builtin/packages/py-epydoc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,6 +29,6 @@ class PyEpydoc(PythonPackage):
"""Epydoc is a tool for generating API documentation documentation for
Python modules, based on their docstrings."""
homepage = "https://pypi.python.org/pypi/epydoc"
- url = "https://pypi.python.org/packages/source/e/epydoc/epydoc-3.0.1.tar.gz"
+ url = "https://pypi.io/packages/source/e/epydoc/epydoc-3.0.1.tar.gz"
version('3.0.1', '36407974bd5da2af00bf90ca27feeb44')
diff --git a/var/spack/repos/builtin/packages/py-espresso/package.py b/var/spack/repos/builtin/packages/py-espresso/package.py
new file mode 100644
index 0000000000..768fae16ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-espresso/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyEspresso(CMakePackage):
+ """ESPResSo is a highly versatile software package for performing and
+ analyzing scientific Molecular Dynamics many-particle simulations of
+ coarse-grained atomistic or bead-spring models as they are used in
+ soft matter research in physics, chemistry and molecular biology. It
+ can be used to simulate systems such as polymers, liquid crystals,
+ colloids, polyelectrolytes, ferrofluids and biological systems, for
+ example DNA and lipid membranes. It also has a DPD and lattice
+ Boltzmann solver for hydrodynamic interactions, and allows several
+ particle couplings to the LB fluid.
+ """
+ homepage = "http://espressomd.org/"
+ url = "https://github.com/espressomd/espresso/tarball/v4.0"
+
+ version('develop', git='https://github.com/espressomd/espresso.git', branch='python')
+
+ depends_on("cmake@3.0:", type='build')
+ depends_on("mpi")
+ depends_on("boost+serialization+filesystem+system+python+mpi")
+ extends("python")
+ depends_on("python")
+ depends_on("py-cython@0.23:")
+ depends_on("py-numpy")
+ depends_on("fftw")
diff --git a/var/spack/repos/builtin/packages/espressopp/package.py b/var/spack/repos/builtin/packages/py-espressopp/package.py
index 2903a02f7d..53d1cc4f50 100644
--- a/var/spack/repos/builtin/packages/espressopp/package.py
+++ b/var/spack/repos/builtin/packages/py-espressopp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Espressopp(CMakePackage):
+class PyEspressopp(CMakePackage):
"""ESPResSo++ is an extensible, flexible, fast and parallel simulation
software for soft matter research. It is a highly versatile software
package for the scientific simulation and analysis of coarse-grained
@@ -36,10 +36,10 @@ class Espressopp(CMakePackage):
url = "https://github.com/espressopp/espressopp/tarball/v1.9.4.1"
version('develop', git='https://github.com/espressopp/espressopp.git', branch='master')
+ version('1.9.5', '13a93c30b07132b5e5fa0d828aa17d79')
version('1.9.4.1', '0da74a6d4e1bfa6a2a24fca354245a4f')
version('1.9.4', 'f2a27993a83547ad014335006eea74ea')
- variant('debug', default=False, description='Build debug version')
variant('ug', default=False, description='Build user guide')
variant('pdf', default=False, description='Build user guide in pdf format')
variant('dg', default=False, description='Build developer guide')
@@ -48,31 +48,27 @@ class Espressopp(CMakePackage):
depends_on("mpi")
depends_on("boost+serialization+filesystem+system+python+mpi", when='@1.9.4:')
extends("python")
- depends_on("python@2:2.7.13")
+ depends_on("python@2:2.8")
depends_on("py-mpi4py@2.0.0:", when='@1.9.4', type=('build', 'run'))
depends_on("py-mpi4py@1.3.1:", when='@1.9.4.1:', type=('build', 'run'))
depends_on("fftw")
depends_on("py-sphinx", when="+ug", type='build')
depends_on("py-sphinx", when="+pdf", type='build')
- depends_on('py-numpy', when="+ug", type='build')
- depends_on('py-numpy', when="+pdf", type='build')
+ depends_on('py-numpy', type=('build', 'run'))
depends_on('py-matplotlib', when="+ug", type='build')
depends_on('py-matplotlib', when="+pdf", type='build')
depends_on("texlive", when="+pdf", type='build')
depends_on("doxygen", when="+dg", type='build')
- def build_type(self):
- spec = self.spec
- if '+debug' in spec:
- return 'Debug'
- else:
- return 'Release'
-
def cmake_args(self):
- return ['-DEXTERNAL_MPI4PY=ON', '-DEXTERNAL_BOOST=ON']
+ return [
+ '-DEXTERNAL_MPI4PY=ON',
+ '-DEXTERNAL_BOOST=ON',
+ '-DWITH_RC_FILES=OFF'
+ ]
def build(self, spec, prefix):
- with working_dir(self.build_directory()):
+ with working_dir(self.build_directory):
make()
if '+ug' in spec:
make("ug", parallel=False)
diff --git a/var/spack/repos/builtin/packages/py-et-xmlfile/package.py b/var/spack/repos/builtin/packages/py-et-xmlfile/package.py
new file mode 100644
index 0000000000..bbe649f042
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-et-xmlfile/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyEtXmlfile(PythonPackage):
+ """An implementation of lxml.xmlfile for the standard library."""
+
+ homepage = "https://bitbucket.org/openpyxl/et_xmlfile"
+ url = "https://pypi.io/packages/source/e/et_xmlfile/et_xmlfile-1.0.1.tar.gz"
+
+ version('1.0.1', 'f47940fd9d556375420b2e276476cfaf')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-execnet/package.py b/var/spack/repos/builtin/packages/py-execnet/package.py
new file mode 100644
index 0000000000..c2b3d38b6b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-execnet/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyExecnet(PythonPackage):
+ """execnet provides a share-nothing model with channel-send/receive
+ communication for distributing execution across many Python interpreters
+ across version, platform and network barriers."""
+
+ homepage = "http://codespeak.net/execnet"
+ url = "https://pypi.io/packages/source/e/execnet/execnet-1.4.1.tar.gz"
+
+ version('1.4.1', '0ff84b6c79d0dafb7e2971629c4d127a')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-apipkg@1.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-fastaindex/package.py b/var/spack/repos/builtin/packages/py-fastaindex/package.py
new file mode 100644
index 0000000000..e22ff80326
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fastaindex/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFastaindex(PythonPackage):
+ """FastA index (.fai) handler compatible with samtools faidx is extended
+ with 4 columns storing counts for A, C, G & T for each sequence.."""
+
+ homepage = "https://github.com/lpryszcz/FastaIndex"
+ url = "https://pypi.io/packages/source/F/FastaIndex/FastaIndex-0.11rc7.tar.gz"
+
+ version('0.11rc7', '882c973d968d9db596edfd0fbb07e3a8')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-fasteners/package.py b/var/spack/repos/builtin/packages/py-fasteners/package.py
new file mode 100644
index 0000000000..54a21ceae4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fasteners/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFasteners(PythonPackage):
+ """A python package that provides useful locks."""
+
+ homepage = "https://github.com/harlowja/fasteners"
+ url = "https://pypi.io/packages/source/f/fasteners/fasteners-0.14.1.tar.gz"
+
+ version('0.14.1', 'fcb13261c9b0039d9b1c4feb9bc75e04')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-monotonic@0.1:', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-faststructure/package.py b/var/spack/repos/builtin/packages/py-faststructure/package.py
new file mode 100644
index 0000000000..ddbf1b5d8c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-faststructure/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFaststructure(PythonPackage):
+ """FastStructure is a fast algorithm for inferring population structure
+ from large SNP genotype data."""
+
+ homepage = "https://github.com/rajanil/fastStructure"
+ url = "https://github.com/rajanil/fastStructure/archive/v1.0.tar.gz"
+
+ version('1.0', '5cbb76e7d49e27a57046ab641b666f97')
+
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('gsl')
diff --git a/var/spack/repos/builtin/packages/py-fiscalyear/package.py b/var/spack/repos/builtin/packages/py-fiscalyear/package.py
new file mode 100644
index 0000000000..e86e2a397d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fiscalyear/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFiscalyear(PythonPackage):
+ """fiscalyear is a small, lightweight Python module providing helpful
+ utilities for managing the fiscal calendar. It is designed as an extension
+ of the built-in datetime and calendar modules, adding the ability to query
+ the fiscal year and fiscal quarter of a date or datetime object."""
+
+ homepage = "https://github.com/adamjstewart/fiscalyear"
+ url = "https://pypi.io/packages/source/f/fiscalyear/fiscalyear-0.1.0.tar.gz"
+
+ import_modules = ['fiscalyear']
+
+ version('master', branch='master',
+ git='https://github.com/adamjstewart/fiscalyear.git')
+ version('0.1.0', '30e36b259f3e72e4929abbf259335742')
+
+ depends_on('python@2.5:')
+ depends_on('py-setuptools', type='build')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-pytest', type='test')
+ # depends_on('py-pytest-runner', type='test')
diff --git a/var/spack/repos/builtin/packages/py-flake8/package.py b/var/spack/repos/builtin/packages/py-flake8/package.py
index 17d7cea343..c4926ae64f 100644
--- a/var/spack/repos/builtin/packages/py-flake8/package.py
+++ b/var/spack/repos/builtin/packages/py-flake8/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -58,11 +58,15 @@ class PyFlake8(PythonPackage):
depends_on('py-mccabe@0.2.1:0.4.0', when='@2.5.4', type=('build', 'run'))
# These dependencies breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
- # depends_on('py-configparser', when='^python@:3.3.999', type=('build', 'run')) # noqa
- # depends_on('py-enum34', when='^python@:3.1.999', type=('build', 'run'))
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-configparser', when='^python@:3.3', type=('build', 'run'))
+ # depends_on('py-enum34', when='^python@:3.1', type=('build', 'run'))
depends_on('py-configparser', type=('build', 'run'))
depends_on('py-enum34', type=('build', 'run'))
# TODO: Add test dependencies
# depends_on('py-nose', type='test')
+
+ def patch(self):
+ """Filter pytest-runner requirement out of setup.py."""
+ filter_file("['pytest-runner']", "[]", 'setup.py', string=True)
diff --git a/var/spack/repos/builtin/packages/py-flask/package.py b/var/spack/repos/builtin/packages/py-flask/package.py
new file mode 100644
index 0000000000..fb59c93a4e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flask/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFlask(PythonPackage):
+ """A microframework based on Werkzeug, Jinja2 and good intentions"""
+
+ homepage = "http://github.com/pallets/flask"
+ url = "https://pypi.io/packages/source/F/Flask/Flask-0.11.1.tar.gz"
+
+ version('0.12.1', '76e9fee5c3afcf4634b9baf96c578207')
+ version('0.11.1', 'd2af95d8fe79cf7da099f062dd122a08')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-werkzeug@0.7:', type=('build', 'run'))
+ depends_on('py-jinja2@2.4:', type=('build', 'run'))
+ depends_on('py-itsdangerous@0.21:', type=('build', 'run'))
+ depends_on('py-click@2.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-flexx/package.py b/var/spack/repos/builtin/packages/py-flexx/package.py
new file mode 100644
index 0000000000..30485eafa7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-flexx/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFlexx(PythonPackage):
+ """Write desktop and web apps in pure Python."""
+
+ homepage = "http://flexx.readthedocs.io"
+ url = "https://pypi.io/packages/source/f/flexx/flexx-0.4.1.zip"
+
+ version('0.4.1', '7138a378aa68d781212c4b2cfb6ddfcb')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-tornado', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-funcsigs/package.py b/var/spack/repos/builtin/packages/py-funcsigs/package.py
index ea8b71f25f..d2d8ff2de5 100644
--- a/var/spack/repos/builtin/packages/py-funcsigs/package.py
+++ b/var/spack/repos/builtin/packages/py-funcsigs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyFuncsigs(PythonPackage):
"""Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2."""
homepage = "https://pypi.python.org/pypi/funcsigs"
- url = "https://pypi.python.org/packages/source/f/funcsigs/funcsigs-0.4.tar.gz"
+ url = "https://pypi.io/packages/source/f/funcsigs/funcsigs-0.4.tar.gz"
version('0.4', 'fb1d031f284233e09701f6db1281c2a5')
diff --git a/var/spack/repos/builtin/packages/py-functools32/package.py b/var/spack/repos/builtin/packages/py-functools32/package.py
index f2fb0df555..aebf170e46 100644
--- a/var/spack/repos/builtin/packages/py-functools32/package.py
+++ b/var/spack/repos/builtin/packages/py-functools32/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,6 +30,6 @@ class PyFunctools32(PythonPackage):
PyPy."""
homepage = "https://github.com/MiCHiLU/python-functools32"
- url = "https://pypi.python.org/packages/source/f/functools32/functools32-3.2.3-2.tar.gz"
+ url = "https://pypi.io/packages/source/f/functools32/functools32-3.2.3-2.tar.gz"
version('3.2.3-2', '09f24ffd9af9f6cd0f63cb9f4e23d4b2')
diff --git a/var/spack/repos/builtin/packages/py-future/package.py b/var/spack/repos/builtin/packages/py-future/package.py
new file mode 100644
index 0000000000..1ebce3c7d1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-future/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyFuture(PythonPackage):
+ """Clean single-source support for Python 3 and 2"""
+
+ homepage = "https://python-future.org/"
+ url = "https://pypi.io/packages/source/f/future/future-0.16.0.tar.gz"
+
+ version('0.16.0', '3e8e88a2bda48d54b1da7634d04760d7')
+ version('0.15.2', 'a68eb3c90b3b76714c5ceb8c09ea3a06')
+
+ depends_on('py-setuptools', type='build')
+ # depends_on('py-importlib', type=('build', 'run'), when='^python@2.6')
+ # depends_on('py-argparse', type=('build', 'run'), when='^python@2.6')
diff --git a/var/spack/repos/builtin/packages/py-futures/package.py b/var/spack/repos/builtin/packages/py-futures/package.py
index c6c1d8134f..c3370cbeaa 100644
--- a/var/spack/repos/builtin/packages/py-futures/package.py
+++ b/var/spack/repos/builtin/packages/py-futures/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-genders/package.py b/var/spack/repos/builtin/packages/py-genders/package.py
index 2123f4eb3f..248e4764cc 100644
--- a/var/spack/repos/builtin/packages/py-genders/package.py
+++ b/var/spack/repos/builtin/packages/py-genders/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-genshi/package.py b/var/spack/repos/builtin/packages/py-genshi/package.py
index 462dbfe802..a9296ab6ed 100644
--- a/var/spack/repos/builtin/packages/py-genshi/package.py
+++ b/var/spack/repos/builtin/packages/py-genshi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-git-review/package.py b/var/spack/repos/builtin/packages/py-git-review/package.py
new file mode 100644
index 0000000000..596f8016aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-git-review/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyGitReview(PythonPackage):
+ """git-review is a tool that helps submitting git branches to gerrit"""
+
+ homepage = "http://docs.openstack.org/infra/git-review"
+ url = "https://pypi.io/packages/source/g/git-review/git-review-1.25.0.tar.gz"
+
+ version('1.25.0', '0a061d0e23ee9b93c6212a3fe68fb7ab')
+ version('1.24', '145116fe58a3487c3ad1bf55538fd741')
+ version('1.23', 'b0023ad8c037ab710da81412194c6a3a')
+ version('1.22', 'e889df5838c059362e5e0d411bde9c48')
+ version('1.21', 'eee88bdef1aa37a55cc8becd48c6aba9')
+
+ extends('python')
+
+ depends_on('py-setuptools', type=('build'))
+ depends_on('py-pbr', type=('build', 'run'))
+ depends_on('py-requests@1.1:', type=('build', 'run'))
+ depends_on('git', type=('run'))
+ depends_on('tk', type=('run'))
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('PBR_VERSION', self.spec.version)
diff --git a/var/spack/repos/builtin/packages/py-git2/package.py b/var/spack/repos/builtin/packages/py-git2/package.py
new file mode 100644
index 0000000000..9e601aa3a2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-git2/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyGit2(PythonPackage):
+ """Pygit2 is a set of Python bindings to the libgit2 shared library,
+ libgit2 implements the core of Git.
+ """
+
+ homepage = "http://www.pygit2.org/"
+ url = "https://pypi.io/packages/source/p/pygit2/pygit2-0.24.1.tar.gz"
+
+ version('0.24.1', 'dd98b6a9fded731e36ca5a40484c8545')
+
+ extends('python')
+ depends_on('py-setuptools', type='build')
+ # Version must match with libgit2
+ # See: http://www.pygit2.org/install.html
+ depends_on('libgit2@0.24:', when='@0.24:')
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-cffi', type=('build', 'run'))
+
+ def setup_environment(self, spack_env, run_env):
+ spec = self.spec
+ # http://www.pygit2.org/install.html
+ spack_env.set('LIBGIT2', spec['libgit2'].prefix)
+ spack_env.set('LIBGIT2_LIB', spec['libgit2'].prefix.lib)
diff --git a/var/spack/repos/builtin/packages/py-gnuplot/package.py b/var/spack/repos/builtin/packages/py-gnuplot/package.py
index a23aa2585f..e6972d280f 100644
--- a/var/spack/repos/builtin/packages/py-gnuplot/package.py
+++ b/var/spack/repos/builtin/packages/py-gnuplot/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-griddataformats/package.py b/var/spack/repos/builtin/packages/py-griddataformats/package.py
new file mode 100644
index 0000000000..0880d860eb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-griddataformats/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyGriddataformats(PythonPackage):
+ """The gridDataFormats package provides classes to unify reading
+ and writing n-dimensional datasets. One can read grid data from
+ files, make them available as a Grid object, and write out the
+ data again."""
+
+ homepage = "http://www.mdanalysis.org/GridDataFormats"
+ url = "https://pypi.io/packages/source/G/GridDataFormats/GridDataFormats-0.3.3.tar.gz"
+
+ version('0.3.3', '5c83d3bdd421eebcee10111942c5a21f')
+
+ depends_on('python@2.7:')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.0.3:', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-guidata/package.py b/var/spack/repos/builtin/packages/py-guidata/package.py
new file mode 100644
index 0000000000..cf0e8447ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-guidata/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyGuidata(PythonPackage):
+ """Automatic graphical user interfaces generation for easy dataset editing
+ and display"""
+
+ homepage = "https://github.com/PierreRaybaut/guidata"
+ url = "https://pypi.io/packages/source/g/guidata/guidata-1.7.5.zip"
+
+ version('1.7.5', '915188c02ad3c89951ee260db65d84a7')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyqt@4:', type=('build', 'run'))
+ depends_on('py-spyder@2.0:2.9.9', type=('build', 'run'))
+ depends_on('py-h5py', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-guiqwt/package.py b/var/spack/repos/builtin/packages/py-guiqwt/package.py
new file mode 100644
index 0000000000..f135b24c57
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-guiqwt/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyGuiqwt(PythonPackage):
+ """guiqwt is a set of tools for curve and image plotting
+ (extension to PythonQwt)"""
+
+ homepage = "https://github.com/PierreRaybaut/guiqwt"
+ url = "https://pypi.io/packages/source/g/guiqwt/guiqwt-3.0.2.zip"
+
+ version('3.0.2', 'b49cd9706f56eb5d519390ba709d8c8c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.3:', type=('build', 'run'))
+ depends_on('py-scipy@0.7:', type=('build', 'run'))
+ depends_on('py-guidata@1.7.0:', type=('build', 'run'))
+ depends_on('py-pythonqwt@0.5.0:', type=('build', 'run'))
+ depends_on('py-pillow', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-h5py/package.py b/var/spack/repos/builtin/packages/py-h5py/package.py
index 666905e5c0..94dd8d6986 100644
--- a/var/spack/repos/builtin/packages/py-h5py/package.py
+++ b/var/spack/repos/builtin/packages/py-h5py/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class PyH5py(PythonPackage):
HDF5 library from Python."""
homepage = "https://pypi.python.org/pypi/h5py"
- url = "https://pypi.python.org/packages/source/h/h5py/h5py-2.4.0.tar.gz"
+ url = "https://pypi.io/packages/source/h/h5py/h5py-2.4.0.tar.gz"
version('2.6.0', 'ec476211bd1de3f5ac150544189b0bf4')
version('2.5.0', '6e4301b5ad5da0d51b0a1e5ac19e3b74')
@@ -40,12 +40,12 @@ class PyH5py(PythonPackage):
# Build dependencies
depends_on('py-cython@0.19:', type='build')
- depends_on('pkg-config', type='build')
+ depends_on('py-pkgconfig', type='build')
depends_on('py-setuptools', type='build')
depends_on('hdf5@1.8.4:')
depends_on('hdf5+mpi', when='+mpi')
depends_on('mpi', when='+mpi')
- depends_on('py-mpi4py', when='+mpi')
+ depends_on('py-mpi4py', when='+mpi', type=('build', 'run'))
# Build and runtime dependencies
depends_on('py-numpy@1.6.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-html2text/package.py b/var/spack/repos/builtin/packages/py-html2text/package.py
new file mode 100644
index 0000000000..118b86e2c9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-html2text/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyHtml2text(PythonPackage):
+ """Turn HTML into equivalent Markdown-structured text."""
+
+ homepage = "https://github.com/Alir3z4/html2text/"
+ url = "https://pypi.io/packages/source/h/html2text/html2text-2016.9.19.tar.gz"
+
+ version('2016.9.19', 'd6b07e32ed21f186496f012691e02dd5')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-html5lib/package.py b/var/spack/repos/builtin/packages/py-html5lib/package.py
index 1757b44297..927614002a 100644
--- a/var/spack/repos/builtin/packages/py-html5lib/package.py
+++ b/var/spack/repos/builtin/packages/py-html5lib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,9 @@ class PyHtml5lib(PythonPackage):
"""HTML parser based on the WHATWG HTML specification."""
homepage = "https://github.com/html5lib/html5lib-python"
- url = "https://pypi.python.org/packages/ae/ae/bcb60402c60932b32dfaf19bb53870b29eda2cd17551ba5639219fb5ebf9/html5lib-0.9999999.tar.gz"
+ url = "https://pypi.io/packages/source/h/html5lib/html5lib-0.9999999.tar.gz"
version('0.9999999', 'ef43cb05e9e799f25d65d1135838a96f')
- depends_on('python@2.6:2.7,3.2:3.4')
+ depends_on('python@2.6:2.8,3.2:3.4')
depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-httpbin/package.py b/var/spack/repos/builtin/packages/py-httpbin/package.py
new file mode 100644
index 0000000000..f8411112ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-httpbin/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyHttpbin(PythonPackage):
+ """HTTP Request and Response Service"""
+
+ homepage = "https://github.com/Runscope/httpbin"
+ url = "https://pypi.io/packages/source/h/httpbin/httpbin-0.5.0.tar.gz"
+
+ version('0.5.0', '923793df99156caa484975ade96ee115')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-decorator@3.4.0:', type=('build', 'run'))
+ depends_on('py-flask@0.10.1:', type=('build', 'run'))
+ depends_on('py-itsdangerous@0.24:', type=('build', 'run'))
+ depends_on('py-markupsafe@0.23:', type=('build', 'run'))
+ depends_on('py-six@1.6.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-hypothesis/package.py b/var/spack/repos/builtin/packages/py-hypothesis/package.py
new file mode 100644
index 0000000000..ffa4e0a54e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-hypothesis/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyHypothesis(PythonPackage):
+ """A library for property based testing."""
+
+ homepage = "https://github.com/HypothesisWorks/hypothesis-python"
+ url = "https://pypi.io/packages/source/h/hypothesis/hypothesis-3.7.0.tar.gz"
+
+ import_modules = [
+ 'hypothesis', 'hypothesis.searchstrategy', 'hypothesis.extra',
+ 'hypothesis.tools', 'hypothesis.utils', 'hypothesis.vendor',
+ 'hypothesis.internal', 'hypothesis.internal.conjecture'
+ ]
+
+ # TODO: Add missing dependency required to import hypothesis.extra.django
+
+ version('3.7.0', '4afb25fa6785fceac034b63eaa2dfe28')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-enum34', type=('build', 'run'), when='^python@:2')
diff --git a/var/spack/repos/builtin/packages/py-idna/package.py b/var/spack/repos/builtin/packages/py-idna/package.py
new file mode 100644
index 0000000000..74e6c0fd5d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-idna/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyIdna(PythonPackage):
+ """Internationalized Domain Names for Python (IDNA 2008 and UTS #46) """
+
+ homepage = "https://github.com/kjd/idna"
+ url = "https://pypi.io/packages/source/i/idna/idna-2.5.tar.gz"
+
+ version('2.5', 'fc1d992bef73e8824db411bb5d21f012')
+
+ depends_on('py-setuptools', type=('build', 'link'))
+ depends_on('python@2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-igraph/package.py b/var/spack/repos/builtin/packages/py-igraph/package.py
new file mode 100644
index 0000000000..11f7c4a990
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-igraph/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyIgraph(PythonPackage):
+ """igraph is a collection of network analysis tools with the emphasis on
+ efficiency, portability and ease of use."""
+
+ homepage = "http://igraph.org/"
+ url = "http://igraph.org/nightly/get/python/python-igraph-0.7.0.tar.gz"
+
+ version('0.7.0', '32a3238cb9041b1686d7d0ba152235bf')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('igraph')
diff --git a/var/spack/repos/builtin/packages/py-imagesize/package.py b/var/spack/repos/builtin/packages/py-imagesize/package.py
index a2d08f6502..f9aa0334ae 100644
--- a/var/spack/repos/builtin/packages/py-imagesize/package.py
+++ b/var/spack/repos/builtin/packages/py-imagesize/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,10 +29,11 @@ class PyImagesize(PythonPackage):
"""Parses image file headers and returns image size. Supports PNG, JPEG,
JPEG2000, and GIF image file formats."""
- homepage = "https://pypi.python.org/pypi/imagesize"
- url = "https://pypi.python.org/packages/source/i/imagesize/imagesize-0.7.1.tar.gz"
+ homepage = "https://github.com/shibukawa/imagesize_py"
+ url = "https://pypi.io/packages/source/i/imagesize/imagesize-0.7.1.tar.gz"
- version('0.7.1', '976148283286a6ba5f69b0f81aef8052',
- url="https://pypi.python.org/packages/53/72/6c6f1e787d9cab2cc733cf042f125abec07209a58308831c9f292504e826/imagesize-0.7.1.tar.gz")
+ import_modules = ['imagesize']
+
+ version('0.7.1', '976148283286a6ba5f69b0f81aef8052')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-iminuit/package.py b/var/spack/repos/builtin/packages/py-iminuit/package.py
index 0b93a0f2b8..cbeafa683c 100644
--- a/var/spack/repos/builtin/packages/py-iminuit/package.py
+++ b/var/spack/repos/builtin/packages/py-iminuit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class PyIminuit(PythonPackage):
"""Interactive IPython-Friendly Minimizer based on SEAL Minuit2."""
homepage = "https://pypi.python.org/pypi/iminuit"
- url = "https://pypi.python.org/packages/source/i/iminuit/iminuit-1.2.tar.gz"
+ url = "https://pypi.io/packages/source/i/iminuit/iminuit-1.2.tar.gz"
version('1.2', '4701ec472cae42015e26251703e6e984')
diff --git a/var/spack/repos/builtin/packages/py-importlib/package.py b/var/spack/repos/builtin/packages/py-importlib/package.py
new file mode 100644
index 0000000000..27221dc99a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-importlib/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyImportlib(PythonPackage):
+ """Packaging for importlib from Python 2.7"""
+
+ homepage = "https://github.com/brettcannon/importlib"
+ url = "https://pypi.io/packages/source/i/importlib/importlib-1.0.4.zip"
+
+ version('1.0.4', '5f9a0803bca7ba95f670d1464984296f')
diff --git a/var/spack/repos/builtin/packages/py-ipaddress/package.py b/var/spack/repos/builtin/packages/py-ipaddress/package.py
new file mode 100644
index 0000000000..3a84366225
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ipaddress/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyIpaddress(PythonPackage):
+ """Python 3.3's ipaddress for older Python versions"""
+
+ homepage = "https://github.com/phihag/ipaddress"
+ url = "https://pypi.io/packages/source/i/ipaddress/ipaddress-1.0.18.tar.gz"
+
+ version('1.0.18', '310c2dfd64eb6f0df44aa8c59f2334a7')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-ipdb/package.py b/var/spack/repos/builtin/packages/py-ipdb/package.py
index ab7982a76a..047a8ce2a7 100644
--- a/var/spack/repos/builtin/packages/py-ipdb/package.py
+++ b/var/spack/repos/builtin/packages/py-ipdb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class PyIpdb(Package):
+class PyIpdb(PythonPackage):
"""ipdb is the iPython debugger and has many additional features, including
a better interactive debugging experience via colorized output."""
@@ -39,8 +39,7 @@ class PyIpdb(Package):
# this the original packager does not know what they are. See the 3rd party
# section on ipdb's GitHub:
# https://github.com/gotcha/ipdb#third-party-support
- extends('python')
- depends_on('python@2.6:2.7,3.2:')
+ depends_on('python@2.6:2.8,3.2:')
# Dependencies gathered from:
# https://github.com/gotcha/ipdb/blob/master/setup.py
@@ -52,7 +51,3 @@ class PyIpdb(Package):
depends_on('py-six', type=('build', 'link'))
depends_on('py-pexpect', type=('build', 'link'))
depends_on('py-prompt-toolkit', type=('build', 'link'))
-
- def install(self, spec, prefix):
- # Installation is uncomplicated, this should suffice.
- setup_py('install', '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-ipykernel/package.py b/var/spack/repos/builtin/packages/py-ipykernel/package.py
index 0303a8e43c..d703f94a25 100644
--- a/var/spack/repos/builtin/packages/py-ipykernel/package.py
+++ b/var/spack/repos/builtin/packages/py-ipykernel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,8 +42,7 @@ class PyIpykernel(PythonPackage):
version('4.1.1', '51376850c46fb006e1f8d1cd353507c5')
version('4.1.0', '638a43e4f8a15872f749090c3f0827b6')
- depends_on('python@2.7:2.7.999,3.3:')
- depends_on('py-setuptools', type='build')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-traitlets@4.1.0:', type=('build', 'run'))
depends_on('py-tornado@4.0:', type=('build', 'run'))
depends_on('py-ipython@4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-ipython-genutils/package.py b/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
index 66e8a02130..e0e0865238 100644
--- a/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
+++ b/var/spack/repos/builtin/packages/py-ipython-genutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,5 +33,4 @@ class PyIpythonGenutils(PythonPackage):
version('0.1.0', '9a8afbe0978adbcbfcb3b35b2d015a56')
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
diff --git a/var/spack/repos/builtin/packages/py-ipython/package.py b/var/spack/repos/builtin/packages/py-ipython/package.py
index 277e090faa..7f4aafa7a6 100644
--- a/var/spack/repos/builtin/packages/py-ipython/package.py
+++ b/var/spack/repos/builtin/packages/py-ipython/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,8 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
+import platform
class PyIpython(PythonPackage):
@@ -35,15 +37,23 @@ class PyIpython(PythonPackage):
version('3.1.0', 'a749d90c16068687b0ec45a27e72ef8f')
version('2.3.1', '2b7085525dac11190bfb45bb8ec8dcbf')
- depends_on('py-pygments', type=('build', 'run'))
- depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('python@2.7:2.8,3.3:')
# These dependencies breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
- # depends_on('py-backports-shutil-get-terminal-size', when="^python@:3.2.999") # noqa
- # depends_on('py-pathlib2', when="^python@:3.3.999")
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-backports-shutil-get-terminal-size', type=('build', 'run'), when="^python@:3.2") # noqa
+ # depends_on('py-pathlib2', type=('build', 'run'), when="^python@:3.3")
depends_on('py-backports-shutil-get-terminal-size', type=('build', 'run'))
- depends_on('py-pathlib2', type=('build', 'run'))
+ depends_on('py-pathlib2', type=('build', 'run'))
- depends_on('py-pickleshare', type=('build', 'run'))
- depends_on('py-simplegeneric', type=('build', 'run'))
+ depends_on('py-pygments', type=('build', 'run'))
+ depends_on('py-pickleshare', type=('build', 'run'))
+ depends_on('py-simplegeneric@0.8:', type=('build', 'run'))
+ depends_on('py-prompt-toolkit@1.0.4:1.999', type=('build', 'run'))
+ depends_on('py-traitlets@4.2:', type=('build', 'run'))
+ depends_on('py-decorator', type=('build', 'run'))
+ depends_on('py-pexpect', type=('build', 'run'))
+
+ depends_on('py-appnope', type=('build', 'run'),
+ when=sys.platform == 'darwin' and
+ int(platform.mac_ver()[0].split('.')[1]) >= 9)
diff --git a/var/spack/repos/builtin/packages/py-ipywidgets/package.py b/var/spack/repos/builtin/packages/py-ipywidgets/package.py
index eafee8e084..b7c67b241c 100644
--- a/var/spack/repos/builtin/packages/py-ipywidgets/package.py
+++ b/var/spack/repos/builtin/packages/py-ipywidgets/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,8 +33,7 @@ class PyIpywidgets(PythonPackage):
version('5.2.2', '112f3daa4aa0f42f8dda831cea3649c8')
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-ipython@4.0.0:', type=('build', 'run'))
depends_on('py-ipykernel@4.2.2:', type=('build', 'run'))
depends_on('py-traitlets@4.2.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-itsdangerous/package.py b/var/spack/repos/builtin/packages/py-itsdangerous/package.py
new file mode 100644
index 0000000000..7bb7671571
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-itsdangerous/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyItsdangerous(PythonPackage):
+ """Various helpers to pass trusted data to untrusted environments."""
+
+ homepage = "http://github.com/mitsuhiko/itsdangerous"
+ url = "https://pypi.io/packages/source/i/itsdangerous/itsdangerous-0.24.tar.gz"
+
+ version('0.24', 'a3d55aa79369aef5345c036a8a26307f')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-jdcal/package.py b/var/spack/repos/builtin/packages/py-jdcal/package.py
index 964db1448f..8b22cd191c 100644
--- a/var/spack/repos/builtin/packages/py-jdcal/package.py
+++ b/var/spack/repos/builtin/packages/py-jdcal/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,10 @@ from spack import *
class PyJdcal(PythonPackage):
"""Julian dates from proleptic Gregorian and Julian calendars"""
- homepage = 'http://github.com/phn/jdcal'
- url = "https://pypi.python.org/packages/source/j/jdcal/jdcal-1.2.tar.gz"
+ homepage = "http://github.com/phn/jdcal"
+ url = "https://pypi.io/packages/source/j/jdcal/jdcal-1.3.tar.gz"
+ version('1.3', '885ba61d28992f26acffec131bd2a17e')
version('1.2', 'ab8d5ba300fd1eb01514f363d19b1eb9')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-jedi/package.py b/var/spack/repos/builtin/packages/py-jedi/package.py
new file mode 100644
index 0000000000..fcf4043afa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-jedi/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyJedi(PythonPackage):
+ """An autocompletion tool for Python that can be used for text editors."""
+
+ homepage = "https://github.com/davidhalter/jedi"
+ url = "https://pypi.io/packages/source/j/jedi/jedi-0.9.0.tar.gz"
+
+ # unfortunately pypi.io only offers a .whl
+ version('0.10.0', '89ed853d4a283bfa0fdbcf688b4d35fe',
+ url='https://github.com/davidhalter/jedi/archive/v0.10.0.tar.gz')
+ version('0.9.0', '2fee93d273622527ef8c97ac736e92bd')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-jinja2/package.py b/var/spack/repos/builtin/packages/py-jinja2/package.py
index eafe8c252b..1df8c7366f 100644
--- a/var/spack/repos/builtin/packages/py-jinja2/package.py
+++ b/var/spack/repos/builtin/packages/py-jinja2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,8 +31,11 @@ class PyJinja2(PythonPackage):
and an optional sandboxed environment."""
homepage = "http://jinja.pocoo.org/"
- url = "https://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.8.tar.gz"
+ url = "https://pypi.io/packages/source/J/Jinja2/Jinja2-2.9.6.tar.gz"
+ import_modules = ['jinja2']
+
+ version('2.9.6', '6411537324b4dba0956aaa8109f3c77b')
version('2.8', 'edb51693fe22c53cee5403775c71a99e')
version('2.7.3', 'b9dffd2f3b43d673802fe857c8445b1a')
version('2.7.2', 'df1581455564e97010e38bc792012aa5')
diff --git a/var/spack/repos/builtin/packages/py-joblib/package.py b/var/spack/repos/builtin/packages/py-joblib/package.py
new file mode 100644
index 0000000000..7792a34539
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-joblib/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyJoblib(PythonPackage):
+ """Python function as pipeline jobs"""
+
+ homepage = "http://packages.python.org/joblib/"
+ url = "https://pypi.io/packages/source/j/joblib/joblib-0.10.3.tar.gz"
+
+ version('0.10.3', '455401ccfaf399538d8e5333086df2d3')
+ version('0.10.2', 'ebb42af4342c2445b175f86bd478d869')
+ version('0.10.0', '61e40322c4fed5c22905f67d7d1aa557')
+
+ # for testing
+ # depends_on('py-nose', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jpype/package.py b/var/spack/repos/builtin/packages/py-jpype/package.py
new file mode 100644
index 0000000000..204da5d79e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-jpype/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyJpype(PythonPackage):
+ """JPype is an effort to allow python programs full access to java class
+ libraries."""
+
+ homepage = "https://github.com/originell/jpype"
+ url = "https://pypi.io/packages/source/J/JPype1/JPype1-0.6.2.tar.gz"
+
+ version('0.6.2', '16e5ee92b29563dcc63bbc75556810c1')
+ version('0.6.1', '468ca2d4b2cff7802138789e951d5d58')
+ version('0.6.0', 'f0cbbe1d0c4b563f7e435d2bffc31736')
+
+ depends_on('python@2.6:')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('java', type=('build', 'run'))
+ # extra requirements
+ # depends_on('py-numpy@1.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jsonschema/package.py b/var/spack/repos/builtin/packages/py-jsonschema/package.py
index b1a0ac6606..3c7178a4ab 100644
--- a/var/spack/repos/builtin/packages/py-jsonschema/package.py
+++ b/var/spack/repos/builtin/packages/py-jsonschema/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class PyJsonschema(PythonPackage):
"""Jsonschema: An(other) implementation of JSON Schema for Python."""
homepage = "http://github.com/Julian/jsonschema"
- url = "https://pypi.python.org/packages/source/j/jsonschema/jsonschema-2.5.1.tar.gz"
+ url = "https://pypi.io/packages/source/j/jsonschema/jsonschema-2.5.1.tar.gz"
version('2.5.1', '374e848fdb69a3ce8b7e778b47c30640')
@@ -37,6 +37,6 @@ class PyJsonschema(PythonPackage):
depends_on('py-vcversioner', type=('build', 'run'))
# This dependency breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
+ # See https://github.com/spack/spack/issues/2793
# depends_on('py-functools32', when="^python@2.7", type=('build', 'run'))
depends_on('py-functools32', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-junit-xml/package.py b/var/spack/repos/builtin/packages/py-junit-xml/package.py
new file mode 100644
index 0000000000..d256797086
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-junit-xml/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyJunitXml(PythonPackage):
+ """Creates JUnit XML test result documents that can be read by tools
+ such as Jenkins"""
+
+ homepage = "https://github.com/kyrus/python-junit-xml"
+ url = "https://pypi.io/packages/source/j/junit-xml/junit-xml-1.7.tar.gz"
+
+ version('1.7', '5e6a96edb8a1592f2832241cfd99983e')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jupyter-client/package.py b/var/spack/repos/builtin/packages/py-jupyter-client/package.py
index b0c7b06362..b291fcf448 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-client/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-client/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -40,8 +40,7 @@ class PyJupyterClient(PythonPackage):
version('4.1.0', 'cf42048b889c8434fbb5813a9eec1d34')
version('4.0.0', '00fa63c67cb3adf359d09dc4d803aff5')
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-traitlets', type=('build', 'run'))
depends_on('py-jupyter-core', type=('build', 'run'))
depends_on('py-zmq@13:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jupyter-console/package.py b/var/spack/repos/builtin/packages/py-jupyter-console/package.py
index a5f3e53298..7a3098b0e8 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-console/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-console/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,8 +37,7 @@ class PyJupyterConsole(PythonPackage):
version('4.0.3', '0e928ea261e7f8154698cf69ed4f2459')
version('4.0.2', 'f2e174938c91136549b908bd39fa5d59')
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-jupyter-client', type=('build', 'run'))
depends_on('py-ipython', type=('build', 'run'))
depends_on('py-ipykernel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jupyter-core/package.py b/var/spack/repos/builtin/packages/py-jupyter-core/package.py
index f650a91bb9..a07aa3fda9 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-core/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-core/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,6 +42,5 @@ class PyJupyterCore(PythonPackage):
version('4.0.1', 'f849136b2badaaba2a8a3b397bf04639')
version('4.0', 'b6b37cb4f40bd0fcd20433cb2cc7a4c1')
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-traitlets', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-jupyter-notebook/package.py b/var/spack/repos/builtin/packages/py-jupyter-notebook/package.py
index 4c0d12b245..39f65d9ac7 100644
--- a/var/spack/repos/builtin/packages/py-jupyter-notebook/package.py
+++ b/var/spack/repos/builtin/packages/py-jupyter-notebook/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -44,9 +44,9 @@ class PyJupyterNotebook(PythonPackage):
variant('terminal', default=False, description="Enable terminal functionality")
- depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('npm', type='build')
+ depends_on('node-js', type=('build', 'run'))
depends_on('py-jinja2', type=('build', 'run'))
depends_on('py-tornado@4:', type=('build', 'run'))
depends_on('py-ipython-genutils', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-keras/package.py b/var/spack/repos/builtin/packages/py-keras/package.py
new file mode 100644
index 0000000000..d995111ca9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-keras/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyKeras(PythonPackage):
+ """Deep Learning library for Python. Convnets, recurrent neural networks,
+ and more. Runs on Theano or TensorFlow."""
+
+ homepage = "http://keras.io"
+ url = "https://pypi.io/packages/source/K/Keras/Keras-1.2.2.tar.gz"
+
+ version('2.0.3', '39ce72a65623cd233a8fa4e867dd0c6b')
+ version('1.2.2', '8e26b25bf16494f6eca726887d232319')
+ version('1.2.1', '95525b9faa890267d80d119b13ce2984')
+ version('1.2.0', 'd24d8b72747f8cc38e659ce8fc92ad3c')
+ version('1.1.2', '53027097f240735f873119ee2e8d27ff')
+ version('1.1.1', '4bd8b75e8c6948ec0498cc603bbc6590')
+ version('1.1.0', 'd1711362ac8473238b0d198d2e3a0574')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-theano', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-latexcodec/package.py b/var/spack/repos/builtin/packages/py-latexcodec/package.py
new file mode 100644
index 0000000000..a768eaebf4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-latexcodec/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLatexcodec(PythonPackage):
+ """A lexer and codec to work with LaTeX code in Python."""
+
+ homepage = "http://latexcodec.readthedocs.io"
+ url = "https://pypi.io/packages/source/l/latexcodec/latexcodec-1.0.4.tar.gz"
+
+ import_modules = ['latexcodec']
+
+ version('1.0.4', '72010ec2a55227a5802239cff6fd32d6')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six@1.4.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-lazy/package.py b/var/spack/repos/builtin/packages/py-lazy/package.py
new file mode 100644
index 0000000000..d976001296
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lazy/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLazy(PythonPackage):
+ """Lazy attributes for Python objects"""
+
+ homepage = "https://pypi.python.org/pypi/lazy"
+ url = "https://pypi.io/packages/source/l/lazy/lazy-1.2.zip"
+
+ version('1.2', '02713784e0a92ff9b6af1df8863dd79d')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-lazyarray/package.py b/var/spack/repos/builtin/packages/py-lazyarray/package.py
new file mode 100644
index 0000000000..5b5828182f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lazyarray/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLazyarray(PythonPackage):
+ """a Python package that provides a lazily-evaluated numerical array class,
+ larray, based on and compatible with NumPy arrays."""
+
+ homepage = "http://bitbucket.org/apdavison/lazyarray/"
+ url = "https://pypi.io/packages/source/l/lazyarray/lazyarray-0.2.8.tar.gz"
+
+ version('0.2.10', '336033357459e66cbca5543bf003a2ba')
+ version('0.2.8', '8e0072f0892b9fc0516e7048f96e9d74')
+
+ depends_on('py-numpy@1.3:', type=('build', 'run'))
+ depends_on('py-numpy@1.5:', type=('build', 'run'), when='^python@3:')
diff --git a/var/spack/repos/builtin/packages/py-libconf/package.py b/var/spack/repos/builtin/packages/py-libconf/package.py
new file mode 100644
index 0000000000..9a9d0d1059
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-libconf/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLibconf(PythonPackage):
+ """A pure-Python libconfig reader/writer with permissive license"""
+
+ homepage = "https://pypi.python.org/pypi/libconf"
+ url = "https://pypi.io/packages/source/l/libconf/libconf-1.0.1.tar.gz"
+
+ version('1.0.1', 'd37d355b3248f99802c46669ba38e406')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-line-profiler/package.py b/var/spack/repos/builtin/packages/py-line-profiler/package.py
new file mode 100644
index 0000000000..809d9e751f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-line-profiler/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLineProfiler(PythonPackage):
+ """Line-by-line profiler."""
+
+ homepage = "https://github.com/rkern/line_profiler"
+ url = "https://pypi.io/packages/source/l/line_profiler/line_profiler-2.0.tar.gz"
+
+ version('2.0', 'fc93c6bcfac3b7cb1912cb28836d7ee6')
+
+ depends_on('python@2.5:')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-ipython@0.13:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-lit/package.py b/var/spack/repos/builtin/packages/py-lit/package.py
new file mode 100644
index 0000000000..aa7d58bc45
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lit/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLit(PythonPackage):
+ """lit is a portable tool for executing LLVM and Clang style test suites,
+ summarizing their results, and providing indication of failures. lit is
+ designed to be a lightweight testing tool with as simple a user
+ interface as possible."""
+
+ homepage = "https://pypi.python.org/pypi/lit"
+ url = "https://pypi.io/packages/source/l/lit/lit-0.5.0.tar.gz"
+
+ version('0.5.0', '8144660cc692be8fb903395a5f06564d')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-lmfit/package.py b/var/spack/repos/builtin/packages/py-lmfit/package.py
new file mode 100644
index 0000000000..f02440c98d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lmfit/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLmfit(PythonPackage):
+ """Least-Squares Minimization with Bounds and Constraints"""
+
+ homepage = "http://lmfit.github.io/lmfit-py/"
+ url = "https://pypi.io/packages/source/l/lmfit/lmfit-0.9.5.tar.gz"
+
+ version('0.9.5', '3a38aa3e4510a564d9e2f606d2537522')
+
+ depends_on('py-numpy@1.5:', type=('build', 'run'))
+ depends_on('py-scipy@0.14:', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-lockfile/package.py b/var/spack/repos/builtin/packages/py-lockfile/package.py
index 1e57e6a1d7..c3aec05f45 100644
--- a/var/spack/repos/builtin/packages/py-lockfile/package.py
+++ b/var/spack/repos/builtin/packages/py-lockfile/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,7 @@ class PyLockfile(PythonPackage):
possibilities it provides than as production-quality code.
"""
homepage = "https://pypi.python.org/pypi/lockfile"
- url = "https://pypi.python.org/packages/source/l/lockfile/lockfile-0.10.2.tar.gz"
+ url = "https://pypi.io/packages/source/l/lockfile/lockfile-0.10.2.tar.gz"
version('0.10.2', '1aa6175a6d57f082cd12e7ac6102ab15')
diff --git a/var/spack/repos/builtin/packages/py-logilab-common/package.py b/var/spack/repos/builtin/packages/py-logilab-common/package.py
index 4c20885760..35e5d9aa88 100644
--- a/var/spack/repos/builtin/packages/py-logilab-common/package.py
+++ b/var/spack/repos/builtin/packages/py-logilab-common/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyLogilabCommon(PythonPackage):
"""Common modules used by Logilab projects"""
homepage = "https://www.logilab.org/project/logilab-common"
- url = "https://pypi.python.org/packages/a7/31/1650d23e44794d46935d82b86e73454cc83b814cbe1365260ccce8a2f4c6/logilab-common-1.2.0.tar.gz"
+ url = "https://pypi.io/packages/source/l/logilab-common/logilab-common-1.2.0.tar.gz"
version('1.2.0', 'f7b51351b7bfe052746fa04c03253c0b')
diff --git a/var/spack/repos/builtin/packages/py-lxml/package.py b/var/spack/repos/builtin/packages/py-lxml/package.py
new file mode 100644
index 0000000000..10e2435562
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lxml/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLxml(PythonPackage):
+ """lxml is the most feature-rich and easy-to-use library for processing
+ XML and HTML in the Python language."""
+
+ homepage = "http://lxml.de/"
+ url = "https://pypi.io/packages/source/l/lxml/lxml-2.3.tar.gz"
+
+ version('3.7.3', '075692ce442e69bbd604d44e21c02753')
+ version('2.3', 'a245a015fd59b63e220005f263e1682a')
+
+ depends_on('py-setuptools@0.6c5:', type='build')
+ depends_on('py-cython@0.20:', type='build')
+ depends_on('libxml2', type=('build', 'run'))
+ depends_on('libxslt', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-lzstring/package.py b/var/spack/repos/builtin/packages/py-lzstring/package.py
new file mode 100644
index 0000000000..8ab7658339
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-lzstring/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyLzstring(PythonPackage):
+ """lz-string for python."""
+
+ homepage = "https://github.com/gkovacs/lz-string-python"
+ url = "https://pypi.io/packages/source/l/lzstring/lzstring-1.0.3.tar.gz"
+
+ version('1.0.3', '1c636543484629020a26432740f81443')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-future', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-macholib/package.py b/var/spack/repos/builtin/packages/py-macholib/package.py
new file mode 100644
index 0000000000..d6755f20ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-macholib/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMacholib(PythonPackage):
+ """Python package for Mach-O header analysis and editing"""
+
+ homepage = "https://pypi.python.org/pypi/macholib"
+ url = "https://pypi.io/packages/source/m/macholib/macholib-1.8.tar.gz"
+
+ version('1.8', '65af8f20dada7bdb2a142afbec51330e')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-machotools/package.py b/var/spack/repos/builtin/packages/py-machotools/package.py
new file mode 100644
index 0000000000..d51fa17469
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-machotools/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMachotools(PythonPackage):
+ """Python package for editing Mach-O headers using macholib"""
+
+ homepage = "https://pypi.python.org/pypi/machotools"
+ url = "https://pypi.io/packages/source/m/machotools/machotools-0.2.0.tar.gz"
+
+ version('0.2.0', 'bcc68332c4a80b4f84ec9c8083465416')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-macholib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-macs2/package.py b/var/spack/repos/builtin/packages/py-macs2/package.py
index 42318faa2a..9d66440373 100644
--- a/var/spack/repos/builtin/packages/py-macs2/package.py
+++ b/var/spack/repos/builtin/packages/py-macs2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class PyMacs2(PythonPackage):
"""MACS2 Model-based Analysis of ChIP-Seq"""
homepage = "https://github.com/taoliu/MACS"
- url = "https://pypi.python.org/packages/9f/99/a8ac96b357f6b0a6f559fe0f5a81bcae12b98579551620ce07c5183aee2c/MACS2-2.1.1.20160309.tar.gz"
+ url = "https://pypi.io/packages/source/M/MACS2/MACS2-2.1.1.20160309.tar.gz"
version('2.1.1.20160309', '2008ba838f83f34f8e0fddefe2a3a0159f4a740707c68058f815b31ddad53d26')
diff --git a/var/spack/repos/builtin/packages/py-mako/package.py b/var/spack/repos/builtin/packages/py-mako/package.py
index 0707d0b12f..b6100d43bf 100644
--- a/var/spack/repos/builtin/packages/py-mako/package.py
+++ b/var/spack/repos/builtin/packages/py-mako/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class PyMako(PythonPackage):
ideas from the existing templating languages."""
homepage = "https://pypi.python.org/pypi/mako"
- url = "https://pypi.python.org/packages/source/M/Mako/Mako-1.0.1.tar.gz"
+ url = "https://pypi.io/packages/source/M/Mako/Mako-1.0.1.tar.gz"
version('1.0.4', 'c5fc31a323dd4990683d2f2da02d4e20')
version('1.0.1', '9f0aafd177b039ef67b90ea350497a54')
diff --git a/var/spack/repos/builtin/packages/py-mappy/package.py b/var/spack/repos/builtin/packages/py-mappy/package.py
new file mode 100644
index 0000000000..27ca1cbb11
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mappy/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMappy(PythonPackage):
+ """Mappy provides a convenient interface to minimap2."""
+
+ homepage = "https://pypi.python.org/pypi/mappy"
+ url = "https://pypi.io/packages/source/m/mappy/mappy-2.2.tar.gz"
+
+ version('2.2', 'dfc2aefe98376124beb81ce7dcefeccb')
+
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/py-markdown/package.py b/var/spack/repos/builtin/packages/py-markdown/package.py
index 23c8167021..d6356d8a52 100644
--- a/var/spack/repos/builtin/packages/py-markdown/package.py
+++ b/var/spack/repos/builtin/packages/py-markdown/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -48,9 +48,4 @@ class PyMarkdown(PythonPackage):
version('2.5.1', 'be6f6ba65a8fb843d2aaf1fcdd68c755')
version('2.5', '8393ceab9c6e33357fb8a7be063a4849')
- depends_on('py-setuptools', type='build')
depends_on('python@2.7:2.8,3.2:3.4')
-
- def url_for_version(self, version):
- base_url = "https://github.com/waylan/Python-Markdown/archive"
- return "{0}/{1}-final.tar.gz".format(base_url, version)
diff --git a/var/spack/repos/builtin/packages/py-markupsafe/package.py b/var/spack/repos/builtin/packages/py-markupsafe/package.py
index a31e3972de..dc1bf781a0 100644
--- a/var/spack/repos/builtin/packages/py-markupsafe/package.py
+++ b/var/spack/repos/builtin/packages/py-markupsafe/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,8 +32,11 @@ class PyMarkupsafe(PythonPackage):
Mako templating engine, the Pylons web framework and many more."""
homepage = "http://www.pocoo.org/projects/markupsafe/"
- url = "https://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-0.23.tar.gz"
+ url = "https://pypi.io/packages/source/M/MarkupSafe/MarkupSafe-1.0.tar.gz"
+ import_modules = ['markupsafe']
+
+ version('1.0', '2fcedc9284d50e577b5192e8e3578355')
version('0.23', 'f5ab3deee4c37cd6a922fb81e730da6e')
version('0.22', 'cb3ec29fd5361add24cfd0c6e2953b3e')
version('0.21', 'fde838d9337fa51744283f46a1db2e74')
diff --git a/var/spack/repos/builtin/packages/py-matplotlib/package.py b/var/spack/repos/builtin/packages/py-matplotlib/package.py
index d808b0fc4b..cd9abd2bc1 100644
--- a/var/spack/repos/builtin/packages/py-matplotlib/package.py
+++ b/var/spack/repos/builtin/packages/py-matplotlib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,8 +32,10 @@ class PyMatplotlib(PythonPackage):
environments across platforms."""
homepage = "https://pypi.python.org/pypi/matplotlib"
- url = "https://pypi.io/packages/source/m/matplotlib/matplotlib-1.4.2.tar.gz"
+ url = "https://pypi.io/packages/source/m/matplotlib/matplotlib-2.0.2.tar.gz"
+ version('2.0.2', '061111784278bde89b5d4987014be4ca')
+ version('2.0.0', '7aa54b06327f0e1c4f3877fc2f7d6b17')
version('1.5.3', 'ba993b06113040fee6628d74b80af0fd')
version('1.5.1', 'f51847d8692cb63df64cd0bd0304fd20')
version('1.4.3', '86af2e3e3c61849ac7576a6f5ca44267')
@@ -58,7 +60,10 @@ class PyMatplotlib(PythonPackage):
extends('python', ignore=r'bin/nosetests.*$|bin/pbr$')
# ------ Required dependencies
- depends_on('py-setuptools', type='build')
+ # Per Github issue #3813, setuptools is required at runtime in order
+ # to make mpl_toolkits a namespace package that can span multiple
+ # directories (i.e., matplotlib and basemap)
+ depends_on('py-setuptools', type=('build', 'run'))
depends_on('libpng@1.2:')
depends_on('freetype@2.3:')
@@ -68,6 +73,8 @@ class PyMatplotlib(PythonPackage):
depends_on('py-pyparsing', type=('build', 'run'))
depends_on('py-pytz', type=('build', 'run'))
depends_on('py-cycler@0.9:', type=('build', 'run'))
+ depends_on('py-subprocess32', type=('build', 'run'), when='^python@:2.7')
+ depends_on('py-functools32', type=('build', 'run'), when='^python@2.7')
# ------ Optional GUI frameworks
depends_on('tk@8.3:', when='+tk') # not 8.6.0 or 8.6.1
@@ -81,13 +88,14 @@ class PyMatplotlib(PythonPackage):
# --------- Optional dependencies
depends_on('pkg-config', type='build') # why not...
depends_on('pil', when='+image', type=('build', 'run'))
- depends_on('py-ipython', when='+ipython')
+ depends_on('py-ipython', when='+ipython', type=('build', 'run'))
depends_on('ghostscript', when='+latex', type='run')
depends_on('texlive', when='+latex', type='run')
# Testing dependencies
- depends_on('py-nose') # type='test'
- depends_on('py-mock') # type='test'
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
+ # depends_on('py-mock', type='test')
# Required libraries that ship with matplotlib
# depends_on('agg@2.4:')
@@ -95,7 +103,12 @@ class PyMatplotlib(PythonPackage):
# depends_on('ttconv')
depends_on('py-six@1.9.0:', type=('build', 'run'))
- @PythonPackage.sanity_check('install')
+ @run_before('build')
+ def set_cc(self):
+ if self.spec.satisfies('%intel'):
+ env['CC'] = spack_cxx
+
+ @run_after('install')
def set_backend(self):
spec = self.spec
prefix = self.prefix
diff --git a/var/spack/repos/builtin/packages/py-mccabe/package.py b/var/spack/repos/builtin/packages/py-mccabe/package.py
index c413193cdc..9a8e39f4c4 100644
--- a/var/spack/repos/builtin/packages/py-mccabe/package.py
+++ b/var/spack/repos/builtin/packages/py-mccabe/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -47,3 +47,7 @@ class PyMccabe(PythonPackage):
# TODO: Add test dependencies
# depends_on('py-pytest', type='test')
+
+ def patch(self):
+ """Filter pytest-runner requirement out of setup.py."""
+ filter_file("['pytest-runner']", "[]", 'setup.py', string=True)
diff --git a/var/spack/repos/builtin/packages/py-mdanalysis/package.py b/var/spack/repos/builtin/packages/py-mdanalysis/package.py
new file mode 100644
index 0000000000..437f2445a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mdanalysis/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMdanalysis(PythonPackage):
+ """MDAnalysis is a Python toolkit to analyze molecular dynamics
+ trajectories generated by a wide range of popular simulation
+ packages including DL_Poly, CHARMM, Amber, NAMD, LAMMPS, and
+ Gromacs. (See the lists of supported trajectory formats and
+ topology formats.)"""
+
+ homepage = "http://www.mdanalysis.org"
+ url = "https://pypi.io/packages/source/M/MDAnalysis/MDAnalysis-0.15.0.tar.gz"
+
+ version('0.15.0', '19e5a8e6c2bfe85f6209d1d7a36e4f20')
+
+ variant('analysis', default=True,
+ description='Enable analysis packages: matplotlib, scipy, seaborn')
+ variant('amber', default=False,
+ description='Support AMBER netcdf format.')
+
+ depends_on('python@2.7:')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython@0.16:', type='build')
+ depends_on('py-numpy@1.5.0:', type=('build', 'run'))
+ depends_on('py-six@1.4.0:', type=('build', 'run'))
+ depends_on('py-biopython@1.59:', type=('build', 'run'))
+ depends_on('py-networkx@1.0:', type=('build', 'run'))
+ depends_on('py-griddataformats@0.3.2:', type=('build', 'run'))
+
+ depends_on('py-matplotlib', when='+analysis', type=('build', 'run'))
+ depends_on('py-scipy', when='+analysis', type=('build', 'run'))
+ depends_on('py-seaborn', when='+analysis', type=('build', 'run'))
+
+ depends_on('py-netcdf4@1.0:', when='+amber', type=('build', 'run'))
+ depends_on('hdf5', when='+amber', type=('run'))
diff --git a/var/spack/repos/builtin/packages/py-meep/package.py b/var/spack/repos/builtin/packages/py-meep/package.py
index 0ebba77ac6..a2252c3b00 100644
--- a/var/spack/repos/builtin/packages/py-meep/package.py
+++ b/var/spack/repos/builtin/packages/py-meep/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -51,8 +51,8 @@ class PyMeep(PythonPackage):
phases = ['clean', 'build_ext', 'install', 'bdist']
- def setup_file(self, spec, prefix):
- return 'setup-mpi.py' if '+mpi' in spec else 'setup.py'
+ def setup_file(self):
+ return 'setup-mpi.py' if '+mpi' in self.spec else 'setup.py'
def common_args(self, spec, prefix):
include_dirs = [
diff --git a/var/spack/repos/builtin/packages/py-memory-profiler/package.py b/var/spack/repos/builtin/packages/py-memory-profiler/package.py
new file mode 100644
index 0000000000..7bd6b70ca1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-memory-profiler/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMemoryProfiler(PythonPackage):
+ """A module for monitoring memory usage of a python program"""
+
+ homepage = "https://github.com/fabianp/memory_profiler"
+ url = "https://pypi.io/packages/source/m/memory_profiler/memory_profiler-0.47.tar.gz"
+
+ version('0.47', 'ed340aaaa0c7118f2a4c5b4edec6da1e')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-psutil', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-methylcode/package.py b/var/spack/repos/builtin/packages/py-methylcode/package.py
new file mode 100644
index 0000000000..00171890f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-methylcode/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMethylcode(PythonPackage):
+ """MethylCoder is a single program that takes of bisulfite-treated
+ reads and outputs per-base methylation data. """
+
+ homepage = "https://github.com/brentp/methylcode"
+ url = "https://github.com/brentp/methylcode/archive/master.zip"
+
+ version('1.0.0', 'd0ba07c1ab2c74adddd1b23f8e5823e7')
+
+ depends_on('python@2.7.0:2.7.999')
+ depends_on('py-six')
+ depends_on('py-setuptools')
+ depends_on('py-numpy')
+ depends_on('py-pyparsing')
+ depends_on('py-pyfasta')
+ depends_on('py-bsddb3')
+ depends_on('bowtie')
diff --git a/var/spack/repos/builtin/packages/py-misopy/package.py b/var/spack/repos/builtin/packages/py-misopy/package.py
new file mode 100644
index 0000000000..6c274dbfbc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-misopy/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMisopy(PythonPackage):
+ """MISO (Mixture of Isoforms) is a probabilistic framework that
+ quantitates the expression level of alternatively spliced genes from
+ RNA-Seq data, and identifies differentially regulated isoforms or exons
+ across samples."""
+
+ homepage = "http://miso.readthedocs.io/en/fastmiso/"
+ url = "https://pypi.io/packages/source/m/misopy/misopy-0.5.4.tar.gz"
+
+ version('0.5.4', 'fe0c9c2613304defbdead12ea99e4194')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('python@2.6:', type=('build', 'run'))
+ depends_on('py-numpy@1.5.0:', type=('build', 'run'))
+ depends_on('py-scipy@0.9.0:', type=('build', 'run'))
+ depends_on('py-pysam@0.6.0:', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('samtools')
+ depends_on('bedtools2')
diff --git a/var/spack/repos/builtin/packages/py-mistune/package.py b/var/spack/repos/builtin/packages/py-mistune/package.py
index cc859d4b78..22b7c5e790 100644
--- a/var/spack/repos/builtin/packages/py-mistune/package.py
+++ b/var/spack/repos/builtin/packages/py-mistune/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-mock/package.py b/var/spack/repos/builtin/packages/py-mock/package.py
index 21edbd1dc0..5600072e63 100644
--- a/var/spack/repos/builtin/packages/py-mock/package.py
+++ b/var/spack/repos/builtin/packages/py-mock/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,8 +31,9 @@ class PyMock(PythonPackage):
they have been used."""
homepage = "https://github.com/testing-cabal/mock"
- url = "https://pypi.python.org/packages/source/m/mock/mock-1.3.0.tar.gz"
+ url = "https://pypi.io/packages/source/m/mock/mock-1.3.0.tar.gz"
+ version('2.0.0', '0febfafd14330c9dcaa40de2d82d40ad')
version('1.3.0', '73ee8a4afb3ff4da1b4afa287f39fdeb')
depends_on('py-pbr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mongo/package.py b/var/spack/repos/builtin/packages/py-mongo/package.py
new file mode 100644
index 0000000000..aa24299d2b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mongo/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMongo(PythonPackage):
+ """Python driver for MongoDB <http://www.mongodb.org>"""
+
+ homepage = "http://github.com/mongodb/mongo-python-driver"
+ url = "https://pypi.io/packages/source/p/pymongo/pymongo-3.3.0.tar.gz"
+
+ version('3.3.0', '42cd12a5014fb7d3e1987ca04f5c651f')
+
+ depends_on('python@2.6:2.8,3.3:')
+
+ depends_on('setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-monotonic/package.py b/var/spack/repos/builtin/packages/py-monotonic/package.py
index b02f954ccc..3f8ba05a03 100644
--- a/var/spack/repos/builtin/packages/py-monotonic/package.py
+++ b/var/spack/repos/builtin/packages/py-monotonic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-monty/package.py b/var/spack/repos/builtin/packages/py-monty/package.py
new file mode 100644
index 0000000000..8b35fb6e19
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-monty/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMonty(PythonPackage):
+ """Monty is the missing complement to Python."""
+
+ homepage = "https://github.com/materialsvirtuallab/monty"
+ url = "https://pypi.io/packages/source/m/monty/monty-0.9.6.tar.gz"
+
+ version('0.9.6', '406ea69fdd112feacfdf208624d56903')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mpi4py/package.py b/var/spack/repos/builtin/packages/py-mpi4py/package.py
index 7f8dc6b986..7193800506 100644
--- a/var/spack/repos/builtin/packages/py-mpi4py/package.py
+++ b/var/spack/repos/builtin/packages/py-mpi4py/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,10 +33,13 @@ class PyMpi4py(PythonPackage):
"""
homepage = "https://pypi.python.org/pypi/mpi4py"
- url = "https://pypi.python.org/packages/source/m/mpi4py/mpi4py-1.3.1.tar.gz"
+ url = "https://pypi.io/packages/source/m/mpi4py/mpi4py-1.3.1.tar.gz"
+ version('develop', git='https://github.com/mpi4py/mpi4py.git', branch='master')
version('2.0.0', '4f7d8126d7367c239fd67615680990e3')
version('1.3.1', 'dbe9d22bdc8ed965c23a7ceb6f32fc3c')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-setuptools', type='build')
depends_on('mpi')
+ depends_on('py-cython', when='@2.0.1:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-mpmath/package.py b/var/spack/repos/builtin/packages/py-mpmath/package.py
index d379e0bd03..d3250b43e5 100644
--- a/var/spack/repos/builtin/packages/py-mpmath/package.py
+++ b/var/spack/repos/builtin/packages/py-mpmath/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,6 +28,6 @@ from spack import *
class PyMpmath(PythonPackage):
"""A Python library for arbitrary-precision floating-point arithmetic."""
homepage = "http://mpmath.org"
- url = "https://pypi.python.org/packages/source/m/mpmath/mpmath-all-0.19.tar.gz"
+ url = "https://pypi.io/packages/source/m/mpmath/mpmath-all-0.19.tar.gz"
version('0.19', 'd1b7e19dd6830d0d7b5e1bc93d46c02c')
diff --git a/var/spack/repos/builtin/packages/py-multiprocess/package.py b/var/spack/repos/builtin/packages/py-multiprocess/package.py
new file mode 100644
index 0000000000..307433e759
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-multiprocess/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMultiprocess(PythonPackage):
+ """Better multiprocessing and multithreading in Python"""
+
+ homepage = "https://github.com/uqfoundation/multiprocess"
+ url = "https://pypi.io/packages/source/m/multiprocess/multiprocess-0.70.5.zip"
+
+ version('0.70.5', 'bfe394368b1d98192f1f62cc0060be20')
+ version('0.70.4', '443336d84c574106da6c67d4574b7614')
+
+ depends_on('python@2.6:2.8,3.1:')
+
+ depends_on('py-setuptools@0.6:', type='build')
+ depends_on('py-dill@0.2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-multiqc/package.py b/var/spack/repos/builtin/packages/py-multiqc/package.py
new file mode 100644
index 0000000000..f2b9377b1e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-multiqc/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMultiqc(PythonPackage):
+ """MultiQC is a tool to aggregate bioinformatics results across many
+ samples into a single report. It is written in Python and contains modules
+ for a large number of common bioinformatics tools."""
+
+ homepage = "https://multiqc.info"
+ url = "https://pypi.io/packages/source/m/multiqc/multiqc-1.0.tar.gz"
+
+ version('1.0', '0b7310b3f75595e5be8099fbed2d2515')
+
+ depends_on('python@2.7:')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-click', type=('build', 'run'))
+ depends_on('py-jinja2@2.9:', type=('build', 'run'))
+ depends_on('py-lzstring', type=('build', 'run'))
+ depends_on('py-future@0.14.1:', type=('build', 'run'))
+ depends_on('py-spectra', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-pyyaml', type=('build', 'run'))
+ depends_on('py-simplejson', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-mx/package.py b/var/spack/repos/builtin/packages/py-mx/package.py
index 9af74555b1..1902b33c4f 100644
--- a/var/spack/repos/builtin/packages/py-mx/package.py
+++ b/var/spack/repos/builtin/packages/py-mx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-mxnet/package.py b/var/spack/repos/builtin/packages/py-mxnet/package.py
new file mode 100644
index 0000000000..5b7cca85ef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-mxnet/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyMxnet(PythonPackage):
+ """Python binding for DMLC/MXNet."""
+
+ homepage = "http://mxnet.io"
+ url = "https://github.com/sjtuhpcc/python-mxnet/archive/0.10.0.post2.tar.gz"
+
+ version('0.10.0.post2', '64a646fbf5d1b53ce1008da1bf94d77c',
+ url='https://github.com/sjtuhpcc/python-mxnet/archive/0.10.0.post2.tar.gz')
+
+ # TODO
+ # install_time_test_callbacks = ['install_test', 'import_module_test']
+
+ # import_modules = ['mxnet', 'mxnet.module', 'mxnet._ctypes', 'mxnet.rnn',
+ # 'mxnet._cy2', 'mxnet._cy3', 'mxnet.notebook', 'mxnet.contrib']
+
+ variant('cuda', default=False, description='Enable CUDA support')
+
+ depends_on('python@2.6:2.8,3.3:')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-numpy@1.7.1:', type=('build', 'run'))
+ # depends_on('py-pip', type='build')
+
+ depends_on('mxnet', type=('build', 'run'))
+ depends_on('mxnet+cuda', when='+cuda', type=('build', 'run'))
+
+ def patch(self):
+ spec = self.spec
+ filter_file('../../../',
+ spec['mxnet'].prefix.lib,
+ 'mxnet/libinfo.py', string=True)
diff --git a/var/spack/repos/builtin/packages/py-myhdl/package.py b/var/spack/repos/builtin/packages/py-myhdl/package.py
new file mode 100644
index 0000000000..69bf8d04b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-myhdl/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyMyhdl(PythonPackage):
+ """Python as a Hardware Description Language"""
+
+ homepage = "http://www.myhdl.org"
+ url = "https://pypi.io/packages/source/m/myhdl/myhdl-0.9.0.tar.gz"
+
+ version('0.9.0', 'c3b4e7b857b6f51d43720413546df15c')
+
+ depends_on('python@2.6:2.8,3.4:')
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-mysqldb1/package.py b/var/spack/repos/builtin/packages/py-mysqldb1/package.py
index 8fd794aadb..b3d17c543a 100644
--- a/var/spack/repos/builtin/packages/py-mysqldb1/package.py
+++ b/var/spack/repos/builtin/packages/py-mysqldb1/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-nbconvert/package.py b/var/spack/repos/builtin/packages/py-nbconvert/package.py
index 0e221d355c..ea93c618c7 100644
--- a/var/spack/repos/builtin/packages/py-nbconvert/package.py
+++ b/var/spack/repos/builtin/packages/py-nbconvert/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,6 +22,7 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import os
from spack import *
@@ -35,9 +36,8 @@ class PyNbconvert(PythonPackage):
version('4.1.0', '06655576713ba1ff7cece2b92760c187')
version('4.0.0', '9661620b1e10a7b46f314588d2d0932f')
- depends_on('py-setuptools', type='build')
depends_on('py-pycurl', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-mistune', type=('build', 'run'))
depends_on('py-jinja2', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
@@ -48,8 +48,8 @@ class PyNbconvert(PythonPackage):
depends_on('py-tornado', type=('build', 'run'))
depends_on('py-jupyter-client', type=('build', 'run'))
- # FIXME:
- # Failed, try again after installing PycURL with `pip install pycurl` to avoid outdated SSL. # noqa
- # Failed to download css from https://cdn.jupyter.org/notebook/4.1.0/style/style.min.css: [Errno socket error] [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661) # noqa
- # Downloading CSS: https://cdn.jupyter.org/notebook/4.1.0/style/style.min.css # noqa
- # error: Need Notebook CSS to proceed: nbconvert/resources/style.min.css
+ def patch(self):
+ # We bundle this with the spack package so that the installer
+ # doesn't try to download it.
+ install(os.path.join(self.package_dir, 'style.min.css'),
+ os.path.join('nbconvert', 'resources', 'style.min.css'))
diff --git a/var/spack/repos/builtin/packages/py-nbconvert/style.min.css b/var/spack/repos/builtin/packages/py-nbconvert/style.min.css
new file mode 100644
index 0000000000..6a9626dd8e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-nbconvert/style.min.css
@@ -0,0 +1,37 @@
+/*!
+*
+* Twitter Bootstrap
+*
+*//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-size:10px;-webkit-tap-highlight-color:transparent}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0;vertical-align:middle}svg:not(:root){overflow:hidden}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{background:0 0!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href)")"}abbr[title]:after{content:" (" attr(title)")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../components/bootstrap/fonts/glyphicons-halflings-regular.eot);src:url(../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix)format('embedded-opentype'),url(../components/bootstrap/fonts/glyphicons-halflings-regular.woff2)format('woff2'),url(../components/bootstrap/fonts/glyphicons-halflings-regular.woff)format('woff'),url(../components/bootstrap/fonts/glyphicons-halflings-regular.ttf)format('truetype'),url(../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular)format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"\00a5"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body{margin:0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:1.42857143;color:#000;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}figure{margin:0}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:3px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:2px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:18px;margin-bottom:18px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:18px;margin-bottom:9px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:9px;margin-bottom:9px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:33px}.h2,h2{font-size:27px}.h3,h3{font-size:23px}.h4,h4{font-size:17px}.h5,h5{font-size:13px}.h6,h6{font-size:12px}p{margin:0 0 9px}.lead{margin-bottom:18px;font-size:14px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:19.5px}}.small,small{font-size:92%}.mark,mark{background-color:#fcf8e3;padding:.2em}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:8px;margin:36px 0 18px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:9px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-left:5px;padding-right:5px}dl{margin-top:0;margin-bottom:18px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:541px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:9px 18px;margin:0 0 18px;font-size:inherit;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0;text-align:right}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:18px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:monospace}code{padding:2px 4px;font-size:90%;background-color:#f9f2f4;border-radius:2px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:1px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;box-shadow:none}pre{display:block;padding:8.5px;margin:0 0 9px;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:2px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{margin-right:auto;margin-left:auto;padding-left:0;padding-right:0}@media (min-width:768px){.container{width:768px}}@media (min-width:992px){.container{width:940px}}@media (min-width:1200px){.container{width:1140px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:0;padding-right:0}.row{margin-left:0;margin-right:0}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:0;padding-right:0}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:18px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;float:none;display:table-column}table td[class*=col-],table th[class*=col-]{position:static;float:none;display:table-cell}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:13.5px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{padding:0;margin:0;border:0;min-width:0}legend{display:block;width:100%;padding:0;margin-bottom:18px;font-size:19.5px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}output{display:block;padding-top:7px;font-size:13px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:32px;padding:6px 12px;font-size:13px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date],input[type=time],input[type=datetime-local],input[type=month]{line-height:32px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:45px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:18px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-left:-20px;margin-top:4px \9}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:400;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.checkbox-inline.disabled,.checkbox.disabled label,.radio-inline.disabled,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio label,fieldset[disabled] .radio-inline,fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0;min-height:31px}.form-control-static.input-lg,.form-control-static.input-sm{padding-left:0;padding-right:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:1px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:1px}select.form-group-sm .form-control{height:30px;line-height:30px}select[multiple].form-group-sm .form-control,textarea.form-group-sm .form-control{height:auto}.form-group-sm .form-control-static{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;min-height:30px}.input-lg{height:45px;padding:10px 16px;font-size:17px;line-height:1.3333333;border-radius:3px}select.input-lg{height:45px;line-height:45px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:45px;padding:10px 16px;font-size:17px;line-height:1.3333333;border-radius:3px}select.form-group-lg .form-control{height:45px;line-height:45px}select[multiple].form-group-lg .form-control,textarea.form-group-lg .form-control{height:auto}.form-group-lg .form-control-static{height:45px;padding:10px 16px;font-size:17px;line-height:1.3333333;min-height:35px}.has-feedback{position:relative}.has-feedback .form-control{padding-right:40px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:32px;height:32px;line-height:32px;text-align:center;pointer-events:none}.input-lg+.form-control-feedback{width:45px;height:45px;line-height:45px}.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:23px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#404040}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{margin-top:0;margin-bottom:0;padding-top:7px}.form-horizontal .checkbox,.form-horizontal .radio{min-height:25px}.form-horizontal .form-group{margin-left:0;margin-right:0}.form-horizontal .has-feedback .form-control-feedback{right:0}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}.form-horizontal .control-label{text-align:right;margin-bottom:0;padding-top:7px}.form-horizontal .form-group-lg .control-label{padding-top:14.33px}.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;vertical-align:middle;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:13px;line-height:1.42857143;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:dotted thin;outline:-webkit-focus-ring-color auto 5px;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.active,.btn-default.focus,.btn-default:active,.btn-default:focus,.btn-default:hover,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.active,.btn-primary.focus,.btn-primary:active,.btn-primary:focus,.btn-primary:hover,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.active,.btn-success.focus,.btn-success:active,.btn-success:focus,.btn-success:hover,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.active,.btn-info.focus,.btn-info:active,.btn-info:focus,.btn-info:hover,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.active,.btn-warning.focus,.btn-warning:active,.btn-warning:focus,.btn-warning:hover,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.active,.btn-danger.focus,.btn-danger:active,.btn-danger:focus,.btn-danger:hover,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{color:#337ab7;font-weight:400;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:17px;line-height:1.3333333;border-radius:3px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:1px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:1px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:13px;text-align:left;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:2px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:8px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{text-decoration:none;color:#262626;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;outline:0;background-color:#337ab7}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);cursor:not-allowed}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{left:auto;right:0}.dropdown-menu-left{left:0;right:auto}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:541px){.navbar-right .dropdown-menu{left:auto;right:0}.navbar-right .dropdown-menu-left{left:0;right:auto}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-left:8px;padding-right:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-left:12px;padding-right:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:2px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-bottom-left-radius:2px;border-top-right-radius:0;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{float:none;display:table-cell;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-left:0;padding-right:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:17px;line-height:1.3333333;border-radius:3px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:1px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:13px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:2px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:1px}.input-group-addon.input-lg{padding:10px 16px;font-size:17px;border-radius:3px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{margin-bottom:0;padding-left:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:8px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:2px 2px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px;margin-right:0;border-radius:2px}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0;border-bottom:1px solid #ddd;border-radius:2px 2px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:2px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center;margin-bottom:5px}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:2px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:2px 2px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:30px;margin-bottom:18px;border:1px solid transparent}.navbar-collapse{overflow-x:visible;padding-right:0;padding-left:0;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:540px)and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}.navbar-static-top{z-index:1000;border-width:0 0 1px}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:541px){.navbar{border-radius:2px}.navbar-header{float:left}.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-left:0;padding-right:0}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:6px 0;font-size:17px;line-height:18px;height:30px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}.navbar-toggle{position:relative;float:right;margin-right:0;padding:9px 10px;margin-top:-2px;margin-bottom:-2px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:2px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:541px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:0}.navbar-toggle{display:none}}.navbar-nav{margin:3px 0}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:18px}@media (max-width:540px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:18px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:541px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:6px;padding-bottom:6px}}.navbar-form{padding:10px 0;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin:-1px 0}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:540px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-radius:2px 2px 0 0}.navbar-btn{margin-top:-1px;margin-bottom:-1px}.navbar-btn.btn-sm{margin-top:0;margin-bottom:0}.navbar-btn.btn-xs{margin-top:4px;margin-bottom:4px}.navbar-text{margin-top:6px;margin-bottom:6px}@media (min-width:541px){.navbar-form{width:auto;border:0;margin-left:0;margin-right:0;padding-top:0;padding-bottom:0;-webkit-box-shadow:none;box-shadow:none}.navbar-text{float:left;margin-left:0;margin-right:0}.navbar-left{float:left!important;float:left}.navbar-right{float:right!important;float:right;margin-right:0}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{background-color:#e7e7e7;color:#555}@media (max-width:540px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>li>a,.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{background-color:#080808;color:#fff}@media (max-width:540px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:18px;list-style:none;background-color:#f5f5f5;border-radius:2px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{content:"/\00a0";padding:0 5px;color:#5e5e5e}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:18px 0;border-radius:2px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;line-height:1.42857143;text-decoration:none;color:#337ab7;background-color:#fff;border:1px solid #ddd;margin-left:-1px}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:2px;border-top-left-radius:2px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-bottom-right-radius:2px;border-top-right-radius:2px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7;cursor:default}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;background-color:#fff;border-color:#ddd;cursor:not-allowed}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:17px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-bottom-right-radius:3px;border-top-right-radius:3px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:1px;border-top-left-radius:1px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-bottom-right-radius:1px;border-top-right-radius:1px}.pager{padding-left:0;margin:18px 0;list-style:none;text-align:center}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;background-color:#fff;cursor:not-allowed}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;color:#fff;line-height:1;vertical-align:baseline;white-space:nowrap;text-align:center;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px 15px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:20px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{border-radius:3px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding:48px 0}.container .jumbotron,.container-fluid .jumbotron{padding-left:60px;padding-right:60px}.jumbotron .h1,.jumbotron h1{font-size:58.5px}}.thumbnail{display:block;padding:4px;margin-bottom:18px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:2px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-left:auto;margin-right:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#000}.alert{padding:15px;margin-bottom:18px;border:1px solid transparent;border-radius:2px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{background-color:#dff0d8;border-color:#d6e9c6;color:#3c763d}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{background-color:#d9edf7;border-color:#bce8f1;color:#31708f}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{background-color:#fcf8e3;border-color:#faebcc;color:#8a6d3b}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{background-color:#f2dede;border-color:#ebccd1;color:#a94442}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:18px;margin-bottom:18px;background-color:#f5f5f5;border-radius:2px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:18px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{zoom:1;overflow:hidden}.media-body{width:10000px}.media-object{display:block}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{margin-bottom:20px;padding-left:0}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:2px;border-top-left-radius:2px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:2px;border-bottom-left-radius:2px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover{text-decoration:none;color:#555;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{background-color:#eee;color:#777;cursor:not-allowed}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:18px;background-color:#fff;border:1px solid transparent;border-radius:2px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:1px;border-top-left-radius:1px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:15px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:1px;border-bottom-left-radius:1px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-right-radius:1px;border-top-left-radius:1px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:1px;border-bottom-left-radius:1px}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-left:15px;padding-right:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-right-radius:1px;border-top-left-radius:1px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:1px;border-top-right-radius:1px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:1px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:1px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:1px;border-bottom-left-radius:1px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-left-radius:1px;border-bottom-right-radius:1px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:1px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:1px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive{border:0;margin-bottom:0}.panel-group{margin-bottom:18px}.panel-group .panel{margin-bottom:0;border-radius:2px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;left:0;bottom:0;height:100%;width:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:3px}.well-sm{padding:9px;border-radius:1px}.close{float:right;font-size:19.5px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{display:none;overflow:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:3px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5;min-height:16.43px}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px;margin-bottom:0}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.4;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:2px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:400;line-height:1.42857143;text-align:left;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:3px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);white-space:normal}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:13px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:2px 2px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.carousel{position:relative}.carousel-inner{position:relative;overflow:hidden;width:100%}.carousel-inner>.item{display:none;position:relative;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-moz-transition:-moz-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000;-moz-perspective:1000;perspective:1000}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;left:0;bottom:0;width:15%;opacity:.5;filter:alpha(opacity=50);font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1)}.carousel-control.right{left:auto;right:0;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1)}.carousel-control:focus,.carousel-control:hover{outline:0;color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;margin-top:-10px;line-height:1;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;margin-left:-30%;padding-left:0;list-style:none;text-align:center}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;border:1px solid #fff;border-radius:10px;cursor:pointer;background-color:transparent}.carousel-indicators .active{margin:0;width:12px;height:12px;background-color:#fff}.carousel-caption{position:absolute;left:15%;right:15%;bottom:20px;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{left:20%;right:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.item_buttons:after,.item_buttons:before,.modal-footer:after,.modal-footer:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{content:" ";display:table}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.item_buttons:after,.modal-footer:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}.visible-xs-block{display:block!important}.visible-xs-inline{display:inline!important}.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px)and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}.visible-sm-block{display:block!important}.visible-sm-inline{display:inline!important}.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px)and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}.visible-md-block{display:block!important}.visible-md-inline{display:inline!important}.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}.visible-lg-block{display:block!important}.visible-lg-inline{display:inline!important}.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px)and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px)and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}.hidden-print{display:none!important}}/*!
+*
+* Font Awesome
+*
+*//*!
+ * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
+ */@font-face{font-family:'FontAwesome';src:url(../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0);src:url(../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0)format('embedded-opentype'),url(../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0)format('woff'),url(../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0)format('truetype'),url(../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular)format('svg');font-weight:400;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:.08em solid #eee;border-radius:.1em}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scale(1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-close:before,.fa-remove:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-repeat:before,.fa-rotate-right:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-image:before,.fa-photo:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-exclamation-triangle:before,.fa-warning:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-floppy-o:before,.fa-save:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before,.fa-navicon:before,.fa-reorder:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-bolt:before,.fa-flash:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-chain-broken:before,.fa-unlink:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-caret-square-o-down:before,.fa-toggle-down:before{content:"\f150"}.fa-caret-square-o-up:before,.fa-toggle-up:before{content:"\f151"}.fa-caret-square-o-right:before,.fa-toggle-right:before{content:"\f152"}.fa-eur:before,.fa-euro:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-inr:before,.fa-rupee:before{content:"\f156"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble:before{content:"\f158"}.fa-krw:before,.fa-won:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-caret-square-o-left:before,.fa-toggle-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-try:before,.fa-turkish-lira:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-bank:before,.fa-institution:before,.fa-university:before{content:"\f19c"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-image-o:before,.fa-file-photo-o:before,.fa-file-picture-o:before{content:"\f1c5"}.fa-file-archive-o:before,.fa-file-zip-o:before{content:"\f1c6"}.fa-file-audio-o:before,.fa-file-sound-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-ring:before,.fa-life-saver:before,.fa-support:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-empire:before,.fa-ge:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-paper-plane:before,.fa-send:before{content:"\f1d8"}.fa-paper-plane-o:before,.fa-send-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-futbol-o:before,.fa-soccer-ball-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-ils:before,.fa-shekel:before,.fa-sheqel:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}/*!
+*
+* IPython base
+*
+*/.modal.fade .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}code{color:#000}pre{font-size:inherit;line-height:inherit}label{font-weight:400}.border-box-sizing{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.corner-all{border-radius:2px}.no-padding{padding:0}.hbox{display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}.hbox>*{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none}.vbox{display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch}.vbox>*{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none}.hbox.reverse,.reverse,.vbox.reverse{-webkit-box-direction:reverse;-moz-box-direction:reverse;box-direction:reverse;flex-direction:row-reverse}.box-flex0,.hbox.box-flex0,.vbox.box-flex0{-webkit-box-flex:0;-moz-box-flex:0;box-flex:0;flex:none;width:auto}.box-flex1,.hbox.box-flex1,.vbox.box-flex1{-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}.box-flex,.hbox.box-flex,.vbox.box-flex{-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}.box-flex2,.hbox.box-flex2,.vbox.box-flex2{-webkit-box-flex:2;-moz-box-flex:2;box-flex:2;flex:2}.box-group1{-webkit-box-flex-group:1;-moz-box-flex-group:1;box-flex-group:1}.box-group2{-webkit-box-flex-group:2;-moz-box-flex-group:2;box-flex-group:2}.hbox.start,.start,.vbox.start{-webkit-box-pack:start;-moz-box-pack:start;box-pack:start;justify-content:flex-start}.end,.hbox.end,.vbox.end{-webkit-box-pack:end;-moz-box-pack:end;box-pack:end;justify-content:flex-end}.center,.hbox.center,.vbox.center{-webkit-box-pack:center;-moz-box-pack:center;box-pack:center;justify-content:center}.baseline,.hbox.baseline,.vbox.baseline{-webkit-box-pack:baseline;-moz-box-pack:baseline;box-pack:baseline;justify-content:baseline}.hbox.stretch,.stretch,.vbox.stretch{-webkit-box-pack:stretch;-moz-box-pack:stretch;box-pack:stretch;justify-content:stretch}.align-start,.hbox.align-start,.vbox.align-start{-webkit-box-align:start;-moz-box-align:start;box-align:start;align-items:flex-start}.align-end,.hbox.align-end,.vbox.align-end{-webkit-box-align:end;-moz-box-align:end;box-align:end;align-items:flex-end}.align-center,.hbox.align-center,.vbox.align-center{-webkit-box-align:center;-moz-box-align:center;box-align:center;align-items:center}.align-baseline,.hbox.align-baseline,.vbox.align-baseline{-webkit-box-align:baseline;-moz-box-align:baseline;box-align:baseline;align-items:baseline}.align-stretch,.hbox.align-stretch,.vbox.align-stretch{-webkit-box-align:stretch;-moz-box-align:stretch;box-align:stretch;align-items:stretch}div.error{margin:2em;text-align:center}div.error>h1{font-size:500%;line-height:normal}div.error>p{font-size:200%;line-height:normal}div.traceback-wrapper{text-align:left;max-width:800px;margin:auto}body{position:absolute;left:0;right:0;top:0;bottom:0;overflow:visible}#header{display:none;background-color:#fff;position:relative;z-index:100}#header #header-container{padding-bottom:5px;padding-top:5px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}#header .header-bar{width:100%;height:1px;background:#e7e7e7;margin-bottom:-1px}#header-spacer{width:100%;visibility:hidden}@media print{#header{display:none!important}#header-spacer{display:none}}#ipython_notebook{padding-left:0;padding-top:1px;padding-bottom:1px}@media (max-width:991px){#ipython_notebook{margin-left:10px}}#noscript{width:auto;padding-top:16px;padding-bottom:16px;text-align:center;font-size:22px;color:red;font-weight:700}#ipython_notebook img{height:28px}#site{width:100%;display:none;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;overflow:auto}@media print{#site{height:auto!important}}.ui-button .ui-button-text{padding:.2em .8em;font-size:77%}input.ui-button{padding:.3em .9em}span#login_widget{float:right}#logout,span#login_widget>.button{color:#333;background-color:#fff;border-color:#ccc}#logout.active,#logout.focus,#logout:active,#logout:focus,#logout:hover,.open>.dropdown-toggle#logout,.open>.dropdown-togglespan#login_widget>.button,span#login_widget>.button.active,span#login_widget>.button.focus,span#login_widget>.button:active,span#login_widget>.button:focus,span#login_widget>.button:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}#logout.active,#logout:active,.open>.dropdown-toggle#logout,.open>.dropdown-togglespan#login_widget>.button,span#login_widget>.button.active,span#login_widget>.button:active{background-image:none}#logout.disabled,#logout.disabled.active,#logout.disabled.focus,#logout.disabled:active,#logout.disabled:focus,#logout.disabled:hover,#logout[disabled],#logout[disabled].active,#logout[disabled].focus,#logout[disabled]:active,#logout[disabled]:focus,#logout[disabled]:hover,fieldset[disabled] #logout,fieldset[disabled] #logout.active,fieldset[disabled] #logout.focus,fieldset[disabled] #logout:active,fieldset[disabled] #logout:focus,fieldset[disabled] #logout:hover,fieldset[disabled] span#login_widget>.button,fieldset[disabled] span#login_widget>.button.active,fieldset[disabled] span#login_widget>.button.focus,fieldset[disabled] span#login_widget>.button:active,fieldset[disabled] span#login_widget>.button:focus,fieldset[disabled] span#login_widget>.button:hover,span#login_widget>.button.disabled,span#login_widget>.button.disabled.active,span#login_widget>.button.disabled.focus,span#login_widget>.button.disabled:active,span#login_widget>.button.disabled:focus,span#login_widget>.button.disabled:hover,span#login_widget>.button[disabled],span#login_widget>.button[disabled].active,span#login_widget>.button[disabled].focus,span#login_widget>.button[disabled]:active,span#login_widget>.button[disabled]:focus,span#login_widget>.button[disabled]:hover{background-color:#fff;border-color:#ccc}#logout .badge,span#login_widget>.button .badge{color:#fff;background-color:#333}.nav-header{text-transform:none}#header>span{margin-top:10px}.modal_stretch .modal-dialog{display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch;min-height:80vh}.modal_stretch .modal-dialog .modal-body{max-height:calc(100vh - 200px);overflow:auto;flex:1}@media (min-width:768px){.modal .modal-dialog{width:700px}select.form-control{margin-left:12px;margin-right:12px}}/*!
+*
+* IPython auth
+*
+*/.center-nav{display:inline-block;margin-bottom:-4px}/*!
+*
+* IPython tree view
+*
+*/.alternate_upload{background-color:none;display:inline}.alternate_upload.form{padding:0;margin:0}.alternate_upload input.fileinput{text-align:center;vertical-align:middle;display:inline;opacity:0;z-index:2;width:12ex;margin-right:-12ex}.alternate_upload .btn-upload{height:22px}ul#tabs{margin-bottom:4px}ul#tabs a{padding-top:6px;padding-bottom:4px}ul.breadcrumb a:focus,ul.breadcrumb a:hover{text-decoration:none}ul.breadcrumb i.icon-home{font-size:16px;margin-right:4px}ul.breadcrumb span{color:#5e5e5e}.list_toolbar{padding:4px 0;vertical-align:middle}.list_toolbar .tree-buttons{padding-top:1px}.dynamic-buttons{padding-top:3px;display:inline-block}.list_toolbar [class*=span]{min-height:24px}.list_header{font-weight:700;background-color:#eee}.list_placeholder{font-weight:700;padding:4px 7px}.list_container{margin-top:4px;margin-bottom:20px;border:1px solid #ddd;border-radius:2px}.list_container>div{border-bottom:1px solid #ddd}.list_container>div:hover .list-item{background-color:red}.list_container>div:last-child{border:none}.list_item:hover .list_item{background-color:#ddd}.list_item a{text-decoration:none}.list_item:hover{background-color:#fafafa}.action_col{text-align:right}.list_header>div,.list_item>div{line-height:22px;padding:4px 7px}.list_header>div input,.list_item>div input{margin-right:7px;margin-left:14px;vertical-align:baseline;line-height:22px;position:relative;top:-1px}.list_header>div .item_link,.list_item>div .item_link{margin-left:-1px;vertical-align:baseline;line-height:22px}.new-file input[type=checkbox]{visibility:hidden}.item_name{line-height:22px;height:24px}.item_icon{font-size:14px;color:#5e5e5e;margin-right:7px;margin-left:7px;line-height:22px;vertical-align:baseline}.item_buttons{line-height:1em;margin-left:-5px}.item_buttons .btn-group,.item_buttons .input-group{float:left}.item_buttons>.btn,.item_buttons>.btn-group,.item_buttons>.input-group{margin-left:5px}.item_buttons .btn{min-width:13ex}.item_buttons .running-indicator{padding-top:4px;color:#5cb85c}.toolbar_info{height:24px;line-height:24px}input.engine_num_input,input.nbname_input{padding-top:3px;padding-bottom:3px;height:22px;line-height:14px;margin:0}input.engine_num_input{width:60px}.highlight_text{color:#00f}#project_name{display:inline-block;padding-left:7px;margin-left:-2px}#project_name>.breadcrumb{padding:0;margin-bottom:0;background-color:transparent;font-weight:700}#tree-selector{padding-right:0}#button-select-all{min-width:50px}#select-all{margin-left:7px;margin-right:2px}.menu_icon{margin-right:2px}.tab-content .row{margin-left:0;margin-right:0}.folder_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f114"}.folder_icon:before.pull-left{margin-right:.3em}.folder_icon:before.pull-right{margin-left:.3em}.notebook_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f02d";position:relative;top:-1px}.notebook_icon:before.pull-left{margin-right:.3em}.notebook_icon:before.pull-right{margin-left:.3em}.running_notebook_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f02d";position:relative;top:-1px;color:#5cb85c}.running_notebook_icon:before.pull-left{margin-right:.3em}.running_notebook_icon:before.pull-right{margin-left:.3em}.file_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f016";position:relative;top:-2px}.file_icon:before.pull-left{margin-right:.3em}.file_icon:before.pull-right{margin-left:.3em}#notebook_toolbar .pull-right{padding-top:0;margin-right:-1px}ul#new-menu{left:auto;right:0}.kernel-menu-icon{padding-right:12px;width:24px;content:"\f096"}.kernel-menu-icon:before{content:"\f096"}.kernel-menu-icon-current:before{content:"\f00c"}#tab_content{padding-top:20px}#running .panel-group .panel{margin-top:3px;margin-bottom:1em}#running .panel-group .panel .panel-heading{background-color:#eee;line-height:22px;padding:4px 7px}#running .panel-group .panel .panel-heading a:focus,#running .panel-group .panel .panel-heading a:hover{text-decoration:none}#running .panel-group .panel .panel-body{padding:0}#running .panel-group .panel .panel-body .list_container{margin-top:0;margin-bottom:0;border:0;border-radius:0}#running .panel-group .panel .panel-body .list_container .list_item{border-bottom:1px solid #ddd}#running .panel-group .panel .panel-body .list_container .list_item:last-child{border-bottom:0}.delete-button,.duplicate-button,.rename-button,.shutdown-button{display:none}.dynamic-instructions{display:inline-block;padding-top:4px}/*!
+*
+* IPython text editor webapp
+*
+*/.selected-keymap i.fa{padding:0 5px}.selected-keymap i.fa:before{content:"\f00c"}#mode-menu{overflow:auto;max-height:20em}.edit_app #header{-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2)}.edit_app #menubar .navbar{margin-bottom:-1px}.dirty-indicator{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:20px}.dirty-indicator.pull-left{margin-right:.3em}.dirty-indicator.pull-right{margin-left:.3em}.dirty-indicator-dirty{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:20px}.dirty-indicator-dirty.pull-left{margin-right:.3em}.dirty-indicator-dirty.pull-right{margin-left:.3em}.dirty-indicator-clean{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:20px}.dirty-indicator-clean.pull-left{margin-right:.3em}.dirty-indicator-clean.pull-right{margin-left:.3em}.dirty-indicator-clean:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f00c"}.dirty-indicator-clean:before.pull-left{margin-right:.3em}.dirty-indicator-clean:before.pull-right{margin-left:.3em}#filename{font-size:16pt;display:table;padding:0 5px}#current-mode{padding-left:5px;padding-right:5px}#texteditor-backdrop{padding-top:20px;padding-bottom:20px}@media not print{#texteditor-backdrop{background-color:#eee}}@media print{#texteditor-backdrop #texteditor-container .CodeMirror-gutter,#texteditor-backdrop #texteditor-container .CodeMirror-gutters{background-color:#fff}}@media not print{#texteditor-backdrop #texteditor-container .CodeMirror-gutter,#texteditor-backdrop #texteditor-container .CodeMirror-gutters{background-color:#fff}#texteditor-backdrop #texteditor-container{padding:0;background-color:#fff;-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2)}}/*!
+*
+* IPython notebook
+*
+*/.ansibold{font-weight:700}.ansiblack{color:#000}.ansired{color:#8b0000}.ansigreen{color:#006400}.ansiyellow{color:#c4a000}.ansiblue{color:#00008b}.ansipurple{color:#9400d3}.ansicyan{color:#4682b4}.ansigray{color:gray}.ansibgblack{background-color:#000}.ansibgred{background-color:red}.ansibggreen{background-color:green}.ansibgyellow{background-color:#ff0}.ansibgblue{background-color:#00f}.ansibgpurple{background-color:#ff00ff}.ansibgcyan{background-color:#0ff}.ansibggray{background-color:gray}div.cell{border:1px solid transparent;display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch;border-radius:2px;box-sizing:border-box;-moz-box-sizing:border-box;border-width:thin;border-style:solid;width:100%;padding:5px;margin:0;outline:0}div.cell.selected{border-color:#ababab}@media print{div.cell.selected{border-color:transparent}}.edit_mode div.cell.selected{border-color:green}.prompt{min-width:14ex;padding:.4em;margin:0;font-family:monospace;text-align:right;line-height:1.21429em}div.inner_cell{display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}@-moz-document url-prefix(){div.inner_cell{overflow-x:hidden}}div.input_area{border:1px solid #cfcfcf;border-radius:2px;background:#f7f7f7;line-height:1.21429em}div.prompt:empty{padding-top:0;padding-bottom:0}div.unrecognized_cell{padding:5px 5px 5px 0;display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}div.unrecognized_cell .inner_cell{border-radius:2px;padding:5px;font-weight:700;color:red;border:1px solid #cfcfcf;background:#eaeaea}div.unrecognized_cell .inner_cell a,div.unrecognized_cell .inner_cell a:hover{color:inherit;text-decoration:none}@media (max-width:540px){.prompt{text-align:left}div.unrecognized_cell>div.prompt{display:none}}div.code_cell{}div.input{page-break-inside:avoid;display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}@media (max-width:540px){div.input{-webkit-box-orient:vertical;-moz-box-orient:vertical;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch}}div.input_prompt{color:navy;border-top:1px solid transparent}div.input_area>div.highlight{margin:.4em;border:none;padding:0;background-color:transparent}div.input_area>div.highlight>pre{margin:0;border:none;padding:0;background-color:transparent}.CodeMirror{line-height:1.21429em;font-size:14px;height:auto;background:0 0}.CodeMirror-scroll{overflow-y:hidden;overflow-x:auto}.CodeMirror-lines{padding:.4em}.CodeMirror-linenumber{padding:0 8px 0 4px}.CodeMirror-gutters{border-bottom-left-radius:2px;border-top-left-radius:2px}.CodeMirror pre{padding:0;border:0;border-radius:0}.highlight-base,.highlight-variable{color:#000}.highlight-variable-2{color:#1a1a1a}.highlight-variable-3{color:#333}.highlight-string{color:#BA2121}.highlight-comment{color:#408080;font-style:italic}.highlight-number{color:#080}.highlight-atom{color:#88F}.highlight-keyword{color:green;font-weight:700}.highlight-builtin{color:green}.highlight-error{color:red}.highlight-operator{color:#A2F;font-weight:700}.highlight-meta{color:#A2F}.highlight-def{color:#00f}.highlight-string-2{color:#f50}.highlight-qualifier{color:#555}.highlight-bracket{color:#997}.highlight-tag{color:#170}.highlight-attribute{color:#00c}.highlight-header{color:#00f}.highlight-quote{color:#090}.highlight-link{color:#00c}.cm-s-ipython span.cm-keyword{color:green;font-weight:700}.cm-s-ipython span.cm-atom{color:#88F}.cm-s-ipython span.cm-number{color:#080}.cm-s-ipython span.cm-def{color:#00f}.cm-s-ipython span.cm-variable{color:#000}.cm-s-ipython span.cm-operator{color:#A2F;font-weight:700}.cm-s-ipython span.cm-variable-2{color:#1a1a1a}.cm-s-ipython span.cm-variable-3{color:#333}.cm-s-ipython span.cm-comment{color:#408080;font-style:italic}.cm-s-ipython span.cm-string{color:#BA2121}.cm-s-ipython span.cm-string-2{color:#f50}.cm-s-ipython span.cm-meta{color:#A2F}.cm-s-ipython span.cm-qualifier{color:#555}.cm-s-ipython span.cm-builtin{color:green}.cm-s-ipython span.cm-bracket{color:#997}.cm-s-ipython span.cm-tag{color:#170}.cm-s-ipython span.cm-attribute{color:#00c}.cm-s-ipython span.cm-header{color:#00f}.cm-s-ipython span.cm-quote{color:#090}.cm-s-ipython span.cm-link{color:#00c}.cm-s-ipython span.cm-error{color:red}.cm-s-ipython span.cm-tab{background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=')right no-repeat}div.output_wrapper{display:-webkit-box;-webkit-box-align:stretch;display:-moz-box;-moz-box-align:stretch;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch;z-index:1}div.output_scroll{height:24em;width:100%;overflow:auto;border-radius:2px;-webkit-box-shadow:inset 0 2px 8px rgba(0,0,0,.8);box-shadow:inset 0 2px 8px rgba(0,0,0,.8);display:block}div.output_collapsed{margin:0;padding:0;display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch}div.out_prompt_overlay{height:100%;padding:0 .4em;position:absolute;border-radius:2px}div.out_prompt_overlay:hover{-webkit-box-shadow:inset 0 0 1px #000;box-shadow:inset 0 0 1px #000;background:rgba(240,240,240,.5)}div.output_prompt{color:#8b0000}div.output_area{padding:0;page-break-inside:avoid;display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}div.output_area .MathJax_Display{text-align:left!important}div.output_area .rendered_html img,div.output_area .rendered_html table{margin-left:0;margin-right:0}div.output_area img,div.output_area svg{max-width:100%;height:auto}div.output_area img.unconfined,div.output_area svg.unconfined{max-width:none}.output{display:-webkit-box;-webkit-box-orient:vertical;display:-moz-box;-moz-box-orient:vertical;display:box;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch}@media (max-width:540px){div.output_area{-webkit-box-orient:vertical;-moz-box-orient:vertical;box-orient:vertical;box-align:stretch;display:flex;flex-direction:column;align-items:stretch}}div.output_area pre{margin:0;padding:0;border:0;vertical-align:baseline;color:#000;background-color:transparent;border-radius:0}div.output_subarea{overflow-x:auto;padding:.4em;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1;max-width:calc(100% - 14ex)}div.output_text{text-align:left;color:#000;line-height:1.21429em}div.output_stderr{background:#fdd}div.output_latex{text-align:left}div.output_javascript:empty{padding:0}.js-error{color:#8b0000}div.raw_input_container{font-family:monospace;padding-top:5px}span.raw_input_prompt{}input.raw_input{font-family:inherit;font-size:inherit;color:inherit;width:auto;vertical-align:baseline;padding:0 .25em;margin:0 .25em}input.raw_input:focus{box-shadow:none}p.p-space{margin-bottom:10px}div.output_unrecognized{padding:5px;font-weight:700;color:red}div.output_unrecognized a,div.output_unrecognized a:hover{color:inherit;text-decoration:none}.rendered_html{color:#000}.rendered_html em{font-style:italic}.rendered_html strong{font-weight:700}.rendered_html :link,.rendered_html :visited,.rendered_html u{text-decoration:underline}.rendered_html h1{font-size:185.7%;margin:1.08em 0 0;font-weight:700;line-height:1}.rendered_html h2{font-size:157.1%;margin:1.27em 0 0;font-weight:700;line-height:1}.rendered_html h3{font-size:128.6%;margin:1.55em 0 0;font-weight:700;line-height:1}.rendered_html h4{font-size:100%;margin:2em 0 0;font-weight:700;line-height:1}.rendered_html h5,.rendered_html h6{font-size:100%;margin:2em 0 0;font-weight:700;line-height:1;font-style:italic}.rendered_html h1:first-child{margin-top:.538em}.rendered_html h2:first-child{margin-top:.636em}.rendered_html h3:first-child{margin-top:.777em}.rendered_html h4:first-child,.rendered_html h5:first-child,.rendered_html h6:first-child{margin-top:1em}.rendered_html ul{list-style:disc;margin:0 2em;padding-left:0}.rendered_html ul ul{list-style:square;margin:0 2em}.rendered_html ul ul ul{list-style:circle;margin:0 2em}.rendered_html ol{list-style:decimal;margin:0 2em;padding-left:0}.rendered_html ol ol{list-style:upper-alpha;margin:0 2em}.rendered_html ol ol ol{list-style:lower-alpha;margin:0 2em}.rendered_html ol ol ol ol{list-style:lower-roman;margin:0 2em}.rendered_html ol ol ol ol ol{list-style:decimal;margin:0 2em}.rendered_html *+ol,.rendered_html *+ul{margin-top:1em}.rendered_html hr{color:#000;background-color:#000}.rendered_html pre{margin:1em 2em}.rendered_html code,.rendered_html pre{border:0;background-color:#fff;color:#000;font-size:100%;padding:0}.rendered_html blockquote{margin:1em 2em}.rendered_html table{margin-left:auto;margin-right:auto;border:1px solid #000;border-collapse:collapse}.rendered_html td,.rendered_html th,.rendered_html tr{border:1px solid #000;border-collapse:collapse;margin:1em 2em}.rendered_html td,.rendered_html th{text-align:left;vertical-align:middle;padding:4px}.rendered_html th{font-weight:700}.rendered_html *+table{margin-top:1em}.rendered_html p{text-align:left}.rendered_html *+p{margin-top:1em}.rendered_html img{display:block;margin-left:auto;margin-right:auto}.rendered_html *+img{margin-top:1em}.rendered_html img,.rendered_html svg{max-width:100%;height:auto}.rendered_html img.unconfined,.rendered_html svg.unconfined{max-width:none}div.text_cell{display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}@media (max-width:540px){div.text_cell>div.prompt{display:none}}div.text_cell_render{outline:0;resize:none;width:inherit;border-style:none;padding:.5em .5em .5em .4em;color:#000;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}a.anchor-link:link{text-decoration:none;padding:0 20px;visibility:hidden}h1:hover .anchor-link,h2:hover .anchor-link,h3:hover .anchor-link,h4:hover .anchor-link,h5:hover .anchor-link,h6:hover .anchor-link{visibility:visible}.text_cell.rendered .input_area{display:none}.text_cell.rendered .rendered_html{overflow-x:auto}.text_cell.unrendered .text_cell_render{display:none}.cm-header-1,.cm-header-2,.cm-header-3,.cm-header-4,.cm-header-5,.cm-header-6{font-weight:700;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.cm-header-1{font-size:185.7%}.cm-header-2{font-size:157.1%}.cm-header-3{font-size:128.6%}.cm-header-4{font-size:110%}.cm-header-5,.cm-header-6{font-size:100%;font-style:italic}/*!
+*
+* IPython notebook webapp
+*
+*/@media (max-width:767px){.notebook_app{padding-left:0;padding-right:0}}#ipython-main-app{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;height:100%}div#notebook_panel{margin:0;padding:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;height:100%}#notebook{font-size:14px;line-height:20px;overflow-y:hidden;overflow-x:auto;width:100%;padding-top:20px;margin:0;outline:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;min-height:100%}@media not print{#notebook-container{padding:15px;background-color:#fff;min-height:0;-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2)}}div.ui-widget-content{border:1px solid #ababab;outline:0}pre.dialog{background-color:#f7f7f7;border:1px solid #ddd;border-radius:2px;padding:.4em .4em .4em 2em}p.dialog{padding:.2em}code,kbd,pre,samp{white-space:pre-wrap}#fonttest{font-family:monospace}p{margin-bottom:0}.end_space{min-height:100px;transition:height .2s ease}.notebook_app #header{-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2)}@media not print{.notebook_app{background-color:#eee}}.celltoolbar{border:thin solid #CFCFCF;border-bottom:none;background:#EEE;border-radius:2px 2px 0 0;width:100%;height:29px;padding-right:4px;-webkit-box-orient:horizontal;-moz-box-orient:horizontal;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch;-webkit-box-pack:end;-moz-box-pack:end;box-pack:end;justify-content:flex-end;font-size:87%;padding-top:3px}@media print{.edit_mode div.cell.selected{border-color:transparent}div.code_cell{page-break-inside:avoid}#notebook-container{width:100%}.celltoolbar{display:none}}.ctb_hideshow{display:none;vertical-align:bottom}.ctb_global_show .ctb_show.ctb_hideshow{display:block}.ctb_global_show .ctb_show+.input_area,.ctb_global_show .ctb_show+div.text_cell_input,.ctb_global_show .ctb_show~div.text_cell_render{border-top-right-radius:0;border-top-left-radius:0}.ctb_global_show .ctb_show~div.text_cell_render{border:1px solid #cfcfcf}.celltoolbar select{color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;line-height:1.5;border-radius:1px;width:inherit;font-size:inherit;height:22px;padding:0;display:inline-block}.celltoolbar select:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.celltoolbar select::-moz-placeholder{color:#999;opacity:1}.celltoolbar select:-ms-input-placeholder{color:#999}.celltoolbar select::-webkit-input-placeholder{color:#999}.celltoolbar select[disabled],.celltoolbar select[readonly],fieldset[disabled] .celltoolbar select{background-color:#eee;opacity:1}.celltoolbar select[disabled],fieldset[disabled] .celltoolbar select{cursor:not-allowed}textarea.celltoolbar select{height:auto}select.celltoolbar select{height:30px;line-height:30px}select[multiple].celltoolbar select,textarea.celltoolbar select{height:auto}.celltoolbar label{margin-left:5px;margin-right:5px}.completions{position:absolute;z-index:10;overflow:hidden;border:1px solid #ababab;border-radius:2px;-webkit-box-shadow:0 6px 10px -1px #adadad;box-shadow:0 6px 10px -1px #adadad;line-height:1}.completions select{background:#fff;outline:0;border:none;padding:0;margin:0;overflow:auto;font-family:monospace;font-size:110%;color:#000;width:auto}.completions select option.context{color:#286090}#kernel_logo_widget{float:right!important;float:right}#kernel_logo_widget .current_kernel_logo{display:none;margin-top:-1px;margin-bottom:-1px;width:32px;height:32px}#menubar{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin-top:1px}#menubar .navbar{border-top:1px;border-radius:0 0 2px 2px;margin-bottom:0}#menubar .navbar-toggle{float:left;padding-top:7px;padding-bottom:7px;border:none}#menubar .navbar-collapse{clear:left}.nav-wrapper{border-bottom:1px solid #e7e7e7}i.menu-icon{padding-top:4px}ul#help_menu li a{overflow:hidden;padding-right:2.2em}ul#help_menu li a i{margin-right:-1.2em}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropdown-submenu>a:after{font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block;content:"\f0da";float:right;color:#333;margin-top:2px;margin-right:-10px}.dropdown-submenu>a:after.pull-left{margin-right:.3em}.dropdown-submenu>a:after.pull-right{margin-left:.3em}.dropdown-submenu:hover>a:after{color:#262626}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px}#notification_area{float:right!important;float:right;z-index:10}.indicator_area{float:right!important;float:right;color:#777;margin-left:5px;margin-right:5px;z-index:10;text-align:center;width:auto}#kernel_indicator{float:right!important;float:right;color:#777;margin-left:5px;margin-right:5px;z-index:10;text-align:center;width:auto;border-left:1px solid}#kernel_indicator .kernel_indicator_name{padding-left:5px;padding-right:5px}#modal_indicator{float:right!important;float:right;color:#777;margin-left:5px;margin-right:5px;z-index:10;text-align:center;width:auto}#readonly-indicator{float:right!important;float:right;color:#777;z-index:10;text-align:center;width:auto;display:none;margin:2px 0 0}.modal_indicator:before{width:1.28571429em;text-align:center}.edit_mode .modal_indicator:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f040"}.edit_mode .modal_indicator:before.pull-left{margin-right:.3em}.edit_mode .modal_indicator:before.pull-right{margin-left:.3em}.command_mode .modal_indicator:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:' '}.command_mode .modal_indicator:before.pull-left{margin-right:.3em}.command_mode .modal_indicator:before.pull-right{margin-left:.3em}.kernel_idle_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f10c"}.kernel_idle_icon:before.pull-left{margin-right:.3em}.kernel_idle_icon:before.pull-right{margin-left:.3em}.kernel_busy_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f111"}.kernel_busy_icon:before.pull-left{margin-right:.3em}.kernel_busy_icon:before.pull-right{margin-left:.3em}.kernel_dead_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f1e2"}.kernel_dead_icon:before.pull-left{margin-right:.3em}.kernel_dead_icon:before.pull-right{margin-left:.3em}.kernel_disconnected_icon:before{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\f127"}.kernel_disconnected_icon:before.pull-left{margin-right:.3em}.kernel_disconnected_icon:before.pull-right{margin-left:.3em}.notification_widget{z-index:10;background:rgba(240,240,240,.5);margin-right:4px;color:#333;background-color:#fff;border-color:#ccc}.notification_widget.active,.notification_widget.focus,.notification_widget:active,.notification_widget:focus,.notification_widget:hover,.open>.dropdown-toggle.notification_widget{color:#333;background-color:#e6e6e6;border-color:#adadad}.notification_widget.active,.notification_widget:active,.open>.dropdown-toggle.notification_widget{background-image:none}.notification_widget.disabled,.notification_widget.disabled.active,.notification_widget.disabled.focus,.notification_widget.disabled:active,.notification_widget.disabled:focus,.notification_widget.disabled:hover,.notification_widget[disabled],.notification_widget[disabled].active,.notification_widget[disabled].focus,.notification_widget[disabled]:active,.notification_widget[disabled]:focus,.notification_widget[disabled]:hover,fieldset[disabled] .notification_widget,fieldset[disabled] .notification_widget.active,fieldset[disabled] .notification_widget.focus,fieldset[disabled] .notification_widget:active,fieldset[disabled] .notification_widget:focus,fieldset[disabled] .notification_widget:hover{background-color:#fff;border-color:#ccc}.notification_widget .badge{color:#fff;background-color:#333}.notification_widget.warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.notification_widget.warning.active,.notification_widget.warning.focus,.notification_widget.warning:active,.notification_widget.warning:focus,.notification_widget.warning:hover,.open>.dropdown-toggle.notification_widget.warning{color:#fff;background-color:#ec971f;border-color:#d58512}.notification_widget.warning.active,.notification_widget.warning:active,.open>.dropdown-toggle.notification_widget.warning{background-image:none}.notification_widget.warning.disabled,.notification_widget.warning.disabled.active,.notification_widget.warning.disabled.focus,.notification_widget.warning.disabled:active,.notification_widget.warning.disabled:focus,.notification_widget.warning.disabled:hover,.notification_widget.warning[disabled],.notification_widget.warning[disabled].active,.notification_widget.warning[disabled].focus,.notification_widget.warning[disabled]:active,.notification_widget.warning[disabled]:focus,.notification_widget.warning[disabled]:hover,fieldset[disabled] .notification_widget.warning,fieldset[disabled] .notification_widget.warning.active,fieldset[disabled] .notification_widget.warning.focus,fieldset[disabled] .notification_widget.warning:active,fieldset[disabled] .notification_widget.warning:focus,fieldset[disabled] .notification_widget.warning:hover{background-color:#f0ad4e;border-color:#eea236}.notification_widget.warning .badge{color:#f0ad4e;background-color:#fff}.notification_widget.success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.notification_widget.success.active,.notification_widget.success.focus,.notification_widget.success:active,.notification_widget.success:focus,.notification_widget.success:hover,.open>.dropdown-toggle.notification_widget.success{color:#fff;background-color:#449d44;border-color:#398439}.notification_widget.success.active,.notification_widget.success:active,.open>.dropdown-toggle.notification_widget.success{background-image:none}.notification_widget.success.disabled,.notification_widget.success.disabled.active,.notification_widget.success.disabled.focus,.notification_widget.success.disabled:active,.notification_widget.success.disabled:focus,.notification_widget.success.disabled:hover,.notification_widget.success[disabled],.notification_widget.success[disabled].active,.notification_widget.success[disabled].focus,.notification_widget.success[disabled]:active,.notification_widget.success[disabled]:focus,.notification_widget.success[disabled]:hover,fieldset[disabled] .notification_widget.success,fieldset[disabled] .notification_widget.success.active,fieldset[disabled] .notification_widget.success.focus,fieldset[disabled] .notification_widget.success:active,fieldset[disabled] .notification_widget.success:focus,fieldset[disabled] .notification_widget.success:hover{background-color:#5cb85c;border-color:#4cae4c}.notification_widget.success .badge{color:#5cb85c;background-color:#fff}.notification_widget.info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.notification_widget.info.active,.notification_widget.info.focus,.notification_widget.info:active,.notification_widget.info:focus,.notification_widget.info:hover,.open>.dropdown-toggle.notification_widget.info{color:#fff;background-color:#31b0d5;border-color:#269abc}.notification_widget.info.active,.notification_widget.info:active,.open>.dropdown-toggle.notification_widget.info{background-image:none}.notification_widget.info.disabled,.notification_widget.info.disabled.active,.notification_widget.info.disabled.focus,.notification_widget.info.disabled:active,.notification_widget.info.disabled:focus,.notification_widget.info.disabled:hover,.notification_widget.info[disabled],.notification_widget.info[disabled].active,.notification_widget.info[disabled].focus,.notification_widget.info[disabled]:active,.notification_widget.info[disabled]:focus,.notification_widget.info[disabled]:hover,fieldset[disabled] .notification_widget.info,fieldset[disabled] .notification_widget.info.active,fieldset[disabled] .notification_widget.info.focus,fieldset[disabled] .notification_widget.info:active,fieldset[disabled] .notification_widget.info:focus,fieldset[disabled] .notification_widget.info:hover{background-color:#5bc0de;border-color:#46b8da}.notification_widget.info .badge{color:#5bc0de;background-color:#fff}.notification_widget.danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.notification_widget.danger.active,.notification_widget.danger.focus,.notification_widget.danger:active,.notification_widget.danger:focus,.notification_widget.danger:hover,.open>.dropdown-toggle.notification_widget.danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.notification_widget.danger.active,.notification_widget.danger:active,.open>.dropdown-toggle.notification_widget.danger{background-image:none}.notification_widget.danger.disabled,.notification_widget.danger.disabled.active,.notification_widget.danger.disabled.focus,.notification_widget.danger.disabled:active,.notification_widget.danger.disabled:focus,.notification_widget.danger.disabled:hover,.notification_widget.danger[disabled],.notification_widget.danger[disabled].active,.notification_widget.danger[disabled].focus,.notification_widget.danger[disabled]:active,.notification_widget.danger[disabled]:focus,.notification_widget.danger[disabled]:hover,fieldset[disabled] .notification_widget.danger,fieldset[disabled] .notification_widget.danger.active,fieldset[disabled] .notification_widget.danger.focus,fieldset[disabled] .notification_widget.danger:active,fieldset[disabled] .notification_widget.danger:focus,fieldset[disabled] .notification_widget.danger:hover{background-color:#d9534f;border-color:#d43f3a}.notification_widget.danger .badge{color:#d9534f;background-color:#fff}div#pager{background-color:#fff;font-size:14px;line-height:20px;overflow:hidden;display:none;position:fixed;bottom:0;width:100%;max-height:50%;padding-top:8px;-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2);z-index:100;top:auto!important}div#pager pre{line-height:1.21429em;color:#000;background-color:#f7f7f7;padding:.4em}div#pager #pager-button-area{position:absolute;top:8px;right:20px}div#pager #pager-contents{position:relative;overflow:auto;width:100%;height:100%}div#pager #pager-contents #pager-container{position:relative;padding:15px 0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}div#pager .ui-resizable-handle{top:0;height:8px;background:#f7f7f7;border-top:1px solid #cfcfcf;border-bottom:1px solid #cfcfcf}div#pager .ui-resizable-handle::after{content:'';top:2px;left:50%;height:3px;width:30px;margin-left:-15px;position:absolute;border-top:1px solid #cfcfcf}.quickhelp{display:-webkit-box;-webkit-box-orient:horizontal;display:-moz-box;-moz-box-orient:horizontal;display:box;box-orient:horizontal;box-align:stretch;display:flex;flex-direction:row;align-items:stretch}.shortcut_key{display:inline-block;width:20ex;text-align:right;font-family:monospace}.shortcut_descr{display:inline-block;-webkit-box-flex:1;-moz-box-flex:1;box-flex:1;flex:1}span.save_widget{margin-top:6px}span.save_widget span.filename{height:1em;line-height:1em;padding:3px;margin-left:16px;border:none;font-size:146.5%;border-radius:2px}span.save_widget span.filename:hover{background-color:#e6e6e6}span.autosave_status,span.checkpoint_status{font-size:small}@media (max-width:767px){span.save_widget{font-size:small}span.autosave_status,span.checkpoint_status{display:none}}@media (min-width:768px)and (max-width:991px){span.checkpoint_status{display:none}span.autosave_status{font-size:x-small}}.toolbar{padding:0;margin-left:-5px;margin-top:2px;margin-bottom:5px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.toolbar label,.toolbar select{width:auto;vertical-align:middle;margin-bottom:0;display:inline;font-size:92%;margin-left:.3em;margin-right:.3em;padding:3px 0 0}.toolbar .btn{padding:2px 8px}.toolbar .btn-group{margin-top:0;margin-left:5px}#maintoolbar{margin-bottom:-3px;margin-top:-8px;border:0;min-height:27px;margin-left:0;padding-top:11px;padding-bottom:3px}#maintoolbar .navbar-text{float:none;vertical-align:middle;text-align:right;margin-left:5px;margin-right:0;margin-top:0}.select-xs{height:24px}@-moz-keyframes fadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes fadeOut{from{opacity:1}to{opacity:0}}@-moz-keyframes fadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}.bigtooltip{overflow:auto;height:200px;-webkit-transition-property:height;-webkit-transition-duration:500ms;-moz-transition-property:height;-moz-transition-duration:500ms;transition-property:height;transition-duration:500ms}.smalltooltip{-webkit-transition-property:height;-webkit-transition-duration:500ms;-moz-transition-property:height;-moz-transition-duration:500ms;transition-property:height;transition-duration:500ms;text-overflow:ellipsis;overflow:hidden;height:80px}.tooltipbuttons{position:absolute;padding-right:15px;top:0;right:0}.tooltiptext{padding-right:30px}.ipython_tooltip{max-width:700px;animation:fadeOut 400ms;-webkit-animation:fadeIn 400ms;-moz-animation:fadeIn 400ms;animation:fadeIn 400ms;vertical-align:middle;background-color:#f7f7f7;overflow:visible;border:1px solid #ababab;outline:0;padding:3px 3px 3px 7px;padding-left:7px;font-family:monospace;min-height:50px;-moz-box-shadow:0 6px 10px -1px #adadad;-webkit-box-shadow:0 6px 10px -1px #adadad;box-shadow:0 6px 10px -1px #adadad;border-radius:2px;position:absolute;z-index:1000}.ipython_tooltip a{float:right}.ipython_tooltip .tooltiptext pre{border:0;border-radius:0;font-size:100%;background-color:#f7f7f7}.pretooltiparrow{left:0;margin:0;top:-16px;width:40px;height:16px;overflow:hidden;position:absolute}.pretooltiparrow:before{background-color:#f7f7f7;border:1px solid #ababab;z-index:11;content:"";position:absolute;left:15px;top:10px;width:25px;height:25px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg)}.terminal-app{background:#eee}.terminal-app #header{background:#fff;-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.2);box-shadow:0 0 12px 1px rgba(87,87,87,.2)}.terminal-app .terminal{float:left;font-family:monospace;color:#fff;background:#000;padding:.4em;border-radius:2px;-webkit-box-shadow:0 0 12px 1px rgba(87,87,87,.4);box-shadow:0 0 12px 1px rgba(87,87,87,.4)}.terminal-app .terminal,.terminal-app .terminal dummy-screen{line-height:1em;font-size:14px}.terminal-app .terminal-cursor{color:#000;background:#fff}.terminal-app #terminado-container{margin-top:20px}
+/*# sourceMappingURL=style.min.css.map */ \ No newline at end of file
diff --git a/var/spack/repos/builtin/packages/py-nbformat/package.py b/var/spack/repos/builtin/packages/py-nbformat/package.py
index 4ecf7f8fcf..5f7ca27008 100644
--- a/var/spack/repos/builtin/packages/py-nbformat/package.py
+++ b/var/spack/repos/builtin/packages/py-nbformat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,7 +35,6 @@ class PyNbformat(PythonPackage):
version('4.0.1', 'ab7172e517c9d561c0c01eef5631b4c8')
version('4.0.0', '7cf61359fa4e9cf3ef5e969e2fcb909e')
- depends_on('py-setuptools', type='build')
depends_on('py-ipython-genutils', type=('build', 'run'))
depends_on('py-traitlets', type=('build', 'run'))
depends_on('py-jsonschema', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-neo/package.py b/var/spack/repos/builtin/packages/py-neo/package.py
new file mode 100644
index 0000000000..03a060dec4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-neo/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyNeo(PythonPackage):
+ """Neo is a package for representing electrophysiology data in Python,
+ together with support for reading a wide range of neurophysiology
+ file formats"""
+
+ homepage = "http://neuralensemble.org/neo"
+ url = "https://pypi.io/packages/source/n/neo/neo-0.4.1.tar.gz"
+
+ version('0.4.1', 'f706df3a1bce835cb490b812ac198a6e')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.7.1:', type=('build', 'run'))
+ depends_on('py-quantities@0.9.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-nestle/package.py b/var/spack/repos/builtin/packages/py-nestle/package.py
index 22dc9debe1..ff64b08716 100644
--- a/var/spack/repos/builtin/packages/py-nestle/package.py
+++ b/var/spack/repos/builtin/packages/py-nestle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class PyNestle(PythonPackage):
"""Nested sampling algorithms for evaluating Bayesian evidence."""
homepage = "http://kbarbary.github.io/nestle/"
- url = "https://pypi.python.org/packages/source/n/nestle/nestle-0.1.1.tar.gz"
+ url = "https://pypi.io/packages/source/n/nestle/nestle-0.1.1.tar.gz"
version('0.1.1', '4875c0f9a0a8e263c1d7f5fa6ce604c5')
diff --git a/var/spack/repos/builtin/packages/py-netcdf4/package.py b/var/spack/repos/builtin/packages/py-netcdf4/package.py
new file mode 100644
index 0000000000..73e0d38586
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-netcdf4/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyNetcdf4(PythonPackage):
+ """Python interface to the netCDF Library."""
+
+ homepage = "https://github.com/Unidata/netcdf4-python"
+ url = "https://pypi.io/packages/source/n/netCDF4/netCDF4-1.2.7.tar.gz"
+
+ version('1.2.7', '77b357d78f9658dd973dee901f6d86f8')
+ version('1.2.3.1', '24fc0101c7c441709c230e76af611d53')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython@0.19:', type='build')
+
+ depends_on('py-numpy@1.7:', type=('build', 'run'))
+
+ depends_on('netcdf')
+ depends_on('hdf5@1.8.0:')
diff --git a/var/spack/repos/builtin/packages/py-netifaces/package.py b/var/spack/repos/builtin/packages/py-netifaces/package.py
new file mode 100644
index 0000000000..fcdbf80092
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-netifaces/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyNetifaces(PythonPackage):
+ """Portable network interface information"""
+
+ homepage = "https://bitbucket.org/al45tair/netifaces"
+ url = "https://pypi.io/packages/source/n/netifaces/netifaces-0.10.5.tar.gz"
+
+ version('0.10.5', '5b4d1f1310ed279e6df27ef3a9b71519')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-networkx/package.py b/var/spack/repos/builtin/packages/py-networkx/package.py
index 6eca70c15c..528fe59a01 100644
--- a/var/spack/repos/builtin/packages/py-networkx/package.py
+++ b/var/spack/repos/builtin/packages/py-networkx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,10 @@ class PyNetworkx(PythonPackage):
"""NetworkX is a Python package for the creation, manipulation, and study
of the structure, dynamics, and functions of complex networks."""
homepage = "http://networkx.github.io/"
- url = "https://pypi.python.org/packages/source/n/networkx/networkx-1.11.tar.gz"
+ url = "https://pypi.io/packages/source/n/networkx/networkx-1.11.tar.gz"
version('1.11', '6ef584a879e9163013e9a762e1cf7cd1')
+ version('1.10', 'eb7a065e37250a4cc009919dacfe7a9d')
depends_on('py-decorator', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-nose/package.py b/var/spack/repos/builtin/packages/py-nose/package.py
index 050a018ffa..566808b711 100644
--- a/var/spack/repos/builtin/packages/py-nose/package.py
+++ b/var/spack/repos/builtin/packages/py-nose/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,14 @@ class PyNose(PythonPackage):
making it easier to write, find and run tests."""
homepage = "https://pypi.python.org/pypi/nose"
- url = "https://pypi.python.org/packages/source/n/nose/nose-1.3.4.tar.gz"
+ url = "https://pypi.io/packages/source/n/nose/nose-1.3.4.tar.gz"
+
+ import_modules = [
+ 'nose', 'nose.ext', 'nose.plugins', 'nose.sphinx', 'nose.tools'
+ ]
- version('1.3.4', '6ed7169887580ddc9a8e16048d38274d')
- version('1.3.6', '0ca546d81ca8309080fc80cb389e7a16')
version('1.3.7', '4d3ad0ff07b61373d2cefc89c5d0b20b')
+ version('1.3.6', '0ca546d81ca8309080fc80cb389e7a16')
+ version('1.3.4', '6ed7169887580ddc9a8e16048d38274d')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-nosexcover/package.py b/var/spack/repos/builtin/packages/py-nosexcover/package.py
new file mode 100644
index 0000000000..7625a39d99
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-nosexcover/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyNosexcover(PythonPackage):
+ """A companion to the built-in nose.plugins.cover, this plugin will write
+ out an XML coverage report to a file named coverage.xml."""
+
+ homepage = "https://github.com/cmheisel/nose-xcover"
+ url = "https://pypi.io/packages/source/n/nosexcover/nosexcover-1.0.11.tar.gz"
+
+ version('1.0.11', 'f32ef4824b4484343e9766b2c376365d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-nose', type=('build', 'run'))
+ depends_on('py-coverage@3.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-numexpr/package.py b/var/spack/repos/builtin/packages/py-numexpr/package.py
index ee89820f5b..6db50bf00d 100644
--- a/var/spack/repos/builtin/packages/py-numexpr/package.py
+++ b/var/spack/repos/builtin/packages/py-numexpr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,10 +28,9 @@ from spack import *
class PyNumexpr(PythonPackage):
"""Fast numerical expression evaluator for NumPy"""
homepage = "https://pypi.python.org/pypi/numexpr"
- url = "https://pypi.python.org/packages/source/n/numexpr/numexpr-2.4.6.tar.gz"
+ url = "https://pypi.io/packages/source/n/numexpr/numexpr-2.6.1.tar.gz"
- version('2.6.1', '6365245705b446426df9543ad218dd8e',
- url="https://pypi.python.org/packages/c6/f0/11628fa4d332d8fe9ab0ba8e9bfe0e065fb6b5324859171ee72d84e079c0/numexpr-2.6.1.tar.gz")
+ version('2.6.1', '6365245705b446426df9543ad218dd8e')
version('2.5', '84f66cced45ba3e30dcf77a937763aaa')
version('2.4.6', '17ac6fafc9ea1ce3eb970b9abccb4fbd')
diff --git a/var/spack/repos/builtin/packages/py-numpy/package.py b/var/spack/repos/builtin/packages/py-numpy/package.py
index 25a5f04b8c..f5126e36a0 100644
--- a/var/spack/repos/builtin/packages/py-numpy/package.py
+++ b/var/spack/repos/builtin/packages/py-numpy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,25 +34,44 @@ class PyNumpy(PythonPackage):
number capabilities"""
homepage = "http://www.numpy.org/"
- url = "https://pypi.io/packages/source/n/numpy/numpy-1.9.1.tar.gz"
+ url = "https://pypi.io/packages/source/n/numpy/numpy-1.13.1.zip"
- version('1.11.2', '03bd7927c314c43780271bf1ab795ebc')
- version('1.11.1', '2f44a895a8104ffac140c3a70edbd450')
- version('1.11.0', 'bc56fb9fc2895aa4961802ffbdb31d0b')
- version('1.10.4', 'aed294de0aa1ac7bd3f9745f4f1968ad')
- version('1.9.2', 'a1ed53432dbcd256398898d35bc8e645')
- version('1.9.1', '78842b73560ec378142665e712ae4ad9')
+ install_time_test_callbacks = ['install_test', 'import_module_test']
- variant('blas', default=True)
- variant('lapack', default=True)
+ import_modules = [
+ 'numpy', 'numpy.compat', 'numpy.core', 'numpy.distutils', 'numpy.doc',
+ 'numpy.f2py', 'numpy.fft', 'numpy.lib', 'numpy.linalg', 'numpy.ma',
+ 'numpy.matrixlib', 'numpy.polynomial', 'numpy.random', 'numpy.testing',
+ 'numpy.distutils.command', 'numpy.distutils.fcompiler'
+ ]
- depends_on('python@2.6:2.8,3.2:')
- depends_on('py-nose', type='build')
+ # FIXME: numpy._build_utils and numpy.core.code_generators failed to import
+ # FIXME: Is this expected?
+
+ version('1.13.1', '2c3c0f4edf720c3a7b525dacc825b9ae')
+ version('1.13.0', 'fd044f0b8079abeaf5e6d2e93b2c1d03')
+ version('1.12.1', 'c75b072a984028ac746a6a332c209a91')
+ version('1.12.0', '33e5a84579f31829bbbba084fe0a4300')
+ version('1.11.2', '8308cc97be154d2f64a2387ea863c2ac')
+ version('1.11.1', '5caa3428b24aaa07e72c79d115140e46')
+ version('1.11.0', '19ce5c4eb16d663a0713daf0018a3021')
+ version('1.10.4', '510ffc322c635511e7be95d225b6bcbb')
+ version('1.9.2', 'e80c19d2fb25af576460bb7dac31c59a')
+ version('1.9.1', '223532d8e1bdaff5d30936439701d6e1')
+
+ variant('blas', default=True, description='Build with BLAS support')
+ variant('lapack', default=True, description='Build with LAPACK support')
+
+ depends_on('python@2.7:2.8,3.4:')
depends_on('py-setuptools', type='build')
depends_on('blas', when='+blas')
depends_on('lapack', when='+lapack')
- def setup_dependent_package(self, module, dep_spec):
+ # Tests require:
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose@1.0.0:', type='test')
+
+ def setup_dependent_package(self, module, dependent_spec):
python_version = self.spec['python'].version.up_to(2)
arch = '{0}-{1}'.format(platform.system().lower(), platform.machine())
@@ -69,16 +88,84 @@ class PyNumpy(PythonPackage):
# for build notes see http://www.scipy.org/scipylib/building/linux.html
lapackblas = LibraryList('')
if '+lapack' in spec:
- lapackblas += spec['lapack'].lapack_libs
+ lapackblas += spec['lapack'].libs
if '+blas' in spec:
- lapackblas += spec['blas'].blas_libs
+ lapackblas += spec['blas'].libs
if '+blas' in spec or '+lapack' in spec:
+ # note that one should not use [blas_opt] and [lapack_opt], see
+ # https://github.com/numpy/numpy/commit/ffd4332262ee0295cb942c94ed124f043d801eb6
with open('site.cfg', 'w') as f:
- f.write('[DEFAULT]\n')
- f.write('libraries=%s\n' % ','.join(lapackblas.names))
- f.write('library_dirs=%s\n' % ':'.join(lapackblas.directories))
+ # Unfortunately, numpy prefers to provide each BLAS/LAPACK
+ # differently.
+ names = ','.join(lapackblas.names)
+ dirs = ':'.join(lapackblas.directories)
+
+ # Special treatment for some (!) BLAS/LAPACK. Note that
+ # in this case library_dirs can not be specified within [ALL].
+ if '^openblas' in spec:
+ f.write('[openblas]\n')
+ f.write('libraries=%s\n' % names)
+ elif '^mkl' in spec:
+ # numpy does not expect system libraries needed for MKL
+ # here.
+ # names = [x for x in names if x.startswith('mkl')]
+ # FIXME: as of @1.11.2, numpy does not work with separately
+ # specified threading and interface layers. A workaround is
+ # a terribly bad idea to use mkl_rt. In this case Spack
+ # will no longer be able to guarantee that one and the
+ # same variant of Blas/Lapack (32/64bit, threaded/serial)
+ # is used within the DAG. This may lead to a lot of
+ # hard-to-debug segmentation faults on user's side. Users
+ # may also break working installation by (unconsciously)
+ # setting environment variable to switch between different
+ # interface and threading layers dynamically. From this
+ # perspective it is no different from throwing away RPATH's
+ # and using LD_LIBRARY_PATH throughout Spack.
+ f.write('[mkl]\n')
+ f.write('mkl_libs=%s\n' % 'mkl_rt')
+ elif '^atlas' in spec:
+ f.write('[atlas]\n')
+ f.write('atlas_libs=%s\n' % names)
+ else:
+ # The section title for the defaults changed in @1.10, see
+ # https://github.com/numpy/numpy/blob/master/site.cfg.example
+ if spec.satisfies('@:1.9.2'):
+ f.write('[DEFAULT]\n')
+ else:
+ f.write('[ALL]\n')
+ f.write('libraries=%s\n' % names)
+
+ f.write('library_dirs=%s\n' % dirs)
if not ((platform.system() == "Darwin") and
(platform.mac_ver()[0] == '10.12')):
- f.write('rpath=%s\n' % ':'.join(lapackblas.directories))
+ f.write('rpath=%s\n' % dirs)
+
+ def build_args(self, spec, prefix):
+ args = []
+
+ # From NumPy 1.10.0 on it's possible to do a parallel build
+ if self.version >= Version('1.10.0'):
+ args = ['-j', str(make_jobs)]
+
+ return args
+
+ def test(self):
+ # `setup.py test` is not supported. Use one of the following
+ # instead:
+ #
+ # - `python runtests.py` (to build and test)
+ # - `python runtests.py --no-build` (to test installed numpy)
+ # - `>>> numpy.test()` (run tests for installed numpy
+ # from within an interpreter)
+ pass
+
+ def install_test(self):
+ # Change directories due to the following error:
+ #
+ # ImportError: Error importing numpy: you should not try to import
+ # numpy from its source directory; please exit the numpy
+ # source tree, and relaunch your python interpreter from there.
+ with working_dir('..'):
+ python('-c', 'import numpy; numpy.test("full", verbose=2)')
diff --git a/var/spack/repos/builtin/packages/py-numpydoc/package.py b/var/spack/repos/builtin/packages/py-numpydoc/package.py
new file mode 100644
index 0000000000..f0ecfbc411
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-numpydoc/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyNumpydoc(PythonPackage):
+ """numpydoc - Numpy's Sphinx extensions"""
+
+ homepage = "https://github.com/numpy/numpydoc"
+ url = "https://pypi.io/packages/source/n/numpydoc/numpydoc-0.6.0.tar.gz"
+
+ version('0.6.0', '5f1763c44e613850d56ba1b1cf1cb146')
+
+ depends_on('python@2.6:2.8,3.3:')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-sphinx@1.0.1:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-olefile/package.py b/var/spack/repos/builtin/packages/py-olefile/package.py
new file mode 100644
index 0000000000..0925f67d96
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-olefile/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyOlefile(PythonPackage):
+ """Python package to parse, read and write Microsoft OLE2 files"""
+
+ homepage = "https://www.decalage.info/python/olefileio"
+ url = "https://pypi.io/packages/source/o/olefile/olefile-0.44.zip"
+
+ import_modules = ['olefile']
+
+ version('0.44', 'fc625554e4e7f0c2ddcd00baa3c74ff5')
+
+ depends_on('python@2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py b/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py
new file mode 100644
index 0000000000..d2e868c7c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ont-fast5-api/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyOntFast5Api(PythonPackage):
+ """This project provides classes and utility functions for working with
+ read fast5 files. It provides an abstraction layer between the underlying
+ h5py library and the various concepts central to read fast5 files, such as
+ "reads", "analyses", "analysis summaries", and "analysis datasets".
+ Ideally all interaction with a read fast5 file should be possible via this
+ API, without having to directly invoke the h5py library."""
+
+ homepage = "https://github.com/nanoporetech/ont_fast5_api"
+ url = "https://pypi.io/packages/source/o/ont-fast5-api/ont-fast5-api-0.3.2.tar.gz"
+
+ version('0.3.2', '2ccfdbcd55239ffae712bb6e70ebfe8c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-numpy@1.8.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-openpyxl/package.py b/var/spack/repos/builtin/packages/py-openpyxl/package.py
index d396916035..6f28526b8e 100644
--- a/var/spack/repos/builtin/packages/py-openpyxl/package.py
+++ b/var/spack/repos/builtin/packages/py-openpyxl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,12 +26,17 @@ from spack import *
class PyOpenpyxl(PythonPackage):
- """A Python library to read/write Excel 2007 xlsx/xlsm files"""
+ """A Python library to read/write Excel 2010 xlsx/xlsm files"""
- homepage = 'http://openpyxl.readthedocs.org/'
- url = "https://pypi.python.org/packages/source/o/openpyxl/openpyxl-2.4.0-a1.tar.gz"
+ homepage = "http://openpyxl.readthedocs.org/"
+ url = "https://pypi.io/packages/source/o/openpyxl/openpyxl-2.4.5.tar.gz"
- version('2.4.0-a1', 'e5ca6d23ceccb15115d45cdf26e736fc')
+ version('2.4.5', '3de13dc9b731e1a9dd61b873d9b35a8a')
+ version('2.2.0-b1', 'eeefabe384f6e53166c8c2e6abe5d11b')
+
+ depends_on('python@2.6:2.8,3.0:3.1,3.3:')
- depends_on('py-jdcal', type=('build', 'run'))
depends_on('py-setuptools', type='build')
+
+ depends_on('py-jdcal', type=('build', 'run'))
+ depends_on('py-et-xmlfile', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-ordereddict/package.py b/var/spack/repos/builtin/packages/py-ordereddict/package.py
index b560990f00..16587ba978 100644
--- a/var/spack/repos/builtin/packages/py-ordereddict/package.py
+++ b/var/spack/repos/builtin/packages/py-ordereddict/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,6 +30,8 @@ class PyOrdereddict(PythonPackage):
OrderedDict that works in Python 2.4-2.6."""
homepage = "https://pypi.python.org/pypi/ordereddict"
- url = "https://pypi.python.org/packages/source/o/ordereddict/ordereddict-1.1.tar.gz"
+ url = "https://pypi.io/packages/source/o/ordereddict/ordereddict-1.1.tar.gz"
+
+ import_modules = ['ordereddict']
version('1.1', 'a0ed854ee442051b249bfad0f638bbec')
diff --git a/var/spack/repos/builtin/packages/py-oset/package.py b/var/spack/repos/builtin/packages/py-oset/package.py
new file mode 100644
index 0000000000..10a5007932
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-oset/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyOset(PythonPackage):
+ """Set that remembers original insertion order."""
+
+ homepage = "https://pypi.python.org/pypi/oset"
+ url = "https://pypi.io/packages/source/o/oset/oset-0.1.3.tar.gz"
+
+ import_modules = ['oset']
+
+ version('0.1.3', 'f23e5a545d2c77df3916398d2d39a3ab')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('python@2.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-packaging/package.py b/var/spack/repos/builtin/packages/py-packaging/package.py
new file mode 100644
index 0000000000..0ee13a5cdf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-packaging/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPackaging(PythonPackage):
+ """Core utilities for Python packages."""
+
+ homepage = "https://github.com/pypa/packaging"
+ url = "https://pypi.io/packages/source/p/packaging/packaging-16.8.tar.gz"
+
+ import_modules = ['packaging']
+
+ version('16.8', '53895cdca04ecff80b54128e475b5d3b')
+
+ # Not needed for the installation, but used at runtime
+ depends_on('py-six', type='run')
+ depends_on('py-pyparsing', type='run')
+
+ # Newer versions of setuptools require packaging. Although setuptools is an
+ # optional dependency of packaging, if it is not found, setup.py will
+ # fallback on distutils.core instead. Don't add a setuptools dependency
+ # or we won't be able to bootstrap setuptools.
+
+ # depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-palettable/package.py b/var/spack/repos/builtin/packages/py-palettable/package.py
new file mode 100644
index 0000000000..65b7a9a27b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-palettable/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPalettable(PythonPackage):
+ """Color palettes for Python."""
+
+ homepage = "https://jiffyclub.github.io/palettable/"
+ url = "https://pypi.io/packages/source/p/palettable/palettable-3.0.0.tar.gz"
+
+ version('3.0.0', '6e430319fe01386c81dbbc62534e3cc4')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pandas/package.py b/var/spack/repos/builtin/packages/py-pandas/package.py
index c0da33054f..b6d8403502 100644
--- a/var/spack/repos/builtin/packages/py-pandas/package.py
+++ b/var/spack/repos/builtin/packages/py-pandas/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -36,15 +36,17 @@ class PyPandas(PythonPackage):
"""
homepage = "http://pandas.pydata.org/"
- url = "https://pypi.python.org/packages/source/p/pandas/pandas-0.16.0.tar.gz#md5=bfe311f05dc0c351f8955fbd1e296e73"
+ url = "https://pypi.io/packages/source/p/pandas/pandas-0.19.0.tar.gz"
- version('0.16.0', 'bfe311f05dc0c351f8955fbd1e296e73')
- version('0.16.1', 'fac4f25748f9610a3e00e765474bdea8')
+ version('0.19.0', 'bc9bb7188e510b5d44fbdd249698a2c3')
version('0.18.0', 'f143762cd7a59815e348adf4308d2cf6')
+ version('0.16.1', 'fac4f25748f9610a3e00e765474bdea8')
+ version('0.16.0', 'bfe311f05dc0c351f8955fbd1e296e73')
depends_on('py-dateutil', type=('build', 'run'))
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
depends_on('py-pytz', type=('build', 'run'))
depends_on('py-numexpr', type=('build', 'run'))
depends_on('py-bottleneck', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-paramiko/package.py b/var/spack/repos/builtin/packages/py-paramiko/package.py
new file mode 100644
index 0000000000..90784be649
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-paramiko/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyParamiko(PythonPackage):
+ """SSH2 protocol library"""
+
+ homepage = "http://www.paramiko.org/"
+ url = "https://pypi.io/packages/source/p/paramiko/paramiko-2.1.2.tar.gz"
+
+ version('2.1.2', '41a8ea0e8abb03a6bf59870670d4f46c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyasn1@0.1.7:', type=('build', 'run'))
+ depends_on('py-cryptography@1.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pathlib2/package.py b/var/spack/repos/builtin/packages/py-pathlib2/package.py
index 8951feff4c..f5cf9cf381 100644
--- a/var/spack/repos/builtin/packages/py-pathlib2/package.py
+++ b/var/spack/repos/builtin/packages/py-pathlib2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,4 +34,4 @@ class PyPathlib2(PythonPackage):
version('2.1.0', '38e4f58b4d69dfcb9edb49a54a8b28d2')
depends_on('py-setuptools', type='build')
- depends_on('python@:3.3.999')
+ depends_on('python@:3.3')
diff --git a/var/spack/repos/builtin/packages/py-pathos/package.py b/var/spack/repos/builtin/packages/py-pathos/package.py
new file mode 100644
index 0000000000..1ebbae5cf2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pathos/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPathos(PythonPackage):
+ """Parallel graph management and execution in heterogeneous computing """
+
+ homepage = "https://github.com/uqfoundation/pathos"
+ url = "https://pypi.io/packages/source/p/pathos/pathos-0.2.0.zip"
+
+ version('0.2.0', '7a840ce6c3a67d71e6ad7339034ec53e')
+
+ depends_on('python@2.6:2.8,3.1:')
+
+ depends_on('py-setuptools@0.6:', type='build')
+ depends_on('py-multiprocess@0.70.4:', type=('build', 'run'))
+ depends_on('py-pox@0.2.2:', type=('build', 'run'))
+ depends_on('py-ppft@1.6.4.5:', type=('build', 'run'))
+ depends_on('py-dill@0.2.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pathspec/package.py b/var/spack/repos/builtin/packages/py-pathspec/package.py
index e5030abc70..8857ee40f5 100644
--- a/var/spack/repos/builtin/packages/py-pathspec/package.py
+++ b/var/spack/repos/builtin/packages/py-pathspec/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,8 +30,8 @@ class PyPathspec(PythonPackage):
making it easier to write, find and run tests."""
homepage = "https://pypi.python.org/pypi/pathspec"
+ url = "https://pypi.io/packages/source/p/pathspec/pathspec-0.3.4.tar.gz"
- version('0.3.4', '2a4af9bf2dee98845d583ec61a00d05d',
- url='https://pypi.python.org/packages/14/9d/c9d790d373d6f6938d793e9c549b87ad8670b6fa7fc6176485e6ef11c1a4/pathspec-0.3.4.tar.gz')
+ version('0.3.4', '2a4af9bf2dee98845d583ec61a00d05d')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-patsy/package.py b/var/spack/repos/builtin/packages/py-patsy/package.py
new file mode 100644
index 0000000000..1b60b76cd7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-patsy/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPatsy(PythonPackage):
+ """A Python package for describing statistical models and for
+ building design matrices."""
+
+ homepage = "https://github.com/pydata/patsy"
+ url = "https://pypi.io/packages/source/p/patsy/patsy-0.4.1.zip"
+
+ version('0.4.1', '9445f29e3426d1ed30d683a1e1453f84')
+
+ variant('splines', description="Offers spline related functions")
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'), when="+splines")
+ depends_on('py-six', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pbr/package.py b/var/spack/repos/builtin/packages/py-pbr/package.py
index 2a320eb76d..4ada322c89 100644
--- a/var/spack/repos/builtin/packages/py-pbr/package.py
+++ b/var/spack/repos/builtin/packages/py-pbr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,12 @@ class PyPbr(PythonPackage):
"""PBR is a library that injects some useful and sensible default
behaviors into your setuptools run."""
homepage = "https://pypi.python.org/pypi/pbr"
- url = "https://pypi.python.org/packages/source/p/pbr/pbr-1.8.1.tar.gz"
+ url = "https://pypi.io/packages/source/p/pbr/pbr-1.10.0.tar.gz"
+ version('1.10.0', '8e4968c587268f030e38329feb9c8f17')
version('1.8.1', 'c8f9285e1a4ca6f9654c529b158baa3a')
depends_on('py-setuptools', type='build')
+ # Only needed for py<3.4, however when='^python@:3.4.2' syntax might be
+ # broken, if this fails, remove the when-clause
+ depends_on('py-enum34', type='build', when='^python@:3.3')
diff --git a/var/spack/repos/builtin/packages/py-periodictable/package.py b/var/spack/repos/builtin/packages/py-periodictable/package.py
index 9ff1543018..6b6cd2ecf5 100644
--- a/var/spack/repos/builtin/packages/py-periodictable/package.py
+++ b/var/spack/repos/builtin/packages/py-periodictable/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,10 @@ class PyPeriodictable(PythonPackage):
making it easier to write, find and run tests."""
homepage = "https://pypi.python.org/pypi/periodictable"
- url = "https://pypi.python.org/packages/source/p/periodictable/periodictable-1.4.1.tar.gz"
+ url = "https://pypi.io/packages/source/p/periodictable/periodictable-1.4.1.tar.gz"
version('1.4.1', '7246b63cc0b6b1be6e86b6616f9e866e')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-pyparsing', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-petsc4py/package.py b/var/spack/repos/builtin/packages/py-petsc4py/package.py
new file mode 100644
index 0000000000..383c11fd94
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-petsc4py/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPetsc4py(PythonPackage):
+ """This package provides Python bindings for the PETSc package.
+ """
+ homepage = "https://pypi.python.org/pypi/petsc4py"
+ url = "https://pypi.io/packages/source/p/petsc4py/petsc4py-3.7.0.tar.gz"
+
+ version('3.7.0', '816a20040a6a477bd637f397c9fb5b6d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-mpi4py', type=('build', 'run'))
+ depends_on('petsc+mpi')
diff --git a/var/spack/repos/builtin/packages/py-pexpect/package.py b/var/spack/repos/builtin/packages/py-pexpect/package.py
index 5c194c44b6..8900698f00 100644
--- a/var/spack/repos/builtin/packages/py-pexpect/package.py
+++ b/var/spack/repos/builtin/packages/py-pexpect/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-phonopy/package.py b/var/spack/repos/builtin/packages/py-phonopy/package.py
index b7f1003e28..fd45d7db28 100644
--- a/var/spack/repos/builtin/packages/py-phonopy/package.py
+++ b/var/spack/repos/builtin/packages/py-phonopy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pickleshare/package.py b/var/spack/repos/builtin/packages/py-pickleshare/package.py
index 9bf9ff63fb..da8bdccb5e 100644
--- a/var/spack/repos/builtin/packages/py-pickleshare/package.py
+++ b/var/spack/repos/builtin/packages/py-pickleshare/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pil/package.py b/var/spack/repos/builtin/packages/py-pil/package.py
index fb14fb9b27..332a7e91ee 100644
--- a/var/spack/repos/builtin/packages/py-pil/package.py
+++ b/var/spack/repos/builtin/packages/py-pil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pillow/package.py b/var/spack/repos/builtin/packages/py-pillow/package.py
index 5729c5c3dd..3b54ee32ae 100644
--- a/var/spack/repos/builtin/packages/py-pillow/package.py
+++ b/var/spack/repos/builtin/packages/py-pillow/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,7 @@ class PyPillow(PythonPackage):
capabilities."""
homepage = "https://python-pillow.org/"
- url = "https://pypi.python.org/packages/source/P/Pillow/Pillow-3.0.0.tar.gz"
+ url = "https://pypi.io/packages/source/P/Pillow/Pillow-3.0.0.tar.gz"
# TODO: This version should be deleted once the next release comes out.
# TODO: It fixes a bug that prevented us from linking to Tk/Tcl.
@@ -129,4 +129,6 @@ class PyPillow(PythonPackage):
return '--{0}-{1}'.format(able, variant)
variants = ['jpeg', 'zlib', 'tiff', 'freetype', 'lcms', 'jpeg2000']
- return list(map(variant_to_flag, variants))
+ args = list(map(variant_to_flag, variants))
+ args.extend(['--rpath=%s' % ":".join(self.rpath)])
+ return args
diff --git a/var/spack/repos/builtin/packages/py-pip/package.py b/var/spack/repos/builtin/packages/py-pip/package.py
index 73e1661245..d0da3dd153 100644
--- a/var/spack/repos/builtin/packages/py-pip/package.py
+++ b/var/spack/repos/builtin/packages/py-pip/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,4 +33,8 @@ class PyPip(PythonPackage):
version('9.0.1', '35f01da33009719497f01a4ba69d63c9')
- depends_on('py-setuptools', type='build')
+ depends_on('python@2.6:2.8,3.3:')
+
+ # Most Python packages only require setuptools as a build dependency.
+ # However, pip requires setuptools during runtime as well.
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pipits/package.py b/var/spack/repos/builtin/packages/py-pipits/package.py
new file mode 100644
index 0000000000..e24f4718db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pipits/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPipits(PythonPackage):
+ """Automated pipeline for analyses of fungal ITS from the Illumina"""
+
+ homepage = "https://github.com/hsgweon/pipits"
+ url = "https://github.com/hsgweon/pipits/archive/1.5.0.tar.gz"
+
+ version('1.5.0', '3f9b52bd7ffbcdb96d7bec150275070a')
+
+ depends_on('python@:2.999', type=('build', 'run'))
+ depends_on('py-biom-format', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('java', type=('build', 'run'))
+ depends_on('hmmer')
+ depends_on('fastx-toolkit')
+ depends_on('vsearch')
+ depends_on('itsx')
+ depends_on('rdp-classifier')
+
+ resource(
+ name='UNITE_retrained',
+ url='http://sourceforge.net/projects/pipits/files/UNITE_retrained_28.06.2017.tar.gz',
+ destination='refdb'
+ )
+
+ resource(
+ name='uchime_reference_dataset_01.01.2016.fasta',
+ url='https://unite.ut.ee/sh_files/uchime_reference_dataset_01.01.2016.zip',
+ destination=join_path('refdb', 'uchime_reference_dataset_01.01.2016')
+ )
+
+ resource(
+ name='warcup_retrained_V2',
+ url='https://sourceforge.net/projects/pipits/files/warcup_retrained_V2.tar.gz',
+ destination='refdb'
+ )
+
+ @run_after('install')
+ def install_db(self):
+ install_tree(join_path(self.stage.source_path, 'refdb'),
+ self.prefix.refdb)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('PIPITS_UNITE_REFERENCE_DATA_CHIMERA', join_path(
+ self.prefix, 'refdb',
+ 'uchime_reference_dataset_01.01.2016',
+ 'uchime_reference_dataset_01.01.2016.fasta'))
+ run_env.set('PIPITS_UNITE_RETRAINED_DIR',
+ self.prefix.refdb.UNITE_retrained)
+ run_env.set('PIPITS_WARCUP_RETRAINED_DIR',
+ self.prefix.refdb.warcup_retrained_V2)
+ run_env.set('PIPITS_RDP_CLASSIFIER_JAR', join_path(
+ self.spec['rdp-classifier'].prefix.bin,
+ 'classifier.jar'))
diff --git a/var/spack/repos/builtin/packages/py-pkgconfig/package.py b/var/spack/repos/builtin/packages/py-pkgconfig/package.py
new file mode 100644
index 0000000000..eb3be23871
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pkgconfig/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPkgconfig(PythonPackage):
+ """Interface Python with pkg-config."""
+
+ homepage = "http://github.com/matze/pkgconfig"
+ url = "https://pypi.io/packages/source/p/pkgconfig/pkgconfig-1.2.2.tar.gz"
+
+ version('1.2.2', '81a8f6ef3371831d081e03db39e09683')
+
+ depends_on('python@2.6:')
+ depends_on('py-setuptools', type='build')
+
+ depends_on('pkg-config', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose@1.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-ply/package.py b/var/spack/repos/builtin/packages/py-ply/package.py
index f5a1e537e2..f1ccd85c3f 100644
--- a/var/spack/repos/builtin/packages/py-ply/package.py
+++ b/var/spack/repos/builtin/packages/py-ply/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pmw/package.py b/var/spack/repos/builtin/packages/py-pmw/package.py
index 3293d94cd6..b22499d137 100644
--- a/var/spack/repos/builtin/packages/py-pmw/package.py
+++ b/var/spack/repos/builtin/packages/py-pmw/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,6 +29,6 @@ class PyPmw(PythonPackage):
"""Pmw is a toolkit for building high-level compound widgets, or
megawidgets, constructed using other widgets as component parts."""
homepage = "https://pypi.python.org/pypi/Pmw"
- url = "https://pypi.python.org/packages/source/P/Pmw/Pmw-2.0.0.tar.gz"
+ url = "https://pypi.io/packages/source/P/Pmw/Pmw-2.0.0.tar.gz"
version('2.0.0', 'c7c3f26c4f5abaa99807edefee578fc0')
diff --git a/var/spack/repos/builtin/packages/py-pox/package.py b/var/spack/repos/builtin/packages/py-pox/package.py
new file mode 100644
index 0000000000..a4fe508ab2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pox/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPox(PythonPackage):
+ """Utilities for filesystem exploration and automated builds."""
+
+ homepage = "https://github.com/uqfoundation/pox"
+ url = "https://pypi.io/packages/source/p/pox/pox-0.2.3.zip"
+
+ version('0.2.3', 'fcdfd9a9ab0f72367258b675554f6a83')
+ version('0.2.2', 'e1e2ce99a63d7226ea3c1a2ce389610d')
+ version('0.2.1', '517dc13c2bc2429d36a0c636f3ce42db')
+
+ depends_on('python@2.5:2.8,3.1:')
+
+ depends_on('py-setuptools@0.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/py-ppft/package.py b/var/spack/repos/builtin/packages/py-ppft/package.py
new file mode 100644
index 0000000000..ca14fbb6b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ppft/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPpft(PythonPackage):
+ """Distributed and parallel python """
+
+ homepage = "https://github.com/uqfoundation/ppft"
+ url = "https://pypi.io/packages/source/p/ppft/ppft-1.6.4.7.1.zip"
+
+ version('1.6.4.7.1', '2b196a03bfbc102773f849c6b21e617b')
+ version('1.6.4.6', 'e533432bfba4b5a523a07d58011df209')
+ version('1.6.4.5', 'd2b1f9f07eae22b31bfe90f544dd3044')
+
+ depends_on('python@2.5:2.8,3.1:')
+
+ depends_on('py-setuptools@0.6:', type='build')
+ depends_on('py-six@1.7.3:', type=('build', 'run'))
+ depends_on('py-dill@0.2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-prettytable/package.py b/var/spack/repos/builtin/packages/py-prettytable/package.py
index 2203f68af0..5f8378ca7c 100644
--- a/var/spack/repos/builtin/packages/py-prettytable/package.py
+++ b/var/spack/repos/builtin/packages/py-prettytable/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,7 @@ class PyPrettytable(PythonPackage):
"""
homepage = "https://code.google.com/archive/p/prettytable/"
- url = "https://pypi.python.org/packages/e0/a1/36203205f77ccf98f3c6cf17cf068c972e6458d7e58509ca66da949ca347/prettytable-0.7.2.tar.gz"
+ url = "https://pypi.io/packages/source/p/prettytable/prettytable-0.7.2.tar.gz"
version('0.7.2', 'a6b80afeef286ce66733d54a0296b13b')
diff --git a/var/spack/repos/builtin/packages/py-proj/package.py b/var/spack/repos/builtin/packages/py-proj/package.py
index 949aab88c3..cea4f0c3ea 100644
--- a/var/spack/repos/builtin/packages/py-proj/package.py
+++ b/var/spack/repos/builtin/packages/py-proj/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,9 +32,8 @@ class PyProj(PythonPackage):
# This is not a tagged release of pyproj.
# The changes in this "version" fix some bugs, especially with Python3 use.
- version('1.9.5.1.1', 'd035e4bc704d136db79b43ab371b27d2',
- url='https://www.github.com/jswhit/pyproj/tarball/0be612cc9f972e38b50a90c946a9b353e2ab140f')
-
+ version('1.9.5.1.1', git='https://www.github.com/jswhit/pyproj.git',
+ commit='0be612cc9f972e38b50a90c946a9b353e2ab140f')
version('1.9.5.1', 'a4b80d7170fc82aee363d7f980279835')
depends_on('py-cython', type='build')
diff --git a/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py b/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
index da48cb932f..f9b07f30d1 100644
--- a/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
+++ b/var/spack/repos/builtin/packages/py-prompt-toolkit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-protobuf/package.py b/var/spack/repos/builtin/packages/py-protobuf/package.py
index 4cdb3801a5..fd3e4a6f09 100644
--- a/var/spack/repos/builtin/packages/py-protobuf/package.py
+++ b/var/spack/repos/builtin/packages/py-protobuf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,7 @@ class PyProtobuf(PythonPackage):
and using a variety of languages."""
homepage = 'https://developers.google.com/protocol-buffers/'
- url = 'https://pypi.python.org/packages/source/p/protobuf/protobuf-3.0.0b2.tar.gz'
+ url = 'https://pypi.io/packages/source/p/protobuf/protobuf-3.0.0b2.tar.gz'
version('3.0.0b2', 'f0d3bd2394345a9af4a277cd0302ae83')
version('2.6.1', '6bf843912193f70073db7f22e2ea55e2')
diff --git a/var/spack/repos/builtin/packages/py-psutil/package.py b/var/spack/repos/builtin/packages/py-psutil/package.py
index 7aa776d2a1..60c3368966 100644
--- a/var/spack/repos/builtin/packages/py-psutil/package.py
+++ b/var/spack/repos/builtin/packages/py-psutil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,15 @@
from spack import *
-class PyPsutil(Package):
+class PyPsutil(PythonPackage):
"""psutil is a cross-platform library for retrieving information on
running processes and system utilization (CPU, memory, disks, network)
in Python."""
homepage = "https://pypi.python.org/pypi/psutil"
- url = "https://pypi.python.org/packages/d9/c8/8c7a2ab8ec108ba9ab9a4762c5a0d67c283d41b13b5ce46be81fdcae3656/psutil-5.0.1.tar.gz"
+ url = "https://pypi.io/packages/source/p/psutil/psutil-5.0.1.tar.gz"
version('5.0.1', '153dc8be94badc4072016ceeac7808dc')
- extends('python')
depends_on('python@2.6:')
depends_on('py-setuptools', type='build')
-
- def install(self, spec, prefix):
- setup_py('install', '--prefix=%s' % prefix)
diff --git a/var/spack/repos/builtin/packages/py-ptyprocess/package.py b/var/spack/repos/builtin/packages/py-ptyprocess/package.py
index 2419793227..f97ff6e048 100644
--- a/var/spack/repos/builtin/packages/py-ptyprocess/package.py
+++ b/var/spack/repos/builtin/packages/py-ptyprocess/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,5 +32,3 @@ class PyPtyprocess(PythonPackage):
url = "https://pypi.io/packages/source/p/ptyprocess/ptyprocess-0.5.1.tar.gz"
version('0.5.1', '94e537122914cc9ec9c1eadcd36e73a1')
-
- depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pudb/package.py b/var/spack/repos/builtin/packages/py-pudb/package.py
index 66896bd83f..bbc89251fe 100644
--- a/var/spack/repos/builtin/packages/py-pudb/package.py
+++ b/var/spack/repos/builtin/packages/py-pudb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,13 @@ class PyPudb(PythonPackage):
"""Full-screen console debugger for Python"""
homepage = "http://mathema.tician.de/software/pudb"
- url = "https://pypi.io/packages/source/p/pudb/pudb-2016.2.tar.gz"
+ url = "https://pypi.io/packages/source/p/pudb/pudb-2017.1.1.tar.gz"
- version('2016.2', '4573b70163329c1cb59836a357bfdf7c')
+ version('2017.1.1', '4ec3302ef90f22b13c60db16b3557c56')
+ version('2016.2', '4573b70163329c1cb59836a357bfdf7c')
- depends_on('py-setuptools', type='build')
- depends_on('py-urwid@1.1.1:', type=('build', 'run'))
+ # Most Python packages only require setuptools as a build dependency.
+ # However, pudb requires setuptools during runtime as well.
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-urwid@1.1.1:', type=('build', 'run'))
depends_on('py-pygments@1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-py/package.py b/var/spack/repos/builtin/packages/py-py/package.py
index 5a963105bd..9706a2659d 100644
--- a/var/spack/repos/builtin/packages/py-py/package.py
+++ b/var/spack/repos/builtin/packages/py-py/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,13 @@ class PyPy(PythonPackage):
"""library with cross-python path, ini-parsing, io, code, log facilities"""
homepage = "http://pylib.readthedocs.io/en/latest/"
- url = "https://pypi.python.org/packages/source/p/py/py-1.4.31.tar.gz"
+ url = "https://pypi.io/packages/source/p/py/py-1.4.33.tar.gz"
+ import_modules = [
+ 'py', 'py._code', 'py._io', 'py._log', 'py._path', 'py._process',
+ ]
+
+ version('1.4.33', '15d7107cbb8b86593bf9afa16e56da65')
version('1.4.31', '5d2c63c56dc3f2115ec35c066ecd582b')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-py2bit/package.py b/var/spack/repos/builtin/packages/py-py2bit/package.py
new file mode 100644
index 0000000000..26d1f42a7b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-py2bit/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPy2bit(PythonPackage):
+ """A package for accessing 2bit files using lib2bit."""
+
+ homepage = "https://pypi.python.org/pypi/py2bit"
+ url = "https://pypi.io/packages/source/p/py2bit/py2bit-0.2.1.tar.gz"
+
+ version('0.2.1', 'eaf5b1c80a0bbf0b35af1f002f83a556')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-py2cairo/package.py b/var/spack/repos/builtin/packages/py-py2cairo/package.py
index bb404c61f0..30e363885d 100644
--- a/var/spack/repos/builtin/packages/py-py2cairo/package.py
+++ b/var/spack/repos/builtin/packages/py-py2cairo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class PyPy2cairo(Package):
+class PyPy2cairo(WafPackage):
"""Pycairo is a set of Python bindings for the cairo graphics library."""
homepage = "https://www.cairographics.org/pycairo/"
@@ -35,10 +35,15 @@ class PyPy2cairo(Package):
extends('python')
- depends_on('cairo+X')
+ depends_on('python', type=('build', 'run'))
+ depends_on('cairo@1.10.0:')
depends_on('pixman')
+ depends_on('pkg-config', type='build')
- def install(self, spec, prefix):
- python('waf', 'configure', '--prefix={0}'.format(prefix))
- python('waf', 'build')
- python('waf', 'install')
+ # TODO: Add a 'test' deptype
+ # depends_on('py-pytest', type='test')
+
+ def installtest(self):
+ with working_dir('test'):
+ pytest = which('py.test')
+ pytest()
diff --git a/var/spack/repos/builtin/packages/py-py2neo/package.py b/var/spack/repos/builtin/packages/py-py2neo/package.py
index 1db080ac97..27bb043116 100644
--- a/var/spack/repos/builtin/packages/py-py2neo/package.py
+++ b/var/spack/repos/builtin/packages/py-py2neo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-py4j/package.py b/var/spack/repos/builtin/packages/py-py4j/package.py
new file mode 100644
index 0000000000..0c7e41a1d7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-py4j/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPy4j(PythonPackage):
+ """Enables Python programs to dynamically access arbitrary Java
+ objects."""
+
+ homepage = "https://www.py4j.org/"
+ url = "https://pypi.io/packages/source/p/py4j/py4j-0.10.4.tar.gz"
+
+ version('0.10.4', 'de1ce072fb8d5bff8aba537b1700ace4')
+ version('0.10.3', '6c86aebb4f1cdd4bf192b16c8a8fe8e4')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pyasn1/package.py b/var/spack/repos/builtin/packages/py-pyasn1/package.py
new file mode 100644
index 0000000000..3a7fc949c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyasn1/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyPyasn1(PythonPackage):
+ """ Generic ASN.1 library for Python http://pyasn1.sf.net"""
+
+ homepage = "https://github.com/etingof/pyasn1"
+ url = "https://pypi.io/packages/source/p/pyasn1/pyasn1-0.2.3.tar.gz"
+
+ version('0.2.3', '79f98135071c8dd5c37b6c923c51be45')
+ depends_on('py-setuptools', type='build')
+ depends_on('python@2.4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pybigwig/package.py b/var/spack/repos/builtin/packages/py-pybigwig/package.py
new file mode 100644
index 0000000000..5c88d111f5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pybigwig/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPybigwig(PythonPackage):
+ """A package for accessing bigWig files using libBigWig."""
+
+ homepage = "https://pypi.python.org/pypi/pyBigWig"
+ url = "https://pypi.io/packages/source/p/pyBigWig/pyBigWig-0.3.4.tar.gz"
+
+ version('0.3.4', '8e0a91e26e87eeaa071408a3a749bfa9')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('curl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pybind11/package.py b/var/spack/repos/builtin/packages/py-pybind11/package.py
new file mode 100644
index 0000000000..aaa54370bf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pybind11/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPybind11(CMakePackage):
+ """pybind11 -- Seamless operability between C++11 and Python.
+ pybind11 is a lightweight header-only library that exposes C++ types in
+ Python and vice versa, mainly to create Python bindings of existing C++
+ code. Its goals and syntax are similar to the excellent Boost.Python
+ library by David Abrahams: to minimize boilerplate code in traditional
+ extension modules by inferring type information using compile-time
+ introspection."""
+
+ homepage = "https://pybind11.readthedocs.io"
+ url = "https://github.com/pybind/pybind11/archive/v2.1.0.tar.gz"
+
+ version('2.2.0', '978b26aea1c6bfc4f88518ef33771af2')
+ version('2.1.1', '5518988698df937ccee53fb6ba91d12a')
+ version('2.1.0', '3cf07043d677d200720c928569635e12')
+
+ depends_on('py-pytest', type=('build'))
+
+ extends('python')
+
+ def cmake_args(self):
+ args = []
+ args.append('-DPYTHON_EXECUTABLE:FILEPATH=%s'
+ % self.spec['python'].command.path)
+ return args
diff --git a/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py b/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py
new file mode 100644
index 0000000000..45371400a3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pybtex-docutils/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPybtexDocutils(PythonPackage):
+ """A docutils backend for pybtex."""
+
+ homepage = "https://pypi.python.org/pypi/pybtex-docutils/"
+ url = "https://pypi.io/packages/source/p/pybtex-docutils/pybtex-docutils-0.2.1.tar.gz"
+
+ import_modules = ['pybtex_docutils']
+
+ version('0.2.1', '7ae4b00562bd8881f582edf95009cc62')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-docutils@0.8:', type=('build', 'run'))
+ depends_on('py-pybtex@0.16:', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pybtex/package.py b/var/spack/repos/builtin/packages/py-pybtex/package.py
new file mode 100644
index 0000000000..606c047232
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pybtex/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyPybtex(PythonPackage):
+ """Pybtex is a BibTeX-compatible bibliography processor written in
+ Python."""
+
+ homepage = "https://pybtex.org"
+ url = "https://pypi.io/packages/source/P/Pybtex/pybtex-0.21.tar.gz"
+
+ import_modules = [
+ 'custom_fixers', 'pybtex', 'pybtex.style', 'pybtex.tests',
+ 'pybtex.database', 'pybtex.backends', 'pybtex.bibtex',
+ 'pybtex.charwidths', 'pybtex.markup', 'pybtex.plugin',
+ 'pybtex.style.sorting', 'pybtex.style.names',
+ 'pybtex.style.labels', 'pybtex.style.formatting',
+ 'pybtex.tests.database_test', 'pybtex.tests.bst_parser_test',
+ 'pybtex.tests.data', 'pybtex.database.output',
+ 'pybtex.database.input', 'pybtex.database.format',
+ 'pybtex.database.convert'
+ ]
+
+ version('0.21', 'e7b320b2bcb34c664c4385533a2ea831')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-latexcodec@1.0.4:', type=('build', 'run'))
+ depends_on('py-pyyaml@3.01:', type=('build', 'run'))
+ # This dependency breaks concretization
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-counter@1:', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pychecker/package.py b/var/spack/repos/builtin/packages/py-pychecker/package.py
index de09b380c9..2f85fa88ac 100644
--- a/var/spack/repos/builtin/packages/py-pychecker/package.py
+++ b/var/spack/repos/builtin/packages/py-pychecker/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pycodestyle/package.py b/var/spack/repos/builtin/packages/py-pycodestyle/package.py
index 3e668a2704..3bae7c4296 100644
--- a/var/spack/repos/builtin/packages/py-pycodestyle/package.py
+++ b/var/spack/repos/builtin/packages/py-pycodestyle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pycparser/package.py b/var/spack/repos/builtin/packages/py-pycparser/package.py
index 8de5c39d32..256130b1b7 100644
--- a/var/spack/repos/builtin/packages/py-pycparser/package.py
+++ b/var/spack/repos/builtin/packages/py-pycparser/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,8 +28,11 @@ from spack import *
class PyPycparser(PythonPackage):
"""A complete parser of the C language, written in pure python."""
homepage = "https://github.com/eliben/pycparser"
- url = "https://pypi.python.org/packages/source/p/pycparser/pycparser-2.13.tar.gz"
+ url = "https://pypi.io/packages/source/p/pycparser/pycparser-2.17.tar.gz"
+ import_modules = ['pycparser', 'pycparser.ply']
+
+ version('2.17', 'ca98dcb50bc1276f230118f6af5a40c7')
version('2.13', 'e4fe1a2d341b22e25da0d22f034ef32f')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pycrypto/package.py b/var/spack/repos/builtin/packages/py-pycrypto/package.py
new file mode 100644
index 0000000000..948a4f7cbd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pycrypto/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyPycrypto(PythonPackage):
+ """The Python Cryptography Toolkit"""
+
+ homepage = "https://www.dlitz.net/software/pycrypto/"
+ url = "https://pypi.io/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz"
+
+ version('2.6.1', '55a61a054aa66812daf5161a0d5d7eda')
+
+ # depends_on('py-setuptools', type='build')
+ depends_on('gmp')
diff --git a/var/spack/repos/builtin/packages/py-pycurl/package.py b/var/spack/repos/builtin/packages/py-pycurl/package.py
index 81a2a35064..c111430b9e 100644
--- a/var/spack/repos/builtin/packages/py-pycurl/package.py
+++ b/var/spack/repos/builtin/packages/py-pycurl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,9 @@ class PyPycurl(PythonPackage):
objects identified by a URL from a Python program."""
homepage = "http://pycurl.io/"
- url = "https://pypi.python.org/packages/source/p/pycurl/pycurl-7.43.0.tar.gz"
+ url = "https://pypi.io/packages/source/p/pycurl/pycurl-7.43.0.tar.gz"
version('7.43.0', 'c94bdba01da6004fa38325e9bd6b9760')
depends_on('python@2.6:')
- depends_on('py-setuptools', type='build')
depends_on('curl@7.19.0:')
diff --git a/var/spack/repos/builtin/packages/py-pydatalog/package.py b/var/spack/repos/builtin/packages/py-pydatalog/package.py
index 600a34cdfc..9bd5c898a2 100644
--- a/var/spack/repos/builtin/packages/py-pydatalog/package.py
+++ b/var/spack/repos/builtin/packages/py-pydatalog/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,6 +28,6 @@ from spack import *
class PyPydatalog(PythonPackage):
"""pyDatalog adds logic programming to Python."""
homepage = 'https://pypi.python.org/pypi/pyDatalog/'
- url = 'https://pypi.python.org/packages/09/0b/2670eb9c0027aacfb5b5024ca75e5fee2f1261180ab8797108ffc941158a/pyDatalog-0.17.1.zip'
+ url = 'https://pypi.io/packages/source/p/pyDatalog/pyDatalog-0.17.1.zip'
version('0.17.1', '6b2682301200068d208d6f2d01723939')
diff --git a/var/spack/repos/builtin/packages/py-pydispatcher/package.py b/var/spack/repos/builtin/packages/py-pydispatcher/package.py
new file mode 100644
index 0000000000..9e329ab70c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydispatcher/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPydispatcher(PythonPackage):
+ """Multi-producer-multi-consumer signal dispatching mechanism."""
+
+ homepage = "http://pydispatcher.sourceforge.net/"
+ url = "https://pypi.io/packages/source/P/PyDispatcher/PyDispatcher-2.0.5.tar.gz"
+
+ version('2.0.5', '1b9c2ca33580c2770577add7130b0b28')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pydot/package.py b/var/spack/repos/builtin/packages/py-pydot/package.py
new file mode 100644
index 0000000000..c6067c00a1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pydot/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPydot(PythonPackage):
+ """Python interface to Graphviz's Dot language"""
+
+ homepage = "https://github.com/erocarrera/pydot/"
+ url = "https://pypi.io/packages/source/p/pydot/pydot-1.2.3.tar.gz"
+
+ version('1.2.3', '5b50fd8cf022811d8718562ebc8aefb2')
+ version('1.2.2', 'fad67d9798dbb33bb3dca3e6d4c47665')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyparsing@2.1.4:', type=('build', 'run'))
+ depends_on('graphviz', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyelftools/package.py b/var/spack/repos/builtin/packages/py-pyelftools/package.py
index d586f14f0d..a7d52ee946 100644
--- a/var/spack/repos/builtin/packages/py-pyelftools/package.py
+++ b/var/spack/repos/builtin/packages/py-pyelftools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,6 +29,6 @@ class PyPyelftools(PythonPackage):
"""A pure-Python library for parsing and analyzing ELF files and DWARF
debugging information"""
homepage = "https://pypi.python.org/pypi/pyelftools"
- url = "https://pypi.python.org/packages/source/p/pyelftools/pyelftools-0.23.tar.gz"
+ url = "https://pypi.io/packages/source/p/pyelftools/pyelftools-0.23.tar.gz"
version('0.23', 'aa7cefa8bd2f63d7b017440c9084f310')
diff --git a/var/spack/repos/builtin/packages/py-pyfasta/package.py b/var/spack/repos/builtin/packages/py-pyfasta/package.py
new file mode 100644
index 0000000000..40a5fcf46e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyfasta/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyfasta(PythonPackage):
+ """Pyfasta: fast, memory-efficient, pythonic (and command-line)
+ access to fasta sequence files"""
+
+ homepage = "https://pypi.python.org/pypi/pyfasta/"
+ url = "https://pypi.python.org/packages/be/3f/794fbcdaaa2113f0a1d16a962463896c1a6bdab77bd63f33a8f16aae6cdc/pyfasta-0.5.2.tar.gz"
+
+ version('0.5.2', 'bf61ab997dca329675c3eb2ee7cdfcf2')
+
+ depends_on('python@2.6:')
+ depends_on('py-setuptools')
+ depends_on('py-numpy')
diff --git a/var/spack/repos/builtin/packages/py-pyfftw/package.py b/var/spack/repos/builtin/packages/py-pyfftw/package.py
new file mode 100644
index 0000000000..4dd9fe1600
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyfftw/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyfftw(PythonPackage):
+ """A pythonic wrapper around FFTW, the FFT library,
+ presenting a unified interface for all the supported transforms."""
+
+ homepage = "http://hgomersall.github.com/pyFFTW"
+ url = "https://pypi.io/packages/source/p/pyFFTW/pyFFTW-0.10.4.tar.gz"
+
+ version('0.10.4', '7fb59450308881bb48d9f178947d950e')
+
+ depends_on('fftw')
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy@1.6:', type=('build', 'run'))
+ depends_on('py-scipy@0.12.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyflakes/package.py b/var/spack/repos/builtin/packages/py-pyflakes/package.py
index 53674bb6e4..6f962ae4df 100644
--- a/var/spack/repos/builtin/packages/py-pyflakes/package.py
+++ b/var/spack/repos/builtin/packages/py-pyflakes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pygments/package.py b/var/spack/repos/builtin/packages/py-pygments/package.py
index 42e3366cdf..8c6ee04db8 100644
--- a/var/spack/repos/builtin/packages/py-pygments/package.py
+++ b/var/spack/repos/builtin/packages/py-pygments/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,9 +28,15 @@ from spack import *
class PyPygments(PythonPackage):
"""Pygments is a syntax highlighting package written in Python."""
- homepage = "https://pypi.python.org/pypi/pygments"
- url = "https://pypi.python.org/packages/source/P/Pygments/Pygments-2.0.1.tar.gz"
+ homepage = "http://pygments.org/"
+ url = "https://pypi.io/packages/source/P/Pygments/Pygments-2.2.0.tar.gz"
+ import_modules = [
+ 'pygments', 'pygments.filters', 'pygments.formatters',
+ 'pygments.lexers', 'pygments.styles'
+ ]
+
+ version('2.2.0', '13037baca42f16917cbd5ad2fab50844')
version('2.1.3', 'ed3fba2467c8afcda4d317e4ef2c6150')
version('2.0.1', 'e0daf4c14a4fe5b630da765904de4d6c')
version('2.0.2', '238587a1370d62405edabd0794b3ec4a')
diff --git a/var/spack/repos/builtin/packages/py-pygobject/package.py b/var/spack/repos/builtin/packages/py-pygobject/package.py
index 1dae1a128b..6c81418fce 100644
--- a/var/spack/repos/builtin/packages/py-pygobject/package.py
+++ b/var/spack/repos/builtin/packages/py-pygobject/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,18 +31,23 @@ class PyPygobject(AutotoolsPackage):
homepage = "https://pypi.python.org/pypi/pygobject"
- # FIXME: This URL is no longer available for download from PyPi
- url = "https://pypi.python.org/packages/6d/15/97c8b5ccca2be14cf59a2f79e15e3a82a1c3408a6b76b4107689a8b94846/pygobject-2.28.3.tar.bz2"
+ url = "http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.28/pygobject-2.28.6.tar.bz2"
+ version('2.28.6', 'a43d783228dd32899e6908352b8308f3')
version('2.28.3', 'aa64900b274c4661a5c32e52922977f9')
extends('python')
+
depends_on("libffi")
depends_on('glib')
- depends_on('py-py2cairo')
+ depends_on('py-py2cairo', type=('build', 'run'))
depends_on('gobject-introspection')
- patch('pygobject-2.28.6-introspection-1.patch')
+ patch('pygobject-2.28.6-introspection-1.patch', when='@2.28.3:2.28.6')
+
+ # patch from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/development/python-modules/pygobject/pygobject-2.28.6-gio-types-2.32.patch
+ # for https://bugzilla.gnome.org/show_bug.cgi?id=668522
+ patch('pygobject-2.28.6-gio-types-2.32.patch', when='@2.28.6')
def install(self, spec, prefix):
make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/py-pygobject/pygobject-2.28.6-gio-types-2.32.patch b/var/spack/repos/builtin/packages/py-pygobject/pygobject-2.28.6-gio-types-2.32.patch
new file mode 100644
index 0000000000..fa0adf54ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pygobject/pygobject-2.28.6-gio-types-2.32.patch
@@ -0,0 +1,50 @@
+From 42d01f060c5d764baa881d13c103d68897163a49 Mon Sep 17 00:00:00 2001
+From: Ryan Lortie <desrt@desrt.ca>
+Date: Mon, 12 Mar 2012 16:44:14 -0400
+Subject: [PATCH] gio-types.defs: change some enums to flags
+
+These flags types were originally incorrectly handled in glib as being
+enums. That bug was fixed, but they're still enums here, leading to
+warnings about the mismatch.
+
+Change them to flags.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=668522
+---
+ gio/gio-types.defs | 6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/gio/gio-types.defs b/gio/gio-types.defs
+index 331e0bc..7eee5c8 100644
+--- a/gio/gio-types.defs
++++ b/gio/gio-types.defs
+@@ -526,7 +526,7 @@
+ )
+ )
+
+-(define-enum MountMountFlags
++(define-flags MountMountFlags
+ (in-module "gio")
+ (c-name "GMountMountFlags")
+ (gtype-id "G_TYPE_MOUNT_MOUNT_FLAGS")
+@@ -545,7 +545,7 @@
+ )
+ )
+
+-(define-enum DriveStartFlags
++(define-flags DriveStartFlags
+ (in-module "gio")
+ (c-name "GDriveStartFlags")
+ (gtype-id "G_TYPE_DRIVE_START_FLAGS")
+@@ -770,7 +770,7 @@
+ )
+ )
+
+-(define-enum SocketMsgFlags
++(define-flags SocketMsgFlags
+ (in-module "gio")
+ (c-name "GSocketMsgFlags")
+ (gtype-id "G_TYPE_SOCKET_MSG_FLAGS")
+--
+1.7.8.5
+
diff --git a/var/spack/repos/builtin/packages/py-pygtk/package.py b/var/spack/repos/builtin/packages/py-pygtk/package.py
index 56e0b39fd5..5a05a3a402 100644
--- a/var/spack/repos/builtin/packages/py-pygtk/package.py
+++ b/var/spack/repos/builtin/packages/py-pygtk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,8 @@ from spack import *
class PyPygtk(AutotoolsPackage):
- """bindings for the Gtk in Python"""
+ """bindings for the Gtk2 in Python.
+ use pygobject for Gtk3."""
homepage = "http://www.pygtk.org/"
url = "http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.24/pygtk-2.24.0.tar.gz"
@@ -36,9 +37,10 @@ class PyPygtk(AutotoolsPackage):
depends_on("libffi")
depends_on('cairo')
depends_on('glib')
- depends_on('gtkplus')
- depends_on('py-pygobject')
- depends_on('py-py2cairo')
+ # for GTK 3.X use pygobject 3.X instead of pygtk
+ depends_on('gtkplus+X@2.24:2.99')
+ depends_on('py-pygobject@2.28:2.99', type=('build', 'run'))
+ depends_on('py-py2cairo', type=('build', 'run'))
def install(self, spec, prefix):
make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/py-pylint/package.py b/var/spack/repos/builtin/packages/py-pylint/package.py
index 84830c9bcf..fb6cb2946e 100644
--- a/var/spack/repos/builtin/packages/py-pylint/package.py
+++ b/var/spack/repos/builtin/packages/py-pylint/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,14 +28,17 @@ from spack import *
class PyPylint(PythonPackage):
"""array processing for numbers, strings, records, and objects."""
homepage = "https://pypi.python.org/pypi/pylint"
- url = "https://pypi.python.org/packages/source/p/pylint/pylint-1.4.1.tar.gz"
+ url = "https://pypi.io/packages/source/p/pylint/pylint-1.7.2.tar.gz"
- version('1.4.1', 'df7c679bdcce5019389038847e4de622')
+ version('1.7.2', '27ee752cdcfacb05bf4940947e6b35c6')
version('1.4.3', '5924c1c7ca5ca23647812f5971d0ea44')
+ version('1.4.1', 'df7c679bdcce5019389038847e4de622')
extends('python', ignore=r'bin/pytest')
depends_on('py-six', type=('build', 'run'))
depends_on('py-astroid', type=('build', 'run'))
depends_on('py-logilab-common', type=('build', 'run'))
- depends_on('py-nose', type='build')
depends_on('py-setuptools', type='build')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pymatgen/package.py b/var/spack/repos/builtin/packages/py-pymatgen/package.py
new file mode 100644
index 0000000000..78343e74ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pymatgen/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPymatgen(PythonPackage):
+ """Python Materials Genomics is a robust materials analysis code that
+ defines core object representations for structures and molecules with
+ support for many electronic structure codes. It is currently the core
+ analysis code powering the Materials Project."""
+
+ homepage = "http://www.pymatgen.org/"
+ url = "https://pypi.io/packages/source/p/pymatgen/pymatgen-4.7.2.tar.gz"
+
+ version('4.7.2', '9c3a6e8608671c216e4ef89778646fd6')
+ version('4.6.2', '508f77fdc3e783587348e93e4dfed1b8')
+
+ extends('python', ignore='bin/tabulate')
+
+ depends_on('py-setuptools@18.0:', type='build')
+
+ depends_on('py-numpy@1.9:', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-pyyaml@3.11:', type=('build', 'run'))
+ depends_on('py-monty@0.9.6:', type=('build', 'run'))
+ depends_on('py-scipy@0.14:', type=('build', 'run'))
+ depends_on('py-pydispatcher@2.0.5:', type=('build', 'run'))
+ depends_on('py-tabulate', type=('build', 'run'))
+ depends_on('py-spglib@1.9.8.7:', type=('build', 'run'))
+ depends_on('py-matplotlib@1.5:', type=('build', 'run'))
+ depends_on('py-palettable@2.1.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyminifier/package.py b/var/spack/repos/builtin/packages/py-pyminifier/package.py
new file mode 100644
index 0000000000..b4bc9e859b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyminifier/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyminifier(PythonPackage):
+ """Pyminifier is a Python code minifier, obfuscator, and compressor."""
+
+ homepage = "http://liftoff.github.io/pyminifier/"
+ url = "https://pypi.io/packages/source/p/pyminifier/pyminifier-2.1.tar.gz"
+
+ version('2.1', 'c1a6b92e69f664005f7adf188c514de7')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pympler/package.py b/var/spack/repos/builtin/packages/py-pympler/package.py
new file mode 100644
index 0000000000..25766d10c4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pympler/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPympler(PythonPackage):
+ """Development tool to measure, monitor and analyze the memory behavior
+ of Python objects in a running Python application.
+ """
+
+ homepage = "https://github.com/pympler/pympler"
+ url = "https://pypi.io/packages/source/P/Pympler/Pympler-0.4.3.tar.gz"
+
+ version('0.4.3', 'bbb4239126e9c99e2effc83b02bf8755')
+ version('0.4.2', '6bdfd913ad4c94036e8a2b358e49abd7')
+ version('0.4.1', '2d54032a6da91ff438f48d5f36b719a6')
+ version('0.4', '68e4a8aa4a268996fa6a321b664918af')
+ version('0.3.1', '906ce437f46fb30991007671a59d4319')
+
+ depends_on('python@2.5:')
diff --git a/var/spack/repos/builtin/packages/py-pynn/package.py b/var/spack/repos/builtin/packages/py-pynn/package.py
new file mode 100644
index 0000000000..23e9ab13a4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pynn/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPynn(PythonPackage):
+ """A Python package for simulator-independent specification of neuronal
+ network models
+ """
+
+ homepage = "http://neuralensemble.org/PyNN/"
+ url = "https://pypi.io/packages/source/P/PyNN/PyNN-0.8.3.tar.gz"
+
+ version('0.8.3', '28c63f898093806a57198e9271ed7b82')
+ version('0.8beta', git='https://github.com/NeuralEnsemble/PyNN.git',
+ commit='ffb0cb1661f2b0f2778db8f71865978fe7a7a6a4')
+ version('0.8.1', '7fb165ed5af35a115cb9c60991645ae6')
+ version('0.7.5', 'd8280544e4c9b34b40fd372b16342841')
+
+ depends_on('python@2.6:2.8,3.3:')
+ depends_on('py-jinja2@2.7:', type=('build', 'run'))
+ depends_on('py-docutils@0.10:', type=('build', 'run'))
+ depends_on('py-numpy@1.5:', type=('build', 'run'))
+ depends_on('py-quantities@0.10:', type=('build', 'run'))
+ depends_on('py-lazyarray@0.2.9:', type=('build', 'run'))
+ depends_on('py-neo@0.3:', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-mock@1.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-pypar/package.py b/var/spack/repos/builtin/packages/py-pypar/package.py
index f10b6d807f..ee1aa2735d 100644
--- a/var/spack/repos/builtin/packages/py-pypar/package.py
+++ b/var/spack/repos/builtin/packages/py-pypar/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,8 +37,4 @@ class PyPypar(PythonPackage):
depends_on('mpi')
depends_on('py-numpy', type=('build', 'run'))
- def url_for_version(self, version):
- return "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/pypar/pypar-%s.tgz" % version
-
- def build_directory(self):
- return 'source'
+ build_directory = 'source'
diff --git a/var/spack/repos/builtin/packages/py-pyparsing/package.py b/var/spack/repos/builtin/packages/py-pyparsing/package.py
index cb158a76d6..0be88e638d 100644
--- a/var/spack/repos/builtin/packages/py-pyparsing/package.py
+++ b/var/spack/repos/builtin/packages/py-pyparsing/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,7 +27,20 @@ from spack import *
class PyPyparsing(PythonPackage):
"""A Python Parsing Module."""
- homepage = "https://pypi.python.org/pypi/pyparsing"
- url = "https://pypi.python.org/packages/source/p/pyparsing/pyparsing-2.0.3.tar.gz"
+ homepage = "http://pyparsing.wikispaces.com/"
+ url = "https://pypi.io/packages/source/p/pyparsing/pyparsing-2.2.0.tar.gz"
- version('2.0.3', '0fe479be09fc2cf005f753d3acc35939')
+ import_modules = ['pyparsing']
+
+ version('2.2.0', '0214e42d63af850256962b6744c948d9')
+ version('2.1.10', '065908b92904e0d3634eb156f44cc80e')
+ version('2.0.3', '0fe479be09fc2cf005f753d3acc35939')
+
+ patch('setuptools-import.patch', when='@:2.1.10')
+
+ # Newer versions of setuptools require pyparsing. Although setuptools is an
+ # optional dependency of pyparsing, if it is not found, setup.py will
+ # fallback on distutils.core instead. Don't add a setuptools dependency
+ # or we won't be able to bootstrap setuptools.
+
+ # depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pyparsing/setuptools-import.patch b/var/spack/repos/builtin/packages/py-pyparsing/setuptools-import.patch
new file mode 100644
index 0000000000..a4ba828c23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyparsing/setuptools-import.patch
@@ -0,0 +1,20 @@
+diff --git a/setup.py b/setup.py
+index 82061c6..ff342af 100644
+--- a/setup.py
++++ b/setup.py
+@@ -1,7 +1,13 @@
+ #!/usr/bin/env python
+
+ """Setup script for the pyparsing module distribution."""
+-from setuptools import setup
++
++# Setuptools depends on pyparsing (via packaging) as of version 34, so allow
++# installing without it to avoid bootstrap problems.
++try:
++ from setuptools import setup
++except ImportError:
++ from distutils.core import setup
+
+ import sys
+ import os
+
diff --git a/var/spack/repos/builtin/packages/py-pypeflow/package.py b/var/spack/repos/builtin/packages/py-pypeflow/package.py
new file mode 100644
index 0000000000..8eb353432c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pypeflow/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPypeflow(PythonPackage):
+ """pypeFLOW is light weight and reusable make / flow data process
+ library written in Python."""
+
+ homepage = "https://github.com/PacificBiosciences/pypeFLOW"
+ url = "https://github.com/PacificBiosciences/pypeFLOW"
+
+ version('2017-05-04',
+ git='https://github.com/PacificBiosciences/pypeFLOW.git',
+ commit='f23a1b290876bbdf130611000934ae4247158073')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-networkx@1.7:1.11', type=['build', 'run'])
diff --git a/var/spack/repos/builtin/packages/py-pyprof2html/package.py b/var/spack/repos/builtin/packages/py-pyprof2html/package.py
new file mode 100644
index 0000000000..efaa525267
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyprof2html/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyprof2html(PythonPackage):
+ """Python cProfile and hotshot profile's data to HTML Converter"""
+
+ homepage = "https://pypi.python.org/pypi/pyprof2html/"
+ url = "https://pypi.io/packages/source/p/pyprof2html/pyprof2html-0.3.1.tar.gz"
+
+ version('0.3.1', 'aa65a1635aac95e0487d7749a6351c43')
+
+ patch('version_0.3.1.patch', when="@0.3.1")
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-jinja2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyprof2html/version_0.3.1.patch b/var/spack/repos/builtin/packages/py-pyprof2html/version_0.3.1.patch
new file mode 100644
index 0000000000..fd0e856cb5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyprof2html/version_0.3.1.patch
@@ -0,0 +1,10 @@
+diff --git a/pyprof2html/__init__.py b/pyprof2html/__init__.py
+index 342eb6d..74b3392 100644
+--- a/pyprof2html/__init__.py
++++ b/pyprof2html/__init__.py
+@@ -10,3 +10,5 @@ __licence__ = 'New BSD License'
+ __author__ = 'Hideo Hattori <hhatto.jp@gmail.com>'
+
+ __all__ = ['Converter', 'pyprof2html_main']
++
++__version__ = '0.3.1'
diff --git a/var/spack/repos/builtin/packages/py-pyqt/package.py b/var/spack/repos/builtin/packages/py-pyqt/package.py
index e1e87880e0..401cf8ded6 100644
--- a/var/spack/repos/builtin/packages/py-pyqt/package.py
+++ b/var/spack/repos/builtin/packages/py-pyqt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pyrad/package.py b/var/spack/repos/builtin/packages/py-pyrad/package.py
new file mode 100644
index 0000000000..0b56dd3631
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyrad/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyrad(PythonPackage):
+ """RADseq for phylogenetics & introgression analyses"""
+
+ homepage = "http://dereneaton.com/software/pyrad/"
+ url = "https://github.com/dereneaton/pyrad/archive/3.0.66.tar.gz"
+
+ version('3.0.66', '19b8bcd73a574f8a25582d6e8978f0aa')
+
+ depends_on('python@:2.999', type=('build', 'run'))
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('vsearch')
+ depends_on('muscle')
diff --git a/var/spack/repos/builtin/packages/py-pysam/package.py b/var/spack/repos/builtin/packages/py-pysam/package.py
new file mode 100644
index 0000000000..7c3cccd21a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pysam/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPysam(PythonPackage):
+ """A python module for reading, manipulating and writing genomic data
+ sets."""
+
+ homepage = "https://pypi.python.org/pypi/pysam"
+ url = "https://pypi.io/packages/source/p/pysam/pysam-0.11.2.2.tar.gz"
+
+ version('0.11.2.2', '56230cd5f55b503845915b76c22d620a')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython@0.21:', type='build')
+ depends_on('bcftools')
diff --git a/var/spack/repos/builtin/packages/py-pyscaf/package.py b/var/spack/repos/builtin/packages/py-pyscaf/package.py
new file mode 100644
index 0000000000..a32a1aee55
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyscaf/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyscaf(PythonPackage):
+ """pyScaf orders contigs from genome assemblies utilising several types of
+ information"""
+
+ homepage = "https://pypi.python.org/pypi/pyScaf"
+ url = "https://pypi.io/packages/source/p/pyScaf/pyScaf-0.12a4.tar.gz"
+
+ version('0.12a4', 'c67526747eb04d1e28279ac310916d40')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-fastaindex', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyserial/package.py b/var/spack/repos/builtin/packages/py-pyserial/package.py
new file mode 100644
index 0000000000..0ddc2c51de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pyserial/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPyserial(Package):
+ """Python Serial Port Extension"""
+
+ homepage = "https://github.com/pyserial/pyserial"
+ url = "https://pypi.io/packages/source/p/pyserial/pyserial-3.1.1.tar.gz"
+
+ version('3.1.1', '2f72100de3e410b36d575e12e82e9d27')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pyside/package.py b/var/spack/repos/builtin/packages/py-pyside/package.py
index 961aef7864..e799b4cb72 100644
--- a/var/spack/repos/builtin/packages/py-pyside/package.py
+++ b/var/spack/repos/builtin/packages/py-pyside/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ import os
class PyPyside(PythonPackage):
"""Python bindings for Qt."""
homepage = "https://pypi.python.org/pypi/pyside"
- url = "https://pypi.python.org/packages/source/P/PySide/PySide-1.2.2.tar.gz"
+ url = "https://pypi.io/packages/source/P/PySide/PySide-1.2.2.tar.gz"
version('1.2.4', '3cb7174c13bd45e3e8f77638926cb8c0') # rpath problems
version('1.2.2', 'c45bc400c8a86d6b35f34c29e379e44d', preferred=True)
diff --git a/var/spack/repos/builtin/packages/py-pysocks/package.py b/var/spack/repos/builtin/packages/py-pysocks/package.py
new file mode 100644
index 0000000000..db734dd927
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pysocks/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPysocks(PythonPackage):
+ """A Python SOCKS client module."""
+
+ homepage = "https://github.com/Anorov/PySocks"
+ url = "https://pypi.io/packages/source/P/PySocks/PySocks-1.6.6.tar.gz"
+
+ version('1.6.6', '571f4c23982fa86bf0e7a441f1b6c881')
+ version('1.5.7', '68f4ad7a8d4fa725656ae3e9dd142d29')
diff --git a/var/spack/repos/builtin/packages/py-pytables/package.py b/var/spack/repos/builtin/packages/py-pytables/package.py
index 3d9bfb2c2f..5e782341d9 100644
--- a/var/spack/repos/builtin/packages/py-pytables/package.py
+++ b/var/spack/repos/builtin/packages/py-pytables/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-pytest-cov/package.py b/var/spack/repos/builtin/packages/py-pytest-cov/package.py
new file mode 100644
index 0000000000..3621b54d0d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-cov/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestCov(PythonPackage):
+ """Pytest plugin for measuring coverage."""
+
+ homepage = "https://github.com/pytest-dev/pytest-cov"
+ url = "https://pypi.io/packages/source/p/pytest-cov/pytest-cov-2.3.1.tar.gz"
+
+ version('2.3.1', '8e7475454313a035d08f387ee6d725cb')
+
+ extends('python', ignore=r'bin/*')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest@2.6.0:', type=('build', 'run'))
+ depends_on('py-coverage@3.7.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-flake8/package.py b/var/spack/repos/builtin/packages/py-pytest-flake8/package.py
new file mode 100644
index 0000000000..4b2ec5e014
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-flake8/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestFlake8(PythonPackage):
+ """pytest plugin to check FLAKE8 requirements."""
+
+ homepage = "https://github.com/tholo/pytest-flake8"
+ url = "https://pypi.io/packages/source/p/pytest-flake8/pytest-flake8-0.8.1.tar.gz"
+
+ version('0.8.1', '39b64ebceb2849805975a2ff4ea7e947')
+
+ depends_on('py-setuptools', type='build')
+
+ # Install requires:
+ depends_on('py-flake8@3.0:', type=('build', 'run'))
+ depends_on('py-pytest@2.8:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py b/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py
new file mode 100644
index 0000000000..f27f121d8e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-httpbin/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestHttpbin(PythonPackage):
+ """Easily test your HTTP library against a local copy of httpbin"""
+
+ homepage = "https://github.com/kevin1024/pytest-httpbin"
+ url = "https://pypi.io/packages/source/p/pytest-httpbin/pytest-httpbin-0.2.3.tar.gz"
+
+ version('0.2.3', 'b8ebb8e2fbac1a445fb5d044f7fec556')
+
+ extends('python', ignore=r'bin/flask')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-flask', type=('build', 'run'))
+ depends_on('py-decorator', type=('build', 'run'))
+ depends_on('py-httpbin', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-mock/package.py b/var/spack/repos/builtin/packages/py-pytest-mock/package.py
new file mode 100644
index 0000000000..968816f6f4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-mock/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestMock(PythonPackage):
+ """Thin-wrapper around the mock package for easier use with py.test"""
+
+ homepage = "https://github.com/pytest-dev/pytest-mock"
+ url = "https://pypi.io/packages/source/p/pytest-mock/pytest-mock-1.2.zip"
+
+ version('1.2', 'a7fa820f7bc71698660945836ff93c73')
+
+ extends('python', ignore=r'bin/*')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pytest@2.7:', type=('build', 'run'))
+ depends_on('py-mock', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest-runner/package.py b/var/spack/repos/builtin/packages/py-pytest-runner/package.py
new file mode 100644
index 0000000000..771902afd9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-runner/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestRunner(PythonPackage):
+ """Invoke py.test as distutils command with dependency resolution."""
+
+ homepage = "https://github.com/pytest-dev/pytest-runner"
+ url = "https://pypi.io/packages/source/p/pytest-runner/pytest-runner-2.11.1.tar.gz"
+
+ import_modules = ['ptr']
+
+ version('2.11.1', 'bdb73eb18eca2727944a2dcf963c5a81')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pytest-xdist/package.py b/var/spack/repos/builtin/packages/py-pytest-xdist/package.py
new file mode 100644
index 0000000000..968601ab29
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-xdist/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPytestXdist(PythonPackage):
+ """py.test xdist plugin for distributed testing and loop-on-failing mode"""
+
+ homepage = "https://github.com/pytest-dev/pytest-xdist"
+ url = "https://pypi.io/packages/source/p/pytest-xdist/pytest-xdist-1.16.0.tar.gz"
+
+ version('1.16.0', '68dabf856981ad93b14960b098b05bff')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-execnet@1.1:', type=('build', 'run'))
+ depends_on('py-pytest@2.7.0:', type=('build', 'run'))
+ depends_on('py-py@1.4.22:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pytest/package.py b/var/spack/repos/builtin/packages/py-pytest/package.py
index 4af49306c2..098a9de79c 100644
--- a/var/spack/repos/builtin/packages/py-pytest/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,11 +28,24 @@ from spack import *
class PyPytest(PythonPackage):
"""pytest: simple powerful testing with Python."""
- homepage = "http://doc.pytest.org/en/latest/"
- url = "https://pypi.python.org/packages/source/p/pytest/pytest-3.0.2.tar.gz"
+ homepage = "http://pytest.org/"
+ url = "https://pypi.io/packages/source/p/pytest/pytest-3.0.7.tar.gz"
- version('3.0.2', '61dc36e65a6f6c11c53b1388e043a9f5',
- url="https://pypi.python.org/packages/2b/05/e20806c99afaff43331f5fd8770bb346145303882f98ef3275fa1dd66f6d/pytest-3.0.2.tar.gz")
+ import_modules = [
+ '_pytest', '_pytest.assertion', '_pytest._code',
+ '_pytest.vendored_packages', 'pytest'
+ ]
- depends_on('py-setuptools', type='build')
+ version('3.0.7', '89c60546507dc7eb6e9e40a6e9f720bd')
+ version('3.0.2', '61dc36e65a6f6c11c53b1388e043a9f5')
+
+ # Most Python packages only require setuptools as a build dependency.
+ # However, pytest requires setuptools during runtime as well.
+ depends_on('py-setuptools', type=('build', 'run'))
depends_on('py-py@1.4.29:', type=('build', 'run'))
+ depends_on('py-hypothesis@3.5.2:', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
+ # depends_on('py-mock', type='test')
+ # depends_on('py-requests', type='test')
diff --git a/var/spack/repos/builtin/packages/py-python-daemon/package.py b/var/spack/repos/builtin/packages/py-python-daemon/package.py
index 9ed085f031..ff47d32504 100644
--- a/var/spack/repos/builtin/packages/py-python-daemon/package.py
+++ b/var/spack/repos/builtin/packages/py-python-daemon/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,7 +38,7 @@ class PyPythonDaemon(PythonPackage):
to enter a daemon state.
"""
homepage = "https://pypi.python.org/pypi/python-daemon/"
- url = "https://pypi.python.org/packages/source/p/python-daemon/python-daemon-2.0.5.tar.gz"
+ url = "https://pypi.io/packages/source/p/python-daemon/python-daemon-2.0.5.tar.gz"
version('2.0.5', '73e7f49f525c51fa4a995aea4d80de41')
diff --git a/var/spack/repos/builtin/packages/py-python-gitlab/package.py b/var/spack/repos/builtin/packages/py-python-gitlab/package.py
new file mode 100644
index 0000000000..ff769b421e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-python-gitlab/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPythonGitlab(PythonPackage):
+ """Python wrapper for the GitLab API"""
+
+ homepage = "https://github.com/gpocentek/python-gitlab"
+ url = "https://pypi.io/packages/source/p/python-gitlab/python-gitlab-0.19.tar.gz"
+
+ version('0.19', '6564d7204c2b7e65c54b3fa89ec91df6')
+ version('0.18', 'c31dae1d0bab3966cb830f2308a96308')
+ version('0.17', '8a69c602e07dd4731856531d79bb58eb')
+ version('0.16', 'e0421d930718021e7d796d74d2ad7194')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-requests@1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pythonqwt/package.py b/var/spack/repos/builtin/packages/py-pythonqwt/package.py
new file mode 100644
index 0000000000..9f4c09b537
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pythonqwt/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyPythonqwt(PythonPackage):
+ """Qt plotting widgets for Python"""
+
+ homepage = "https://github.com/PierreRaybaut/PythonQwt"
+ url = "https://pypi.io/packages/source/P/PythonQwt/PythonQwt-0.5.5.zip"
+
+ version('0.5.5', 'a60c7da9fbca667337d14aca094b6fda')
+
+ variant('docs', default=False, description="Build documentation.")
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.3:', type=('build', 'run'))
+ depends_on('py-sip', type=('build', 'run'))
+ depends_on('py-pyqt@4:', type=('build', 'run'))
+ depends_on('py-sphinx@1.1:', type=('build', 'run'), when='+docs')
diff --git a/var/spack/repos/builtin/packages/py-pytz/package.py b/var/spack/repos/builtin/packages/py-pytz/package.py
index 7a905f9f98..d946e767e9 100644
--- a/var/spack/repos/builtin/packages/py-pytz/package.py
+++ b/var/spack/repos/builtin/packages/py-pytz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,13 +28,17 @@ from spack import *
class PyPytz(PythonPackage):
"""World timezone definitions, modern and historical."""
- homepage = "https://pypi.python.org/pypi/pytz"
- url = "https://pypi.python.org/packages/source/p/pytz/pytz-2014.10.tar.gz"
+ homepage = "http://pythonhosted.org/pytz"
+ url = "https://pypi.io/packages/source/p/pytz/pytz-2016.10.tar.gz"
- version('2016.6.1', 'b6c28a3b968bc1d8badfb61b93874e03',
- url="https://pypi.python.org/packages/5d/8e/6635d8f3f9f48c03bb925fab543383089858271f9cfd1216b83247e8df94/pytz-2016.6.1.tar.gz")
- version('2014.10', 'eb1cb941a20c5b751352c52486aa1dd7')
- version('2015.4', '417a47b1c432d90333e42084a605d3d8')
- version('2016.3', 'abae92c3301b27bd8a9f56b14f52cb29')
+ import_modules = ['pytz']
+
+ version('2017.2', 'f89bde8a811c8a1a5bac17eaaa94383c',
+ url="https://pypi.io/packages/source/p/pytz/pytz-2017.2.zip")
+ version('2016.10', 'cc9f16ba436efabdcef3c4d32ae4919c')
+ version('2016.6.1', 'b6c28a3b968bc1d8badfb61b93874e03')
+ version('2014.10', 'eb1cb941a20c5b751352c52486aa1dd7')
+ version('2015.4', '417a47b1c432d90333e42084a605d3d8')
+ version('2016.3', 'abae92c3301b27bd8a9f56b14f52cb29')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-pywavelets/package.py b/var/spack/repos/builtin/packages/py-pywavelets/package.py
new file mode 100644
index 0000000000..c542a23c1c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pywavelets/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyPywavelets(PythonPackage):
+ """PyWavelets is a free Open Source library for wavelet transforms
+ in Python"""
+
+ homepage = "https://github.com/PyWavelets"
+ url = "https://pypi.io/packages/source/P/PyWavelets/PyWavelets-0.5.2.tar.gz"
+
+ version('0.5.2', 'aedda732f064cf9395f03d37f1003d1a')
+
+ import_modules = ['pywt', 'pywt.data']
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-cython', type='build')
+ depends_on('py-numpy@1.9.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-pyyaml/package.py b/var/spack/repos/builtin/packages/py-pyyaml/package.py
index 94d8fdd0e6..05ac4d2ac5 100644
--- a/var/spack/repos/builtin/packages/py-pyyaml/package.py
+++ b/var/spack/repos/builtin/packages/py-pyyaml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-qtawesome/package.py b/var/spack/repos/builtin/packages/py-qtawesome/package.py
new file mode 100644
index 0000000000..b5c08a3c60
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-qtawesome/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyQtawesome(PythonPackage):
+ """FontAwesome icons in PyQt and PySide applications"""
+
+ homepage = "https://github.com/spyder-ide/qtawesome"
+ url = "https://pypi.io/packages/source/Q/QtAwesome/QtAwesome-0.4.1.tar.gz"
+
+ version('0.4.1', 'bf93df612a31f3b501d751fc994c1b05')
+ version('0.3.3', '830677aa6ca4e7014e228147475183d3')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-qtpy', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-qtconsole/package.py b/var/spack/repos/builtin/packages/py-qtconsole/package.py
new file mode 100644
index 0000000000..07acca339b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-qtconsole/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyQtconsole(PythonPackage):
+ """Jupyter Qt console"""
+
+ homepage = "http://ipython.org"
+ url = "https://pypi.io/packages/source/q/qtconsole/qtconsole-4.2.1.tar.gz"
+
+ version('4.2.1', 'c08ebebc7a60629ebadf685361ca0798')
+
+ variant('docs', default=False, description='Build documentation')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-ipykernel@4.1:', type=('build', 'run'))
+ depends_on('py-jupyter-client@4.1:', type=('build', 'run'))
+ depends_on('py-jupyter-core', type=('build', 'run'))
+ depends_on('py-pygments', type=('build', 'run'))
+ depends_on('py-traitlets', type=('build', 'run'))
+ depends_on('py-sphinx@1.3:', type=('build', 'run'), when='+docs')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-mock', type='test', when='^python@2.7:2.8')
diff --git a/var/spack/repos/builtin/packages/py-qtpy/package.py b/var/spack/repos/builtin/packages/py-qtpy/package.py
new file mode 100644
index 0000000000..020894d0e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-qtpy/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyQtpy(PythonPackage):
+ """QtPy: Abtraction layer for PyQt5/PyQt4/PySide"""
+
+ homepage = "https://github.com/spyder-ide/qtpy"
+ url = "https://pypi.io/packages/source/Q/QtPy/QtPy-1.2.1.tar.gz"
+
+ version('1.2.1', 'e2f783fb7f8e502815237bd8d30c6d11')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pyqt@4:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-quantities/package.py b/var/spack/repos/builtin/packages/py-quantities/package.py
new file mode 100644
index 0000000000..d75aced6f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-quantities/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyQuantities(PythonPackage):
+ """Support for physical quantities with units, based on numpy"""
+
+ homepage = "http://python-quantities.readthedocs.org"
+ url = "https://pypi.io/packages/source/q/quantities/quantities-0.12.1.tar.gz"
+
+ version('0.12.1', '9c9ecda15e905cccfc420e5341199512')
+ version('0.11.1', 'f4c6287bfd2e93322b25a7c1311a0243',
+ url="https://pypi.io/packages/source/q/quantities/quantities-0.11.1.zip")
+
+ conflicts('py-numpy@1.13:', when='@:0.11.99')
+
+ depends_on('python@2.6.0:')
+ depends_on('py-numpy@1.4.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-radical-utils/package.py b/var/spack/repos/builtin/packages/py-radical-utils/package.py
new file mode 100644
index 0000000000..85a4832e3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-radical-utils/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyRadicalUtils(PythonPackage):
+ """Shared code and tools for various RADICAL Projects"""
+
+ homepage = "http://radical.rutgers.edu"
+ url = "https://pypi.io/packages/source/r/radical.utils/radical.utils-0.45.tar.gz"
+
+ version('0.45', 'c0bec2a0951b0dc990366d82e78e65fe')
+ version('0.41.1', '923446539545dc157768026c957cecb2')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-colorama', type=('build', 'run'))
+ depends_on('py-netifaces', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-ranger/package.py b/var/spack/repos/builtin/packages/py-ranger/package.py
new file mode 100644
index 0000000000..19f20c6d33
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-ranger/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class PyRanger(PythonPackage):
+ """A VIM-inspired filemanager for the console"""
+
+ homepage = "http://ranger.nongnu.org/"
+ url = "https://github.com/ranger/ranger/archive/v1.7.2.tar.gz"
+
+ version('1.7.2', '27805c3ab7ec4b129e1b93249506d925')
+
+ depends_on('python@2.6:')
diff --git a/var/spack/repos/builtin/packages/py-readme-renderer/package.py b/var/spack/repos/builtin/packages/py-readme-renderer/package.py
index 2abe4bac74..20691a12ec 100644
--- a/var/spack/repos/builtin/packages/py-readme-renderer/package.py
+++ b/var/spack/repos/builtin/packages/py-readme-renderer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,11 +30,11 @@ class PyReadmeRenderer(PythonPackage):
for Warehouse."""
homepage = "https://github.com/pypa/readme_renderer"
- url = "https://pypi.python.org/packages/f2/6e/ef1bc3a24eb14e14574aba9dc1bd50bc9a5e7cc880e8ff9cadd385b4fb37/readme_renderer-16.0.tar.gz"
+ url = "https://pypi.io/packages/source/r/readme_renderer/readme_renderer-16.0.tar.gz"
version('16.0', '70321cea986956bcf2deef9981569f39')
- depends_on('python@2.6:2.7,3.2:3.3')
+ depends_on('python@2.6:2.8,3.2:3.3')
depends_on('py-setuptools', type='build')
depends_on('py-bleach', type=('build', 'run'))
depends_on('py-docutils@0.13.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-regex/package.py b/var/spack/repos/builtin/packages/py-regex/package.py
new file mode 100644
index 0000000000..14c40c50cc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-regex/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyRegex(PythonPackage):
+ """Alternative regular expression module, to replace re."""
+
+ homepage = "https://pypi.python.org/pypi/regex/"
+ url = "https://pypi.io/packages/source/r/regex/regex-2017.07.11.tar.gz"
+
+ version('2017.07.11', '95f81ebb5273c7ad9a0c4d1ac5a94eb4')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-requests/package.py b/var/spack/repos/builtin/packages/py-requests/package.py
new file mode 100644
index 0000000000..329c07758c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-requests/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyRequests(PythonPackage):
+ """Python HTTP for Humans."""
+
+ homepage = "http://python-requests.org"
+ url = "https://pypi.io/packages/source/r/requests/requests-2.14.2.tar.gz"
+
+ import_modules = [
+ 'requests', 'requests.packages', 'requests.packages.chardet',
+ 'requests.packages.urllib3', 'requests.packages.idna',
+ 'requests.packages.chardet.cli', 'requests.packages.urllib3.util',
+ 'requests.packages.urllib3.packages',
+ 'requests.packages.urllib3.contrib',
+ 'requests.packages.urllib3.packages.ssl_match_hostname',
+ 'requests.packages.urllib3.packages.backports',
+ 'requests.packages.urllib3.contrib._securetransport'
+ ]
+
+ version('2.14.2', '4c3c169ed67466088a2a6947784fe444')
+ version('2.13.0', '921ec6b48f2ddafc8bb6160957baf444')
+ version('2.11.1', 'ad5f9c47b5c5dfdb28363ad7546b0763')
+
+ depends_on('py-setuptools', type='build')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-pytest@2.8.0:', type='test')
+ # depends_on('py-pytest-cov', type='test')
+ # depends_on('py-pytest-httpbin@0.0.7', type='test')
+ # depends_on('py-pytest-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-restview/package.py b/var/spack/repos/builtin/packages/py-restview/package.py
index 871016fdb1..bd63d64bf5 100644
--- a/var/spack/repos/builtin/packages/py-restview/package.py
+++ b/var/spack/repos/builtin/packages/py-restview/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,11 +29,12 @@ class PyRestview(PythonPackage):
"""A viewer for ReStructuredText documents that renders them on the fly."""
homepage = "https://mg.pov.lt/restview/"
- url = "https://pypi.python.org/packages/source/r/restview/restview-2.6.1.tar.gz"
+ url = "https://pypi.io/packages/source/r/restview/restview-2.6.1.tar.gz"
version('2.6.1', 'ac8b70e15b8f1732d1733d674813666b')
- depends_on('python@2.7.0:2.7.999,3.3:3.5')
+ depends_on('python@2.7:2.8,3.3:3.5')
+ depends_on('py-setuptools', type='build')
depends_on('py-docutils@0.13.1:', type=('build', 'run'))
depends_on('py-readme-renderer', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rope/package.py b/var/spack/repos/builtin/packages/py-rope/package.py
new file mode 100644
index 0000000000..5f0d27db23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rope/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyRope(PythonPackage):
+ """a python refactoring library."""
+
+ homepage = "https://github.com/python-rope/rope"
+ url = "https://pypi.io/packages/source/r/rope/rope-0.10.5.tar.gz"
+
+ version('0.10.5', '21882fd7c04c29d09f75995d8a088be7')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-rpy2/package.py b/var/spack/repos/builtin/packages/py-rpy2/package.py
index 284a41894a..c607360f0a 100644
--- a/var/spack/repos/builtin/packages/py-rpy2/package.py
+++ b/var/spack/repos/builtin/packages/py-rpy2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,7 @@ class PyRpy2(PythonPackage):
"""
homepage = "https://pypi.python.org/pypi/rpy2"
- url = "https://pypi.python.org/packages/source/r/rpy2/rpy2-2.5.4.tar.gz"
+ url = "https://pypi.io/packages/source/r/rpy2/rpy2-2.5.4.tar.gz"
version('2.5.4', '115a20ac30883f096da2bdfcab55196d')
version('2.5.6', 'a36e758b633ce6aec6a5f450bfee980f')
diff --git a/var/spack/repos/builtin/packages/py-rsa/package.py b/var/spack/repos/builtin/packages/py-rsa/package.py
new file mode 100644
index 0000000000..6cde68a33f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-rsa/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyRsa(PythonPackage):
+ """Pure-Python RSA implementation"""
+
+ homepage = "https://stuvel.eu/rsa"
+ url = "https://pypi.io/packages/source/r/rsa/rsa-3.4.2.tar.gz"
+
+ import_modules = ['rsa']
+
+ version('3.4.2', 'b315f47882c24030ee6b5aad628cccdb')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-pyasn1@0.1.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-rtree/package.py b/var/spack/repos/builtin/packages/py-rtree/package.py
index 55f98ad19e..70eb46575c 100644
--- a/var/spack/repos/builtin/packages/py-rtree/package.py
+++ b/var/spack/repos/builtin/packages/py-rtree/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,22 +28,9 @@ from spack import *
class PyRtree(PythonPackage):
"""Python interface to the RTREE.4 Library."""
homepage = "http://toblerity.org/rtree/"
- url = "https://github.com/Toblerity/rtree/tarball/0.8.2"
+ url = "https://pypi.io/packages/source/R/Rtree/Rtree-0.8.3.tar.gz"
- # Not an official release yet. But changes in here are required
- # to work with Spack. As it does with all packages, Spack
- # installs libspatialindex in a non-system location. Without the
- # changes in this fork, py-rtree requires an environment variables
- # to be set *at runtime*, in order to find libspatialindex. That
- # is not feasible within the Spack worldview.
- version('0.8.2.2', 'b1fe96a73153db49ea6ce45a063d82cb',
- url='https://github.com/citibeth/rtree/tarball/95a678cc7350857a1bb631bc41254efcd1fc0a0d')
-
- version('0.8.2.1', '394696ca849dd9f3a5ef24fb02a41ef4',
- url='https://github.com/citibeth/rtree/tarball/3a87d86f66a3955676b2507d3bf424ade938a22b')
-
- # Does not work with Spack
- # version('0.8.2', '593c7ac6babc397b8ba58f1636c1e0a0')
+ version('0.8.3', 'a27cb05a85eed0a3605c45ebccc432f8')
depends_on('py-setuptools', type='build')
depends_on('libspatialindex')
diff --git a/var/spack/repos/builtin/packages/py-saga-python/package.py b/var/spack/repos/builtin/packages/py-saga-python/package.py
new file mode 100644
index 0000000000..4eb83b1dc1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-saga-python/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySagaPython(PythonPackage):
+ """A light-weight access layer for distributed computing infrastructure"""
+
+ homepage = "http://radical.rutgers.edu"
+ url = "https://pypi.io/packages/source/s/saga-python/saga-python-0.41.3.tar.gz"
+
+ version('0.41.3', '3f92e16a53635ffe529fca4bae3b705d')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-apache-libcloud', type=('build', 'run'))
+ depends_on('py-radical-utils', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-scientificpython/package.py b/var/spack/repos/builtin/packages/py-scientificpython/package.py
index f0fe2e4e6c..45fedc825b 100644
--- a/var/spack/repos/builtin/packages/py-scientificpython/package.py
+++ b/var/spack/repos/builtin/packages/py-scientificpython/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,4 +35,4 @@ class PyScientificpython(PythonPackage):
url = "https://sourcesup.renater.fr/frs/download.php/file/4411/ScientificPython-2.8.1.tar.gz"
version('2.8.1', '73ee0df19c7b58cdf2954261f0763c77')
- depends_on('py-numpy')
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-scikit-image/package.py b/var/spack/repos/builtin/packages/py-scikit-image/package.py
index d05341f9eb..40cbf740fe 100644
--- a/var/spack/repos/builtin/packages/py-scikit-image/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-image/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class PyScikitImage(PythonPackage):
filtering, warping, color manipulation, object detection, etc."""
homepage = "http://scikit-image.org/"
- url = "https://pypi.python.org/packages/source/s/scikit-image/scikit-image-0.12.3.tar.gz"
+ url = "https://pypi.io/packages/source/s/scikit-image/scikit-image-0.12.3.tar.gz"
version('0.12.3', '04ea833383e0b6ad5f65da21292c25e1')
diff --git a/var/spack/repos/builtin/packages/py-scikit-learn/package.py b/var/spack/repos/builtin/packages/py-scikit-learn/package.py
index 7c7102ce41..81f5de2737 100644
--- a/var/spack/repos/builtin/packages/py-scikit-learn/package.py
+++ b/var/spack/repos/builtin/packages/py-scikit-learn/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,13 +27,16 @@ from spack import *
class PyScikitLearn(PythonPackage):
"""A set of python modules for machine learning and data mining."""
+
homepage = "https://pypi.python.org/pypi/scikit-learn"
- url = "https://pypi.python.org/packages/source/s/scikit-learn/scikit-learn-0.15.2.tar.gz"
+ url = "https://pypi.io/packages/source/s/scikit-learn/scikit-learn-0.18.1.tar.gz"
+ version('0.18.1', '6b0ff1eaa5010043895dd63d1e3c60c9')
version('0.15.2', 'd9822ad0238e17b382a3c756ea94fe0d')
version('0.16.1', '363ddda501e3b6b61726aa40b8dbdb7e')
version('0.17.1', 'a2f8b877e6d99b1ed737144f5a478dfc')
+ version('0.13.1', 'acba398e1d46274b8470f40d0926e6a4')
- depends_on('py-setuptools', type='build')
- depends_on('py-numpy', type=('build', 'run'))
- depends_on('py-scipy', type=('build', 'run'))
+ depends_on('python@2.6:2.8,3.3:')
+ depends_on('py-numpy@1.6.1:', type=('build', 'run'))
+ depends_on('py-scipy@0.9:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-scipy/package.py b/var/spack/repos/builtin/packages/py-scipy/package.py
index 85b6f631e1..3aced0bf4a 100644
--- a/var/spack/repos/builtin/packages/py-scipy/package.py
+++ b/var/spack/repos/builtin/packages/py-scipy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,21 +31,73 @@ class PyScipy(PythonPackage):
as routines for numerical integration and optimization."""
homepage = "http://www.scipy.org/"
- url = "https://pypi.python.org/packages/source/s/scipy/scipy-0.15.0.tar.gz"
+ url = "https://pypi.io/packages/source/s/scipy/scipy-0.19.1.tar.gz"
- version('0.18.1', '5fb5fb7ccb113ab3a039702b6c2f3327',
- url="https://pypi.python.org/packages/22/41/b1538a75309ae4913cdbbdc8d1cc54cae6d37981d2759532c1aa37a41121/scipy-0.18.1.tar.gz")
+ install_time_test_callbacks = ['install_test', 'import_module_test']
+
+ import_modules = [
+ 'scipy', 'scipy._build_utils', 'scipy._lib', 'scipy.cluster',
+ 'scipy.constants', 'scipy.fftpack', 'scipy.integrate',
+ 'scipy.interpolate', 'scipy.io', 'scipy.linalg', 'scipy.misc',
+ 'scipy.ndimage', 'scipy.odr', 'scipy.optimize', 'scipy.signal',
+ 'scipy.sparse', 'scipy.spatial', 'scipy.special', 'scipy.stats',
+ 'scipy.weave', 'scipy.io.arff', 'scipy.io.harwell_boeing',
+ 'scipy.io.matlab', 'scipy.optimize._lsq', 'scipy.sparse.csgraph',
+ 'scipy.sparse.linalg', 'scipy.sparse.linalg.dsolve',
+ 'scipy.sparse.linalg.eigen', 'scipy.sparse.linalg.isolve',
+ 'scipy.sparse.linalg.eigen.arpack', 'scipy.sparse.linalg.eigen.lobpcg',
+ 'scipy.special._precompute'
+ ]
+
+ # See https://github.com/spack/spack/issues/2737
+ version('0.19.1', '6b4d91b62f1926282b127194a06b72b3',
+ url="https://pypi.io/packages/source/s/scipy/scipy-0.19.1.tar.gz")
+ version('0.19.0', '91b8396231eec780222a57703d3ec550',
+ url="https://pypi.io/packages/source/s/scipy/scipy-0.19.0.zip")
+ version('0.18.1', '5fb5fb7ccb113ab3a039702b6c2f3327')
version('0.17.0', '5ff2971e1ce90e762c59d2cd84837224')
version('0.15.1', 'be56cd8e60591d6332aac792a5880110')
version('0.15.0', '639112f077f0aeb6d80718dc5019dc7a')
depends_on('python@2.6:2.8,3.2:')
- depends_on('py-nose', type='build')
- # Known not to work with 2.23, 2.25
- depends_on('binutils@2.26:', type='build')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy@1.7.1:+blas+lapack', type=('build', 'run'))
# NOTE: scipy picks up Blas/Lapack from numpy, see
# http://www.scipy.org/scipylib/building/linux.html#step-4-build-numpy-1-5-0
depends_on('blas')
depends_on('lapack')
+
+ # Tests require:
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
+
+ def build_args(self, spec, prefix):
+ args = []
+
+ # Build in parallel
+ # Known problems with Python 3
+ # https://github.com/scipy/scipy/issues/7112
+ if not spec.satisfies('^python@3:'):
+ args.extend(['-j', str(make_jobs)])
+
+ return args
+
+ def test(self):
+ # `setup.py test` is not supported. Use one of the following
+ # instead:
+ #
+ # - `python runtests.py` (to build and test)
+ # - `python runtests.py --no-build` (to test installed scipy)
+ # - `>>> scipy.test()` (run tests for installed scipy
+ # from within an interpreter)
+ pass
+
+ def install_test(self):
+ # Change directories due to the following error:
+ #
+ # ImportError: Error importing scipy: you should not try to import
+ # scipy from its source directory; please exit the scipy
+ # source tree, and relaunch your python interpreter from there.
+ with working_dir('..'):
+ python('-c', 'import scipy; scipy.test("full", verbose=2)')
diff --git a/var/spack/repos/builtin/packages/py-seaborn/package.py b/var/spack/repos/builtin/packages/py-seaborn/package.py
new file mode 100644
index 0000000000..d0bd755343
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-seaborn/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySeaborn(PythonPackage):
+ """Seaborn: statistical data visualization.
+
+ Seaborn is a library for making attractive and informative statistical
+ graphics in Python. It is built on top of matplotlib and tightly
+ integrated with the PyData stack, including support for numpy and pandas
+ data structures and statistical routines from scipy and statsmodels."""
+
+ homepage = "http://seaborn.pydata.org/"
+ url = "https://pypi.io/packages/source/s/seaborn/seaborn-0.7.1.tar.gz"
+
+ version('0.7.1', 'ef07e29e0f8a1f2726abe506c1a36e93')
+
+ depends_on('py-setuptools', type='build')
+
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-matplotlib', type=('build', 'run'))
+ depends_on('py-pandas', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-setuptools/package.py b/var/spack/repos/builtin/packages/py-setuptools/package.py
index d355800958..de7b47367b 100644
--- a/var/spack/repos/builtin/packages/py-setuptools/package.py
+++ b/var/spack/repos/builtin/packages/py-setuptools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,14 +30,30 @@ class PySetuptools(PythonPackage):
upgrading, installing, and uninstalling Python packages."""
homepage = "https://pypi.python.org/pypi/setuptools"
- url = "https://pypi.python.org/packages/source/s/setuptools/setuptools-11.3.tar.gz"
+ url = "https://pypi.io/packages/source/s/setuptools/setuptools-25.2.0.tar.gz"
- version('25.2.0', 'a0dbb65889c46214c691f6c516cf959c',
- url="https://pypi.python.org/packages/9f/32/81c324675725d78e7f6da777483a3453611a427db0145dfb878940469692/setuptools-25.2.0.tar.gz")
+ import_modules = ['pkg_resources', 'setuptools', 'setuptools.command']
+
+ version('35.0.2', 'c368b4970d3ad3eab5afe4ef4dbe2437',
+ url="https://pypi.io/packages/source/s/setuptools/setuptools-35.0.2.zip")
+ version('34.4.1', '5f9b07aeaafd29eac2548fc0b89a4934',
+ url="https://pypi.io/packages/source/s/setuptools/setuptools-34.4.1.zip")
+ version('34.2.0', '41b630da4ea6cfa5894d9eb3142922be',
+ url="https://pypi.io/packages/source/s/setuptools/setuptools-34.2.0.zip")
+ version('25.2.0', 'a0dbb65889c46214c691f6c516cf959c')
version('20.7.0', '5d12b39bf3e75e80fdce54e44b255615')
version('20.6.7', '45d6110f3ec14924e44c33411db64fe6')
- version('20.5', 'fadc1e1123ddbe31006e5e43e927362b')
- version('19.2', '78353b1f80375ca5e088f4b4627ffe03')
- version('18.1', 'f72e87f34fbf07f299f6cb46256a0b06')
- version('16.0', '0ace0b96233516fc5f7c857d086aa3ad')
+ version('20.5', 'fadc1e1123ddbe31006e5e43e927362b')
+ version('19.2', '78353b1f80375ca5e088f4b4627ffe03')
+ version('18.1', 'f72e87f34fbf07f299f6cb46256a0b06')
+ version('16.0', '0ace0b96233516fc5f7c857d086aa3ad')
version('11.3.1', '01f69212e019a2420c1693fb43593930')
+
+ depends_on('python@2.6:2.8,3.3:')
+
+ # Previously, setuptools vendored all of its dependencies to allow
+ # easy bootstrapping. As of version 34.0.0, this is no longer done
+ # and the dependencies need to be installed externally.
+ depends_on('py-packaging@16.8:', when='@34.0.0:', type=('build', 'run'))
+ depends_on('py-six@1.6.0:', when='@34.0.0:', type=('build', 'run'))
+ depends_on('py-appdirs@1.4.0:', when='@34.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sh/package.py b/var/spack/repos/builtin/packages/py-sh/package.py
new file mode 100644
index 0000000000..8dc74c0740
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sh/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySh(PythonPackage):
+ """Python subprocess interface"""
+
+ homepage = "https://github.com/amoffat/sh"
+ url = "https://pypi.io/packages/source/s/sh/sh-1.12.9.tar.gz"
+
+ version('1.12.9', 'ddc128a8d943d25afa6e01af11e0063b')
+ version('1.11', '7af8df6c92d29ff927b6db0146bddec3')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-shiboken/package.py b/var/spack/repos/builtin/packages/py-shiboken/package.py
index 3ad51d5fc5..cf04385c62 100644
--- a/var/spack/repos/builtin/packages/py-shiboken/package.py
+++ b/var/spack/repos/builtin/packages/py-shiboken/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ import os
class PyShiboken(PythonPackage):
"""Shiboken generates bindings for C++ libraries using CPython."""
homepage = "https://shiboken.readthedocs.org/"
- url = "https://pypi.python.org/packages/source/S/Shiboken/Shiboken-1.2.2.tar.gz"
+ url = "https://pypi.io/packages/source/S/Shiboken/Shiboken-1.2.2.tar.gz"
version('1.2.2', '345cfebda221f525842e079a6141e555')
diff --git a/var/spack/repos/builtin/packages/py-simplegeneric/package.py b/var/spack/repos/builtin/packages/py-simplegeneric/package.py
index 3881f8bc88..a704436281 100644
--- a/var/spack/repos/builtin/packages/py-simplegeneric/package.py
+++ b/var/spack/repos/builtin/packages/py-simplegeneric/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-simplejson/package.py b/var/spack/repos/builtin/packages/py-simplejson/package.py
new file mode 100644
index 0000000000..6894d62044
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-simplejson/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySimplejson(PythonPackage):
+ """Simplejson is a simple, fast, extensible JSON encoder/decoder for
+ Python"""
+
+ homepage = "https://github.com/simplejson/simplejson"
+ url = "https://pypi.io/packages/source/s/simplejson/simplejson-3.10.0.tar.gz"
+
+ version('3.10.0', '426a9631d22851a7a970b1a677368b15')
+ version('3.9.0', '01db2db1b96bd8e59bcab45bca12639b')
+ version('3.8.2', '53b1371bbf883b129a12d594a97e9a18')
+ version('3.8.1', 'b8441f1053edd9dc335ded8c7f98a974')
+ version('3.8.0', '72f3b93a6f9808df81535f79e79565a2')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-singledispatch/package.py b/var/spack/repos/builtin/packages/py-singledispatch/package.py
index 9125ecb5f8..6007fda635 100644
--- a/var/spack/repos/builtin/packages/py-singledispatch/package.py
+++ b/var/spack/repos/builtin/packages/py-singledispatch/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,8 +34,8 @@ class PySingledispatch(PythonPackage):
version('3.4.0.3', 'af2fc6a3d6cc5a02d0bf54d909785fcb')
depends_on('py-setuptools', type='build')
- depends_on('py-six')
+ depends_on('py-six', type=('build', 'run'))
# This dependency breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
- # depends_on('py-ordereddict', when="^python@:2.6.999", type=('build', 'run')) # noqa
+ # See https://github.com/spack/spack/issues/2793
+ # depends_on('py-ordereddict', when="^python@:2.6", type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sip/package.py b/var/spack/repos/builtin/packages/py-sip/package.py
index 9d97f08433..4c4a5af463 100644
--- a/var/spack/repos/builtin/packages/py-sip/package.py
+++ b/var/spack/repos/builtin/packages/py-sip/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-six/package.py b/var/spack/repos/builtin/packages/py-six/package.py
index 7d653fd102..2f0bda16c6 100644
--- a/var/spack/repos/builtin/packages/py-six/package.py
+++ b/var/spack/repos/builtin/packages/py-six/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,11 +29,18 @@ class PySix(PythonPackage):
"""Python 2 and 3 compatibility utilities."""
homepage = "https://pypi.python.org/pypi/six"
- url = "https://pypi.python.org/packages/source/s/six/six-1.9.0.tar.gz"
+ url = "https://pypi.io/packages/source/s/six/six-1.10.0.tar.gz"
+
+ import_modules = ['six']
version('1.10.0', '34eed507548117b2ab523ab14b2f8b55')
version('1.9.0', '476881ef4012262dfc8adc645ee786c4')
extends('python', ignore=r'bin/pytest')
- depends_on('py-setuptools', type='build')
+ # Newer versions of setuptools require six. Although setuptools is an
+ # optional dependency of six, if it is not found, setup.py will fallback
+ # on distutils.core instead. Don't add a setuptools dependency or we
+ # won't be able to bootstrap setuptools.
+
+ # depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-slepc4py/package.py b/var/spack/repos/builtin/packages/py-slepc4py/package.py
new file mode 100644
index 0000000000..f9603abd9b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-slepc4py/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySlepc4py(PythonPackage):
+ """This package provides Python bindings for the SLEPc package.
+ """
+ homepage = "https://pypi.python.org/pypi/slepc4py"
+ url = "https://pypi.io/packages/source/s/slepc4py/slepc4py-3.7.0.tar.gz"
+
+ version('3.7.0', 'c4775e88b0825c7313629c01de60ecb2')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-petsc4py', type=('build', 'run'))
+ depends_on('slepc')
diff --git a/var/spack/repos/builtin/packages/py-sncosmo/package.py b/var/spack/repos/builtin/packages/py-sncosmo/package.py
index f9d2546da3..87c1f44fad 100644
--- a/var/spack/repos/builtin/packages/py-sncosmo/package.py
+++ b/var/spack/repos/builtin/packages/py-sncosmo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,13 +30,14 @@ class PySncosmo(PythonPackage):
analysis."""
homepage = "http://sncosmo.readthedocs.io/"
- url = "https://pypi.python.org/packages/source/s/sncosmo/sncosmo-1.2.0.tar.gz"
+ url = "https://pypi.io/packages/source/s/sncosmo/sncosmo-1.2.0.tar.gz"
version('1.2.0', '028e6d1dc84ab1c17d2f3b6378b2cb1e')
# Required dependencies
# py-sncosmo binaries are duplicates of those from py-astropy
extends('python', ignore=r'bin/.*')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-scipy', type=('build', 'run'))
depends_on('py-astropy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-snowballstemmer/package.py b/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
index cfeeeb26ce..5122d4600a 100644
--- a/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
+++ b/var/spack/repos/builtin/packages/py-snowballstemmer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,9 @@ class PySnowballstemmer(PythonPackage):
"""This package provides 16 stemmer algorithms (15 + Poerter
English stemmer) generated from Snowball algorithms."""
- homepage = "https://pypi.python.org/pypi/snowballstemmer"
- url = "https://pypi.python.org/packages/source/s/snowballstemmer/snowballstemmer-1.2.1.tar.gz"
+ homepage = "https://github.com/shibukawa/snowball_py"
+ url = "https://pypi.io/packages/source/s/snowballstemmer/snowballstemmer-1.2.1.tar.gz"
+
+ import_modules = ['snowballstemmer']
version('1.2.1', '643b019667a708a922172e33a99bf2fa')
diff --git a/var/spack/repos/builtin/packages/py-spectra/package.py b/var/spack/repos/builtin/packages/py-spectra/package.py
new file mode 100644
index 0000000000..9584b659f8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spectra/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySpectra(PythonPackage):
+ """Color scales and color conversion made easy for Python."""
+
+ homepage = "https://pypi.python.org/pypi/spectra/0.0.8"
+ url = "https://pypi.io/packages/source/s/spectra/spectra-0.0.8.tar.gz"
+
+ version('0.0.8', '83020b29e584389f24c7720f38f0136c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-colormath', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-spefile/package.py b/var/spack/repos/builtin/packages/py-spefile/package.py
new file mode 100644
index 0000000000..dbb8937dc8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spefile/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySpefile(PythonPackage):
+ """Reader for SPE files part of pyspec a set of python routines for data
+ analysis of x-ray scattering experiments"""
+
+ homepage = "https://github.com/conda-forge/spefile-feedstock"
+ url = "https://github.com/conda-forge/spefile-feedstock.git"
+
+ import_modules = ['spefile']
+
+ version('1.6', git='https://github.com/conda-forge/spefile-feedstock.git',
+ commit='24394e066da8dee5e7608f556ca0203c9db217f9')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+
+ build_directory = 'recipe/src'
diff --git a/var/spack/repos/builtin/packages/py-spglib/package.py b/var/spack/repos/builtin/packages/py-spglib/package.py
new file mode 100644
index 0000000000..604aa0faf2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spglib/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySpglib(PythonPackage):
+ """Python bindings for C library for finding and handling
+ crystal symmetries."""
+
+ homepage = "http://atztogo.github.io/spglib/"
+ url = "https://pypi.io/packages/source/s/spglib/spglib-1.9.9.18.tar.gz"
+
+ version('1.9.9.18', 'b8b46268d3aeada7b9b201b11882548f')
+
+ # Most Python packages only require setuptools as a build dependency.
+ # However, spglib requires setuptools during runtime as well.
+ depends_on('py-setuptools@18.0:', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py b/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
index 38f127dfc4..faaa9811df 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-bootstrap-theme/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class PySphinxBootstrapTheme(Package):
+class PySphinxBootstrapTheme(PythonPackage):
"""Sphinx Bootstrap Theme."""
homepage = "https://pypi.python.org/pypi/sphinx-bootstrap-theme/"
@@ -33,9 +33,4 @@ class PySphinxBootstrapTheme(Package):
version('0.4.13', '32e513a9c8ffbb8c1e4b036e8f74fb51')
- extends('python')
-
depends_on('py-setuptools', type='build')
-
- def install(self, spec, prefix):
- setup_py('install', '--prefix={0}'.format(prefix))
diff --git a/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py b/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
index 4b9141d80c..bd922fadf7 100644
--- a/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx-rtd-theme/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,10 +28,12 @@ from spack import *
class PySphinxRtdTheme(PythonPackage):
"""ReadTheDocs.org theme for Sphinx."""
- homepage = "https://pypi.python.org/pypi/sphinx_rtd_theme"
- url = "https://pypi.python.org/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-0.1.10a0.tar.gz"
+ homepage = "https://github.com/rtfd/sphinx_rtd_theme/"
+ url = "https://pypi.io/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-0.1.10a0.tar.gz"
- version('0.1.10a0', '83bd95cae55aa8b773a8cc3a41094282',
- url="https://pypi.python.org/packages/da/6b/1b75f13d8aa3333f19c6cdf1f0bc9f52ea739cae464fbee050307c121857/sphinx_rtd_theme-0.1.10a0.tar.gz")
+ import_modules = ['sphinx_rtd_theme']
+
+ version('0.2.5b1', '0923473a43bd2527f32151f195f2a521')
+ version('0.1.10a0', '83bd95cae55aa8b773a8cc3a41094282')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-sphinx/package.py b/var/spack/repos/builtin/packages/py-sphinx/package.py
index b71f2ed8c5..d99ee12f0e 100644
--- a/var/spack/repos/builtin/packages/py-sphinx/package.py
+++ b/var/spack/repos/builtin/packages/py-sphinx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,24 +28,58 @@ from spack import *
class PySphinx(PythonPackage):
"""Sphinx Documentation Generator."""
homepage = "http://sphinx-doc.org"
- url = "https://pypi.python.org/packages/source/S/Sphinx/Sphinx-1.3.1.tar.gz"
+ url = "https://pypi.io/packages/source/S/Sphinx/Sphinx-1.6.1.tar.gz"
- version('1.4.5', '5c2cd2dac45dfa6123d067e32a89e89a',
- url='https://pypi.python.org/packages/8b/78/eeea2b837f911cdc301f5f05163f9729a2381cadd03ccf35b25afe816c90/Sphinx-1.4.5.tar.gz')
+ import_modules = [
+ 'sphinx', 'sphinx.testing', 'sphinx.ext', 'sphinx.pycode',
+ 'sphinx.search', 'sphinx.transforms', 'sphinx.builders',
+ 'sphinx.directives', 'sphinx.util', 'sphinx.environment',
+ 'sphinx.writers', 'sphinx.domains', 'sphinx.locale',
+ 'sphinx.ext.napoleon', 'sphinx.ext.autosummary', 'sphinx.pycode.pgen2',
+ 'sphinx.transforms.post_transforms', 'sphinx.util.stemmer',
+ 'sphinx.environment.collectors', 'sphinx.environment.adapters'
+ ]
+
+ version('1.6.3', 'c5ad61f4e0974375ca2c2b58ef8d5411')
+ version('1.6.1', '26cb1cdca7aa4afc8c925d926b6268e7')
+ version('1.5.5', 'f9581b3556df9722143c47290273bcf8')
+ version('1.4.5', '5c2cd2dac45dfa6123d067e32a89e89a')
version('1.3.1', '8786a194acf9673464c5455b11fd4332')
extends('python', ignore='bin/(pybabel|pygmentize)')
+ # Sphinx requires at least Python 2.7 or 3.4 to run
+ depends_on('python@2.7:2.8,3.4:', type=('build', 'run'))
+
# Most Python packages only require py-setuptools as a build dependency.
# However, py-sphinx requires py-setuptools during runtime as well.
- depends_on('py-setuptools', type=('build', 'run'))
-
- depends_on('py-six@1.4:', type=('build', 'run'))
- depends_on('py-jinja2@2.3:', type=('build', 'run'))
- depends_on('py-pygments@2.0:', type=('build', 'run'))
- depends_on('py-docutils@0.11:', type=('build', 'run'))
- depends_on('py-snowballstemmer@1.1:', type=('build', 'run'))
- depends_on('py-babel@1.3:', type=('build', 'run')) # not 2.0
- depends_on('py-alabaster@0.7:', type=('build', 'run'))
- depends_on('py-imagesize', when='@1.4:', type=('build', 'run'))
- depends_on('py-sphinx-rtd-theme@0.1:', type=('build', 'run')) # optional as of 1.4
+ depends_on('py-setuptools', type=('build', 'run'))
+
+ depends_on('py-six@1.5:', type=('build', 'run'))
+ depends_on('py-jinja2@2.3:', type=('build', 'run'))
+ depends_on('py-pygments@2.0:', type=('build', 'run'))
+ depends_on('py-docutils@0.11:', type=('build', 'run'))
+ depends_on('py-snowballstemmer@1.1:', type=('build', 'run'))
+ depends_on('py-babel@1.3:', type=('build', 'run')) # not 2.0
+ depends_on('py-alabaster@0.7.0:0.7.999', type=('build', 'run'))
+ depends_on('py-imagesize', when='@1.4:', type=('build', 'run'))
+ depends_on('py-requests@2.0.0:', type=('build', 'run'))
+ depends_on('py-sphinx-rtd-theme@0.1:', type=('build', 'run')) # optional as of 1.4
+
+ # Sphinx v1.6+ no longer includes websupport by default:
+ # http://www.sphinx-doc.org/en/stable/changes.html
+ depends_on('py-sphinxcontrib-websupport', when='@1.6:',
+ type=('build', 'run'))
+ # TODO: incorporate the proper dependencies when concretizer is capable
+ # Build dep for 1.6.1 all python (bug), see:
+ # https://github.com/sphinx-doc/sphinx/pull/3789
+ # depends_on('py-typing', when='@1.6.1', type=('build', 'run'))
+ # depends_on('py-typing', when='@1.6.2:^python@2.7:3.4',
+ # type=('build', 'run'))
+ depends_on('py-typing', when='@1.6:', type=('build', 'run'))
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-pytest', type='test')
+ # depends_on('py-mock', type='test')
+ # depends_on('py-simplejson', type='test')
+ # depends_on('py-html5lib', type='test')
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py
new file mode 100644
index 0000000000..e643a8d933
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-bibtex/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySphinxcontribBibtex(PythonPackage):
+ """A Sphinx extension for BibTeX style citations."""
+
+ homepage = "https://pypi.python.org/pypi/sphinxcontrib-bibtex"
+ url = "https://pypi.io/packages/source/s/sphinxcontrib-bibtex/sphinxcontrib-bibtex-0.3.5.tar.gz"
+
+ import_modules = ['sphinxcontrib', 'sphinxcontrib.bibtex']
+
+ version('0.3.5', 'd3c86836e2f6227b55a5ca9108590b1c')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-latexcodec@0.3.0:', type=('build', 'run'))
+ depends_on('py-pybtex@0.17:', type=('build', 'run'))
+ depends_on('py-pybtex-docutils@0.2.0:', type=('build', 'run'))
+ depends_on('py-six@1.4.1:', type=('build', 'run'))
+ depends_on('py-sphinx@1.0:', type=('build', 'run'))
+ depends_on('py-oset@0.1.3:', type=('build', 'run'))
+ depends_on('py-ordereddict@1.1:', when='^python@:2.6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py
new file mode 100644
index 0000000000..d9dbafb3e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-programoutput/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySphinxcontribProgramoutput(PythonPackage):
+ """A Sphinx extension to literally insert the output of arbitrary commands
+ into documents, helping you to keep your command examples up to date."""
+
+ homepage = "https://sphinxcontrib-programoutput.readthedocs.org/"
+ url = "https://pypi.io/packages/source/s/sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.10.tar.gz"
+
+ # FIXME: These import tests don't work for some reason
+ # import_modules = ['sphinxcontrib', 'sphinxcontrib.programoutput']
+
+ version('0.10', '8e511e476c67696c7ae2c08b15644eb4')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-sphinx@1.3.5:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py b/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py
new file mode 100644
index 0000000000..b75f894c1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-sphinxcontrib-websupport/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySphinxcontribWebsupport(PythonPackage):
+ """sphinxcontrib-webuspport provides a Python API to easily integrate
+ Sphinx documentation into your Web application."""
+
+ homepage = "http://sphinx-doc.org/"
+ url = "https://pypi.io/packages/source/s/sphinxcontrib-websupport/sphinxcontrib-websupport-1.0.1.tar.gz"
+
+ # FIXME: These import tests don't work for some reason
+ # import_modules = [
+ # 'sphinxcontrib', 'sphinxcontrib.websupport',
+ # 'sphinxcontrib.websupport.storage', 'sphinxcontrib.websupport.search'
+ # ]
+
+ version('1.0.1', '84df26463b1ba65b07f926dbe2055665')
+
+ depends_on('py-setuptools', type='build')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-pytest', type='test')
+ # depends_on('py-mock', type='test')
diff --git a/var/spack/repos/builtin/packages/py-spyder/package.py b/var/spack/repos/builtin/packages/py-spyder/package.py
new file mode 100644
index 0000000000..58bc3f9fce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spyder/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySpyder(PythonPackage):
+ """Scientific PYthon Development EnviRonment"""
+
+ homepage = "https://github.com/spyder-ide/spyder"
+ url = "https://pypi.io/packages/source/s/spyder/spyder-3.1.3.tar.gz"
+
+ version('3.1.3', '4b9b7c8c3e6dc00001e6e98473473c36')
+ version('2.3.9', 'dd01e07a77123c128ff79ba57b97c1d7')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-rope@0.9.4:', type=('build', 'run'), when='^python@:3')
+ # depends_on('py-rope_py3k', type=('build', 'run'), when='^python@3:')
+ depends_on('py-jedi@0.9.0', type=('build', 'run'))
+ # otherwise collision with py-flake8
+ depends_on('py-pyflakes@1.2.3', type=('build', 'run'))
+ depends_on('py-pygments@2.0:', type=('build', 'run'))
+ depends_on('py-qtconsole@4.2.0:', type=('build', 'run'))
+ depends_on('py-nbconvert', type=('build', 'run'))
+ depends_on('py-sphinx', type=('build', 'run'))
+ depends_on('py-pycodestyle', type=('build', 'run'))
+ depends_on('py-pylint', type=('build', 'run'))
+ depends_on('py-psutil', type=('build', 'run'))
+ depends_on('py-qtawesome@0.4.1:', type=('build', 'run'))
+ depends_on('py-qtpy@1.1.0:', type=('build', 'run'))
+ depends_on('py-zmq', type=('build', 'run'))
+ depends_on('py-chardet@2:', type=('build', 'run'))
+ depends_on('py-pickleshare', type=('build', 'run'))
+ depends_on('py-numpydoc', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-spykeutils/package.py b/var/spack/repos/builtin/packages/py-spykeutils/package.py
new file mode 100644
index 0000000000..cdccc3be67
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-spykeutils/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySpykeutils(PythonPackage):
+ """Utilities for analyzing electrophysiological data"""
+
+ homepage = "https://github.com/rproepp/spykeutils"
+ url = "https://pypi.io/packages/source/s/spykeutils/spykeutils-0.4.3.tar.gz"
+
+ version('0.4.3', 'cefe4c48ebfdb9bac7a6cbfaf49dd485')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-quantities', type=('build', 'run'))
+ depends_on('py-neo@0.2.1:0.3.99', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-sqlalchemy/package.py b/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
index f8221058a0..8f60538c77 100644
--- a/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
+++ b/var/spack/repos/builtin/packages/py-sqlalchemy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,6 +29,6 @@ class PySqlalchemy(PythonPackage):
"""The Python SQL Toolkit and Object Relational Mapper"""
homepage = 'http://www.sqlalchemy.org/'
- url = "https://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-1.0.12.tar.gz"
+ url = "https://pypi.io/packages/source/S/SQLAlchemy/SQLAlchemy-1.0.12.tar.gz"
version('1.0.12', '6d19ef29883bbebdcac6613cf391cac4')
diff --git a/var/spack/repos/builtin/packages/py-statsmodels/package.py b/var/spack/repos/builtin/packages/py-statsmodels/package.py
new file mode 100644
index 0000000000..641dc197af
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-statsmodels/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyStatsmodels(PythonPackage):
+ """Statistical computations and models for use with SciPy"""
+
+ homepage = "http://www.statsmodels.org"
+ url = "https://pypi.io/packages/source/s/statsmodels/statsmodels-0.8.0.tar.gz"
+
+ version('0.8.0', 'b3e5911cc9b00b71228d5d39a880bba0')
+
+ variant('plotting', default=False, description='With matplotlib')
+
+ # according to http://www.statsmodels.org/dev/install.html earlier versions
+ # might work.
+ depends_on('py-setuptools@0.6c5:', type='build')
+ depends_on('py-numpy@1.7.0:', type=('build', 'run'))
+ depends_on('py-scipy@0.11:', type=('build', 'run'))
+ depends_on('py-pandas@0.12:', type=('build', 'run'))
+ depends_on('py-patsy@0.2.1:', type=('build', 'run'))
+ depends_on('py-cython@0.24:', type=('build', 'run'))
+ depends_on('py-matplotlib@1.3:', type='run', when='+plotting')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose', type='test')
diff --git a/var/spack/repos/builtin/packages/py-storm/package.py b/var/spack/repos/builtin/packages/py-storm/package.py
index a6c2900414..8552413694 100644
--- a/var/spack/repos/builtin/packages/py-storm/package.py
+++ b/var/spack/repos/builtin/packages/py-storm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-subprocess32/package.py b/var/spack/repos/builtin/packages/py-subprocess32/package.py
new file mode 100644
index 0000000000..66c6e3b86d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-subprocess32/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySubprocess32(PythonPackage):
+ """A backport of the subprocess module from Python 3.2/3.3 for 2.x."""
+
+ homepage = "https://pypi.python.org/pypi/subprocess32"
+ url = "https://pypi.io/packages/source/s/subprocess32/subprocess32-3.2.7.tar.gz"
+
+ version('3.2.7', '824c801e479d3e916879aae3e9c15e16')
diff --git a/var/spack/repos/builtin/packages/py-symengine/package.py b/var/spack/repos/builtin/packages/py-symengine/package.py
index 0817d394f2..6de1c159c3 100644
--- a/var/spack/repos/builtin/packages/py-symengine/package.py
+++ b/var/spack/repos/builtin/packages/py-symengine/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,7 @@ class PySymengine(PythonPackage):
# Build dependencies
depends_on('python@2.7:2.8,3.3:')
depends_on('py-setuptools', type='build')
- depends_on('py-cython@0.19.1:')
+ depends_on('py-cython@0.19.1:', type='build')
depends_on('cmake@2.8.7:', type='build')
depends_on('symengine@0.2.0:')
diff --git a/var/spack/repos/builtin/packages/py-symfit/package.py b/var/spack/repos/builtin/packages/py-symfit/package.py
new file mode 100644
index 0000000000..6ecf2ebee6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-symfit/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PySymfit(PythonPackage):
+ """Symbolic Fitting; fitting as it should be."""
+
+ homepage = "http://symfit.readthedocs.org"
+ url = "https://pypi.io/packages/source/s/symfit/symfit-0.3.5.tar.gz"
+
+ version('0.3.5', '7f62552ffeba4b4d203c01ff52fe15d5')
+
+ depends_on('py-setuptools@17.1:', type='build')
+ depends_on('py-pbr@1.9:', type='build')
+ depends_on('py-numpy', type='run')
+ depends_on('py-scipy', type='run')
+ depends_on('py-sympy', type='run')
+ depends_on('py-funcsigs', type='run', when='^python@:2.8')
diff --git a/var/spack/repos/builtin/packages/py-sympy/package.py b/var/spack/repos/builtin/packages/py-sympy/package.py
index 58c4167e23..2a6758bbf6 100644
--- a/var/spack/repos/builtin/packages/py-sympy/package.py
+++ b/var/spack/repos/builtin/packages/py-sympy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,9 +28,9 @@ from spack import *
class PySympy(PythonPackage):
"""SymPy is a Python library for symbolic mathematics."""
homepage = "https://pypi.python.org/pypi/sympy"
- url = "https://pypi.python.org/packages/source/s/sympy/sympy-0.7.6.tar.gz"
+ url = "https://pypi.io/packages/source/s/sympy/sympy-0.7.6.tar.gz"
version('0.7.6', '3d04753974306d8a13830008e17babca')
version('1.0', '43e797de799f00f9e8fd2307dba9fab1')
- depends_on('py-mpmath', when='@1.0:')
+ depends_on('py-mpmath', when='@1.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tabulate/package.py b/var/spack/repos/builtin/packages/py-tabulate/package.py
new file mode 100644
index 0000000000..7083d69506
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tabulate/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTabulate(PythonPackage):
+ """Pretty-print tabular data"""
+
+ homepage = "https://bitbucket.org/astanin/python-tabulate"
+ url = "https://pypi.io/packages/source/t/tabulate/tabulate-0.7.7.tar.gz"
+
+ version('0.7.7', '39a21aaa9c10be0749c545be34552559')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-tappy/package.py b/var/spack/repos/builtin/packages/py-tappy/package.py
index 22bc15392f..3600e56fc8 100644
--- a/var/spack/repos/builtin/packages/py-tappy/package.py
+++ b/var/spack/repos/builtin/packages/py-tappy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,13 +29,13 @@ class PyTappy(PythonPackage):
"""Python TAP interface module for unit tests"""
homepage = "https://github.com/mblayman/tappy"
# base https://pypi.python.org/pypi/cffi
- url = "https://pypi.python.org/packages/source/t/tap.py/tap.py-1.6.tar.gz"
+ url = "https://pypi.io/packages/source/t/tap.py/tap.py-1.6.tar.gz"
version('1.6', 'c8bdb93ad66e05f939905172a301bedf')
extends('python', ignore='bin/nosetests|bin/pygmentize')
- depends_on('python@2.6:2.7,3.2:3.4')
+ depends_on('python@2.6:2.8,3.2:3.4')
depends_on('py-nose', type=('build', 'run'))
depends_on('py-pygments', type=('build', 'run'))
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-terminado/package.py b/var/spack/repos/builtin/packages/py-terminado/package.py
index 4cebe14fca..0cf4e582f2 100644
--- a/var/spack/repos/builtin/packages/py-terminado/package.py
+++ b/var/spack/repos/builtin/packages/py-terminado/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,6 +33,5 @@ class PyTerminado(PythonPackage):
version('0.6', '5b6c65da27fe1ed07a9f80f0588cdaba')
- depends_on('py-setuptools', type='build')
depends_on('py-tornado@4:', type=('build', 'run'))
depends_on('py-ptyprocess', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-theano/package.py b/var/spack/repos/builtin/packages/py-theano/package.py
new file mode 100644
index 0000000000..4fe8920dd5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-theano/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTheano(PythonPackage):
+ """Optimizing compiler for evaluating mathematical expressions on CPUs
+ and GPUs."""
+
+ homepage = "http://deeplearning.net/software/theano/"
+ url = "https://pypi.io/packages/source/T/Theano/Theano-0.8.2.tar.gz"
+
+ version('0.8.2', 'f2d0dfe7df141115201077cd933b2c52')
+ version('master', git='https://github.com/Theano/Theano.git', branch='master')
+
+ variant('gpu', default=False,
+ description='Builds with support for GPUs via CUDA and cuDNN')
+
+ depends_on('python@2.6:2.8,3.3:')
+
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-scipy@0.11:', type=('build', 'run'))
+ depends_on('py-numpy@1.7.1:', type=('build', 'run'))
+ depends_on('py-six@1.9.0:', type=('build', 'run'))
+
+ depends_on('blas')
+
+ depends_on('cuda', when='+gpu')
+ depends_on('libgpuarray', when='+gpu')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('py-nose@1.3.0:', type='test')
+ # depends_on('py-nose-parameterized@0.5.0:', type='test')
diff --git a/var/spack/repos/builtin/packages/py-tifffile/package.py b/var/spack/repos/builtin/packages/py-tifffile/package.py
new file mode 100644
index 0000000000..b0dfb7ed1d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tifffile/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTifffile(PythonPackage):
+ """Read and write image data from and to TIFF files."""
+
+ homepage = "https://github.com/blink1073/tifffile"
+ url = "https://pypi.io/packages/source/t/tifffile/tifffile-0.12.1.tar.gz"
+
+ import_modules = ['tifffile']
+
+ version('0.12.1', '8a8afa74dd0df7915ac376a6cd7eeffc')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy@1.8.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tomopy/package.py b/var/spack/repos/builtin/packages/py-tomopy/package.py
new file mode 100644
index 0000000000..acba1ddcac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tomopy/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class PyTomopy(PythonPackage):
+ """TomoPy is an open-source Python package for tomographic data
+ processing and image reconstruction."""
+
+ homepage = "http://tomopy.readthedocs.io/en/latest/index.html"
+ url = "https://github.com/tomopy/tomopy/archive/1.0.0.tar.gz"
+
+ import_modules = [
+ 'tomopy', 'doc', 'tomopy.util', 'tomopy.sim', 'tomopy.recon',
+ 'tomopy.prep', 'tomopy.misc', 'tomopy.io', 'doc.demo'
+ ]
+
+ version('1.0.0', '986ac2c85a4af9ada0403b4c746d2cd4')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-numpy', type=('build', 'run'))
+ depends_on('py-h5py', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-six', type=('build', 'run'))
+ depends_on('py-scikit-image', type=('build', 'run'))
+ depends_on('py-pywavelets', type=('build', 'run'))
+ depends_on('py-pyfftw', type=('build', 'run'))
+ depends_on('py-dxchange', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tornado/package.py b/var/spack/repos/builtin/packages/py-tornado/package.py
index eb9c660947..ce1c88a2bb 100644
--- a/var/spack/repos/builtin/packages/py-tornado/package.py
+++ b/var/spack/repos/builtin/packages/py-tornado/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,7 @@ class PyTornado(PythonPackage):
# requirements from setup.py
# These dependencies breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
+ # See https://github.com/spack/spack/issues/2793
# depends_on('py-backports-ssl-match-hostname', when='^python@:2.7.8', type=('build', 'run')) # noqa
# depends_on('py-singledispatch', when='^python@:3.3', type=('build', 'run')) # noqa
# depends_on('py-certifi', when='^python@:3.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tqdm/package.py b/var/spack/repos/builtin/packages/py-tqdm/package.py
new file mode 100644
index 0000000000..1d1b2486c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tqdm/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTqdm(PythonPackage):
+ """A Fast, Extensible Progress Meter"""
+
+ homepage = "https://github.com/tqdm/tqdm"
+ url = "https://pypi.io/packages/source/t/tqdm/tqdm-4.8.4.tar.gz"
+
+ version('4.8.4', 'b30a0aa20641d239296eab1c48a06b4e')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-traitlets/package.py b/var/spack/repos/builtin/packages/py-traitlets/package.py
index debd1dca43..db90d28a66 100644
--- a/var/spack/repos/builtin/packages/py-traitlets/package.py
+++ b/var/spack/repos/builtin/packages/py-traitlets/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -40,11 +40,10 @@ class PyTraitlets(PythonPackage):
version('4.0.0', 'b5b95ea5941fd9619b4704dfd8201568')
version('4.0', '14544e25ccf8e920ed1cbf833852481f')
- depends_on('py-setuptools', type='build')
depends_on('py-decorator', type=('build', 'run'))
depends_on('py-ipython-genutils', type=('build', 'run'))
# This dependency breaks concretization
- # See https://github.com/LLNL/spack/issues/2793
+ # See https://github.com/spack/spack/issues/2793
# depends_on('py-enum34', when='^python@:3.3', type=('build', 'run'))
depends_on('py-enum34', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tuiview/package.py b/var/spack/repos/builtin/packages/py-tuiview/package.py
index 93726cf004..1223666d90 100644
--- a/var/spack/repos/builtin/packages/py-tuiview/package.py
+++ b/var/spack/repos/builtin/packages/py-tuiview/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-twisted/package.py b/var/spack/repos/builtin/packages/py-twisted/package.py
index e558adbc7f..e596adec97 100644
--- a/var/spack/repos/builtin/packages/py-twisted/package.py
+++ b/var/spack/repos/builtin/packages/py-twisted/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyTwisted(PythonPackage):
"""An asynchronous networking framework written in Python"""
homepage = "https://twistedmatrix.com/"
- url = "https://pypi.python.org/packages/source/T/Twisted/Twisted-15.3.0.tar.bz2"
+ url = "https://pypi.io/packages/source/T/Twisted/Twisted-15.3.0.tar.bz2"
version('15.4.0', '5337ffb6aeeff3790981a2cd56db9655')
version('15.3.0', 'b58e83da2f00b3352afad74d0c5c4599')
diff --git a/var/spack/repos/builtin/packages/py-typing/package.py b/var/spack/repos/builtin/packages/py-typing/package.py
new file mode 100644
index 0000000000..656eabe6f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-typing/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTyping(PythonPackage):
+ """This is a backport of the standard library typing module to Python
+ versions older than 3.6."""
+
+ homepage = "https://docs.python.org/3/library/typing.html"
+ url = "https://pypi.io/packages/source/t/typing/typing-3.6.1.tar.gz"
+
+ import_modules = ['typing']
+
+ version('3.6.1', '3fec97415bae6f742fb3c3013dedeb89')
+
+ # You need Python 2.7 or 3.3+ to install the typing package
+ depends_on('python@2.7:2.8,3.3:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-tzlocal/package.py b/var/spack/repos/builtin/packages/py-tzlocal/package.py
new file mode 100644
index 0000000000..fad9c19f3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-tzlocal/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyTzlocal(PythonPackage):
+ """tzinfo object for the local timezone."""
+
+ homepage = "https://github.com/regebro/tzlocal"
+ url = "https://pypi.io/packages/source/t/tzlocal/tzlocal-1.3.tar.gz"
+
+ version('1.3', '3cb544b3975b59f91a793850a072d4a8')
+
+ depends_on('py-setuptools', type='build')
+
+ depends_on('py-pytz', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-unittest2/package.py b/var/spack/repos/builtin/packages/py-unittest2/package.py
index d6a68c3535..bdac19d855 100644
--- a/var/spack/repos/builtin/packages/py-unittest2/package.py
+++ b/var/spack/repos/builtin/packages/py-unittest2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,8 +30,9 @@ class PyUnittest2(PythonPackage):
testing framework in Python 2.7 and onwards."""
homepage = "https://pypi.python.org/pypi/unittest2"
- url = "https://pypi.python.org/packages/source/u/unittest2/unittest2-1.1.0.tar.gz"
+ url = "https://pypi.io/packages/source/u/unittest2/unittest2-1.1.0.tar.gz"
version('1.1.0', 'f72dae5d44f091df36b6b513305ea000')
depends_on('py-setuptools', type='build')
+ depends_on('py-enum34', when='^python@:3.3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-unittest2py3k/package.py b/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
index 03134acfcd..1c30595d97 100644
--- a/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
+++ b/var/spack/repos/builtin/packages/py-unittest2py3k/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,7 @@ class PyUnittest2py3k(PythonPackage):
version of unittest2."""
homepage = "https://pypi.python.org/pypi/unittest2py3k"
- url = "https://pypi.python.org/packages/source/u/unittest2py3k/unittest2py3k-0.5.1.tar.gz"
+ url = "https://pypi.io/packages/source/u/unittest2py3k/unittest2py3k-0.5.1.tar.gz"
version('0.5.1', '8824ff92044310d9365f90d892bf0f09')
diff --git a/var/spack/repos/builtin/packages/py-urllib3/package.py b/var/spack/repos/builtin/packages/py-urllib3/package.py
new file mode 100644
index 0000000000..000c6ef1e6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-urllib3/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyUrllib3(PythonPackage):
+ """HTTP library with thread-safe connection pooling, file post, and
+ more."""
+
+ homepage = "https://urllib3.readthedocs.io/"
+ url = "https://pypi.io/packages/source/u/urllib3/urllib3-1.20.tar.gz"
+
+ version('1.20', '34691d4e7e20a8e9cdb452ea24fc38e7')
+ version('1.14', '5e1407428ac33b521c71a7ac273b3847')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-urwid/package.py b/var/spack/repos/builtin/packages/py-urwid/package.py
index 8e33d2bef2..46895ac2ee 100644
--- a/var/spack/repos/builtin/packages/py-urwid/package.py
+++ b/var/spack/repos/builtin/packages/py-urwid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,7 +28,7 @@ from spack import *
class PyUrwid(PythonPackage):
"""A full-featured console UI library"""
homepage = "http://urwid.org/"
- url = "https://pypi.python.org/packages/source/u/urwid/urwid-1.3.0.tar.gz"
+ url = "https://pypi.io/packages/source/u/urwid/urwid-1.3.0.tar.gz"
version('1.3.0', 'a989acd54f4ff1a554add464803a9175')
diff --git a/var/spack/repos/builtin/packages/py-vcversioner/package.py b/var/spack/repos/builtin/packages/py-vcversioner/package.py
index 81e4f7bdda..fa4e2565b8 100644
--- a/var/spack/repos/builtin/packages/py-vcversioner/package.py
+++ b/var/spack/repos/builtin/packages/py-vcversioner/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ class PyVcversioner(PythonPackage):
"""Vcversioner: Take version numbers from version control."""
homepage = "https://github.com/habnabit/vcversioner"
- url = "https://pypi.python.org/packages/source/v/vcversioner/vcversioner-2.16.0.0.tar.gz"
+ url = "https://pypi.io/packages/source/v/vcversioner/vcversioner-2.16.0.0.tar.gz"
version('2.16.0.0', 'aab6ef5e0cf8614a1b1140ed5b7f107d')
diff --git a/var/spack/repos/builtin/packages/py-virtualenv/package.py b/var/spack/repos/builtin/packages/py-virtualenv/package.py
index 5e6431b637..a91117e616 100644
--- a/var/spack/repos/builtin/packages/py-virtualenv/package.py
+++ b/var/spack/repos/builtin/packages/py-virtualenv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,11 +27,16 @@ from spack import *
class PyVirtualenv(PythonPackage):
"""virtualenv is a tool to create isolated Python environments."""
- homepage = "http://virtualenv.readthedocs.org/projects/virtualenv/"
- url = "https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.11.6.tar.gz"
- version('1.11.6', 'f61cdd983d2c4e6aeabb70b1060d6f49')
- version('13.0.1', '1ffc011bde6667f0e37ecd976f4934db')
+ homepage = "https://virtualenv.pypa.io/"
+ url = "https://pypi.io/packages/source/v/virtualenv/virtualenv-15.1.0.tar.gz"
+
+ version('15.1.0', '44e19f4134906fe2d75124427dc9b716')
version('15.0.1', '28d76a0d9cbd5dc42046dd14e76a6ecc')
+ version('13.0.1', '1ffc011bde6667f0e37ecd976f4934db')
+ version('1.11.6', 'f61cdd983d2c4e6aeabb70b1060d6f49')
+
+ depends_on('python@2.6:')
- depends_on('py-setuptools', type='build')
+ # not just build-time, requires pkg_resources
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-vsc-base/package.py b/var/spack/repos/builtin/packages/py-vsc-base/package.py
new file mode 100644
index 0000000000..2cd0ff4b46
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-vsc-base/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyVscBase(PythonPackage):
+ """Common Python libraries tools created by HPC-UGent"""
+
+ homepage = 'https://github.com/hpcugent/vsc-base/'
+ url = 'https://pypi.io/packages/source/v/vsc-base/vsc-base-2.5.8.tar.gz'
+
+ version('2.5.8', '57f3f49eab7aa15a96be76e6c89a72d8')
+
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-vsc-install/package.py b/var/spack/repos/builtin/packages/py-vsc-install/package.py
new file mode 100644
index 0000000000..09e9c885cf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-vsc-install/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2017, Kenneth Hoste
+#
+# This file is part of Spack.
+# Created by Kenneth Hoste, kenneth.hoste@gmail.com
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyVscInstall(PythonPackage):
+ """Shared setuptools functions and classes
+ for Python libraries developed by HPC-UGent.
+ """
+
+ homepage = 'https://github.com/hpcugent/vsc-install/'
+ url = 'https://pypi.io/packages/source/v/vsc-install/vsc-install-0.10.25.tar.gz'
+
+ version('0.10.25', 'd1b9453a75cb56dba0deb7a878047b51')
+
+ depends_on('py-setuptools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-wcsaxes/package.py b/var/spack/repos/builtin/packages/py-wcsaxes/package.py
index be1d151ee9..16fa376dc7 100644
--- a/var/spack/repos/builtin/packages/py-wcsaxes/package.py
+++ b/var/spack/repos/builtin/packages/py-wcsaxes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,6 +35,7 @@ class PyWcsaxes(PythonPackage):
version('0.8', 'de1c60fdae4c330bf5ddb9f1ab5ab920')
extends('python', ignore=r'bin/')
+ depends_on('py-setuptools', type='build')
depends_on('py-numpy', type=('build', 'run'))
depends_on('py-matplotlib', type=('build', 'run'))
depends_on('py-astropy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-wcwidth/package.py b/var/spack/repos/builtin/packages/py-wcwidth/package.py
index c4846e2ee7..ca4b7740b5 100644
--- a/var/spack/repos/builtin/packages/py-wcwidth/package.py
+++ b/var/spack/repos/builtin/packages/py-wcwidth/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-webkit-server/package.py b/var/spack/repos/builtin/packages/py-webkit-server/package.py
new file mode 100644
index 0000000000..66850b9682
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-webkit-server/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyWebkitServer(PythonPackage):
+ """a Webkit-based, headless web client"""
+
+ homepage = "https://github.com/niklasb/webkit-server"
+ url = "https://pypi.io/packages/source/w/webkit-server/webkit-server-1.0.tar.gz"
+
+ version('develop', git="https://github.com/niklasb/webkit-server", branch="master")
+ version('1.0', '8463245c2b4f0264d934c0ae20bd4654')
diff --git a/var/spack/repos/builtin/packages/py-werkzeug/package.py b/var/spack/repos/builtin/packages/py-werkzeug/package.py
new file mode 100644
index 0000000000..30573a7ff2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-werkzeug/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyWerkzeug(PythonPackage):
+ """The Swiss Army knife of Python web development"""
+
+ homepage = "http://werkzeug.pocoo.org"
+ url = "https://pypi.io/packages/source/W/Werkzeug/Werkzeug-0.11.11.tar.gz"
+
+ version('0.11.15', 'cb4010478dd33905f95920e4880204a2')
+ version('0.11.11', '1d34afa1f19abcef4c0da51ebc2c4ea7')
+
+ depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-wheel/package.py b/var/spack/repos/builtin/packages/py-wheel/package.py
index 7e678df2e8..f0a15f0886 100644
--- a/var/spack/repos/builtin/packages/py-wheel/package.py
+++ b/var/spack/repos/builtin/packages/py-wheel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,9 @@ class PyWheel(PythonPackage):
"""A built-package format for Python."""
homepage = "https://pypi.python.org/pypi/wheel"
- url = "https://pypi.python.org/packages/source/w/wheel/wheel-0.26.0.tar.gz"
+ url = "https://pypi.io/packages/source/w/wheel/wheel-0.29.0.tar.gz"
+ version('0.29.0', '555a67e4507cedee23a0deb9651e452f')
version('0.26.0', '4cfc6e7e3dc7377d0164914623922a10')
depends_on('py-setuptools', type='build')
diff --git a/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py b/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
index 916263bda6..206f940b57 100644
--- a/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
+++ b/var/spack/repos/builtin/packages/py-widgetsnbextension/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,5 +34,5 @@ class PyWidgetsnbextension(PythonPackage):
version('1.2.6', '0aa4e152c9ba2d704389dc2453f448c7')
depends_on('py-setuptools', type='build')
- depends_on('python@2.7:2.7.999,3.3:')
+ depends_on('python@2.7:2.8,3.3:')
depends_on('py-jupyter-notebook@4.2.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-wrapt/package.py b/var/spack/repos/builtin/packages/py-wrapt/package.py
new file mode 100644
index 0000000000..5b81eef2e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-wrapt/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyWrapt(PythonPackage):
+ """Module for decorators, wrappers and monkey patching."""
+
+ homepage = "https://github.com/GrahamDumpleton/wrapt"
+ url = "https://pypi.io/packages/source/w/wrapt/wrapt-1.10.10.tar.gz"
+
+ version('1.10.10', '97365e906afa8b431f266866ec4e2e18')
diff --git a/var/spack/repos/builtin/packages/py-xarray/package.py b/var/spack/repos/builtin/packages/py-xarray/package.py
new file mode 100644
index 0000000000..27017a9227
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xarray/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyXarray(PythonPackage):
+ """N-D labeled arrays and datasets in Python"""
+
+ homepage = "https://github.com/pydata/xarray"
+ url = "https://pypi.io/packages/source/x/xarray/xarray-0.9.1.tar.gz"
+
+ version('0.9.1', '24cc99f19da95427604846c9d1e20e70')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-pandas@0.15.0:', type=('build', 'run'))
+ depends_on('py-numpy@1.7:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-xlrd/package.py b/var/spack/repos/builtin/packages/py-xlrd/package.py
index bbd2f57b07..3fc22a7865 100644
--- a/var/spack/repos/builtin/packages/py-xlrd/package.py
+++ b/var/spack/repos/builtin/packages/py-xlrd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,6 +30,6 @@ class PyXlrd(PythonPackage):
spreadsheet files"""
homepage = 'http://www.python-excel.org/'
- url = "https://pypi.python.org/packages/source/x/xlrd/xlrd-0.9.4.tar.gz"
+ url = "https://pypi.io/packages/source/x/xlrd/xlrd-0.9.4.tar.gz"
version('0.9.4', '911839f534d29fe04525ef8cd88fe865')
diff --git a/var/spack/repos/builtin/packages/py-xlsxwriter/package.py b/var/spack/repos/builtin/packages/py-xlsxwriter/package.py
new file mode 100644
index 0000000000..97170d76d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xlsxwriter/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyXlsxwriter(PythonPackage):
+ """XlsxWriter is a Python module for writing files in the Excel 2007+ XLSX
+ file format."""
+
+ homepage = "https://pypi.python.org/pypi/XlsxWriter"
+ url = "https://pypi.io/packages/source/X/XlsxWriter/XlsxWriter-1.0.2.tar.gz"
+
+ version('1.0.2', '586f97beeb458c5707794882125330d2')
diff --git a/var/spack/repos/builtin/packages/py-xmlrunner/package.py b/var/spack/repos/builtin/packages/py-xmlrunner/package.py
new file mode 100644
index 0000000000..104d6113c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xmlrunner/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyXmlrunner(PythonPackage):
+ """PyUnit-based test runner with JUnit like XML reporting."""
+
+ homepage = "https://github.com/pycontribs/xmlrunner"
+ url = "https://pypi.io/packages/source/x/xmlrunner/xmlrunner-1.7.7.tar.gz"
+
+ version('1.7.7', '7b0b152ed2d278516aedbc0cac22dfb3')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('py-unittest2', type=('build', 'run'), when='^python@:2.8')
diff --git a/var/spack/repos/builtin/packages/py-xopen/package.py b/var/spack/repos/builtin/packages/py-xopen/package.py
new file mode 100644
index 0000000000..4b6df42419
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xopen/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyXopen(PythonPackage):
+ """This small Python module provides a xopen function that works like the
+ built-in open function, but can also deal with compressed files. Supported
+ compression formats are gzip, bzip2 and xz. They are automatically
+ recognized by their file extensions .gz, .bz2 or .xz."""
+
+ homepage = "https://github.com/marcelm/xopen"
+ url = "https://pypi.io/packages/source/x/xopen/xopen-0.1.1.tar.gz"
+
+ version('0.1.1', '4e0e955546ee6bee4ea736b54623a671')
+
+ depends_on('py-setuptools', type='build')
+ depends_on('python@2.6:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/py-xpyb/package.py b/var/spack/repos/builtin/packages/py-xpyb/package.py
index 49c6343c45..60f69610c3 100644
--- a/var/spack/repos/builtin/packages/py-xpyb/package.py
+++ b/var/spack/repos/builtin/packages/py-xpyb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class PyXpyb(Package):
+class PyXpyb(AutotoolsPackage):
"""xpyb provides a Python binding to the X Window System protocol
via libxcb."""
@@ -39,9 +39,3 @@ class PyXpyb(Package):
depends_on('libxcb@1.5:')
depends_on('xcb-proto@1.7.1:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py b/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py
new file mode 100644
index 0000000000..09c9f6da47
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-xvfbwrapper/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class PyXvfbwrapper(PythonPackage):
+ """run headless display inside X virtual framebuffer (Xvfb)"""
+
+ homepage = "https://pypi.python.org/pypi/xvfbwrapper/0.2.9"
+ url = "https://pypi.io/packages/source/x/xvfbwrapper/xvfbwrapper-0.2.9.tar.gz"
+
+ version('0.2.9', '3f3cbed698606f4b14e76ccc7b5dd366')
+
+ depends_on('py-setuptools', type='build')
+ # Eventually add xvfb!
diff --git a/var/spack/repos/builtin/packages/py-yapf/package.py b/var/spack/repos/builtin/packages/py-yapf/package.py
index 5f5d32e3d0..76121cf2d2 100644
--- a/var/spack/repos/builtin/packages/py-yapf/package.py
+++ b/var/spack/repos/builtin/packages/py-yapf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/py-yt/package.py b/var/spack/repos/builtin/packages/py-yt/package.py
index 6ab967d8a5..6c8aa1797f 100644
--- a/var/spack/repos/builtin/packages/py-yt/package.py
+++ b/var/spack/repos/builtin/packages/py-yt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,6 +37,10 @@ class PyYt(PythonPackage):
homepage = "http://yt-project.org"
url = "https://bitbucket.org/yt_analysis/yt"
+ version("3.3.5", "2ad314ff3d3261e41825d15db027b0e7",
+ url="https://bitbucket.org/yt_analysis/yt/get/yt-3.3.5.tar.gz")
+ version("3.3.4", "3a84e56dfd82f9dd923f3fb8490e679c",
+ url="https://bitbucket.org/yt_analysis/yt/get/yt-3.3.4.tar.gz")
version("3.3.1", hg="https://bitbucket.org/yt_analysis/yt",
tag="yt-3.3.1", commit="9bc3d0e9b750c923d44d73c447df64fc431f5838")
version("3.2.3", hg="https://bitbucket.org/yt_analysis/yt",
@@ -53,6 +57,7 @@ class PyYt(PythonPackage):
variant("astropy", default=True, description="enable astropy support")
variant("h5py", default=True, description="enable h5py support")
variant("scipy", default=True, description="enable scipy support")
+ variant("rockstar", default=False, description="enable rockstar support")
depends_on("py-astropy", type=('build', 'run'), when="+astropy")
depends_on("py-cython", type=('build', 'run'))
@@ -61,11 +66,19 @@ class PyYt(PythonPackage):
depends_on("py-matplotlib", type=('build', 'run'))
depends_on("py-numpy", type=('build', 'run'))
depends_on("py-scipy", type=('build', 'run'), when="+scipy")
- depends_on("py-setuptools", type="build")
+ depends_on("py-setuptools", type=('build', 'run'))
depends_on("py-sympy", type=('build', 'run'))
- depends_on("python @2.7:2.999,3.4:")
+ depends_on("rockstar@yt", type=('build', 'run'), when="+rockstar")
+ depends_on("python@2.7:2.8,3.4:")
- @PythonPackage.sanity_check('install')
+ @run_before('install')
+ def prep_yt(self):
+ if '+rockstar' in self.spec:
+ with open('rockstar.cfg', 'w') as rockstar_cfg:
+ rockstar_cfg.write(self.spec['rockstar'].prefix)
+
+ @run_after('install')
+ @on_package_attributes(run_tests=True)
def check_install(self):
# The Python interpreter path can be too long for this
# yt = Executable(join_path(prefix.bin, "yt"))
diff --git a/var/spack/repos/builtin/packages/py-zmq/package.py b/var/spack/repos/builtin/packages/py-zmq/package.py
index cbc0e02e6e..d5734d8a33 100644
--- a/var/spack/repos/builtin/packages/py-zmq/package.py
+++ b/var/spack/repos/builtin/packages/py-zmq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,6 @@ class PyZmq(PythonPackage):
version('16.0.2', '4cf14a2995742253b2b009541f4436f4')
version('14.7.0', 'bf304fb73d72aee314ff82d3554328c179938ecf')
- depends_on('py-setuptools', type='build')
depends_on('py-cython@0.16:', type=('build', 'run'))
depends_on('py-py', type=('build', 'run'))
depends_on('py-cffi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/python/cray-rpath-2.3.patch b/var/spack/repos/builtin/packages/python/cray-rpath-2.3.patch
new file mode 100644
index 0000000000..54a85cc64a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/python/cray-rpath-2.3.patch
@@ -0,0 +1,12 @@
+--- a/Lib/distutils/unixccompiler.py 2003-06-02 05:27:40.000000000 +1000
++++ b/Lib/distutils/unixccompiler.py 2017-05-13 13:52:45.554213616 +1000
+@@ -208,7 +208,8 @@
+ elif compiler[:3] == "gcc" or compiler[:3] == "g++":
+ return "-Wl,-R" + dir
+ else:
+- return "-R" + dir
++ # Patched by spack to use gcc syntax by default:
++ return "-Wl,-R" + dir
+
+ def library_option(self, lib):
+ return "-l" + lib
diff --git a/var/spack/repos/builtin/packages/python/cray-rpath-3.1.patch b/var/spack/repos/builtin/packages/python/cray-rpath-3.1.patch
new file mode 100644
index 0000000000..f203bbbaa5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/python/cray-rpath-3.1.patch
@@ -0,0 +1,15 @@
+--- a/Lib/distutils/unixccompiler.py 2009-05-09 21:55:12.000000000 +1000
++++ b/Lib/distutils/unixccompiler.py 2017-05-13 14:30:18.077518999 +1000
+@@ -299,10 +299,8 @@
+ else:
+ return "-Wl,-R" + dir
+ else:
+- # No idea how --enable-new-dtags would be passed on to
+- # ld if this system was using GNU ld. Don't know if a
+- # system like this even exists.
+- return "-R" + dir
++ # Patched by spack to use gcc syntax by default:
++ return "-Wl,-R" + dir
+
+ def library_option(self, lib):
+ return "-l" + lib
diff --git a/var/spack/repos/builtin/packages/python/package.py b/var/spack/repos/builtin/packages/python/package.py
index 348b075e2f..c77756a78f 100644
--- a/var/spack/repos/builtin/packages/python/package.py
+++ b/var/spack/repos/builtin/packages/python/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,26 +24,30 @@
##############################################################################
import ast
import os
+import platform
import re
-from contextlib import closing
+import sys
-import spack
import llnl.util.tty as tty
from llnl.util.lang import match_predicate
from llnl.util.filesystem import force_remove
+
+import spack
from spack import *
-from spack.util.environment import *
+from spack.util.prefix import Prefix
import spack.util.spack_json as sjson
-class Python(Package):
+class Python(AutotoolsPackage):
"""The Python programming language."""
homepage = "http://www.python.org"
url = "http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz"
list_url = "https://www.python.org/downloads/"
- list_depth = 2
+ list_depth = 1
+ version('3.6.2', 'e1a36bfffdd1d3a780b1825daf16e56c')
+ version('3.6.1', '2d0fc9f3a5940707590e07f03ecb08b9')
version('3.6.0', '3f7062ccf8be76491884d0e47ac8b251')
version('3.5.2', '3fe8434643a78630c61c6464fe2e7e72')
version('3.5.1', 'be78e48cdfc1a7ad90efff146dce6cfe')
@@ -52,7 +56,8 @@ class Python(Package):
version('3.3.6', 'cdb3cd08f96f074b3f3994ccb51063e9')
version('3.2.6', '23815d82ae706e9b781ca65865353d39')
version('3.1.5', '02196d3fc7bc76bdda68aa36b0dd16ab')
- version('2.7.13', '17add4bf0ad0ec2f08e0cae6d205c700', preferred=True)
+ version('2.7.14', 'cee2e4b33ad3750da77b2e85f2f8b724', preferred=True)
+ version('2.7.13', '17add4bf0ad0ec2f08e0cae6d205c700')
version('2.7.12', '88d61f82e3616a4be952828b3694109d')
version('2.7.11', '6b6076ec9e93f05dd63e47eb9c15728b')
version('2.7.10', 'd7547558fd673bd9d38e2108c6b42521')
@@ -61,6 +66,10 @@ class Python(Package):
extendable = True
+ # --enable-shared is known to cause problems for some users on macOS
+ # See http://bugs.python.org/issue29846
+ variant('shared', default=sys.platform != 'darwin',
+ description='Enable shared libraries')
variant('tk', default=False, description='Provide support for Tkinter')
variant('ucs4', default=False,
description='Enable UCS4 (wide) unicode strings')
@@ -71,6 +80,8 @@ class Python(Package):
# builds then use a 32-bit type for Py_UNICODE and store Unicode data
# internally as UCS4. Note that UCS2 and UCS4 Python builds are not binary
# compatible.
+ variant('pic', default=True,
+ description='Produce position-independent code (for shared libs)')
depends_on("openssl")
depends_on("bzip2")
@@ -81,13 +92,18 @@ class Python(Package):
depends_on("tk", when="+tk")
depends_on("tcl", when="+tk")
- patch('ncurses.patch')
+ # Patch does not work for Python 3.1
+ patch('ncurses.patch', when='@:2.8,3.2:')
+
+ # Ensure that distutils chooses correct compiler option for RPATH on cray:
+ patch('cray-rpath-2.3.patch', when="@2.3:3.0.1 platform=cray")
+ patch('cray-rpath-3.1.patch', when="@3.1:3.99 platform=cray")
_DISTUTIL_VARS_TO_SAVE = ['LDSHARED']
_DISTUTIL_CACHE_FILENAME = 'sysconfig.json'
_distutil_vars = None
- @when('@2.7,3.4:')
+ @when('@2.7:2.8,3.4:')
def patch(self):
# NOTE: Python's default installation procedure makes it possible for a
# user's local configurations to change the Spack installation. In
@@ -99,12 +115,10 @@ class Python(Package):
r'\1setup.py\2 --no-user-cfg \3\6'
)
- @when('@:2.6,3.0:3.3')
- def patch(self):
- # See https://github.com/LLNL/spack/issues/1490
- pass
+ def setup_environment(self, spack_env, run_env):
+ spec = self.spec
+ prefix = self.prefix
- def install(self, spec, prefix):
# TODO: The '--no-user-cfg' option for Python installation is only in
# Python v2.7 and v3.4+ (see https://bugs.python.org/issue1180) and
# adding support for ignoring user configuration will require
@@ -114,23 +128,29 @@ class Python(Package):
'user configurations are present.').format(self.version))
# Need this to allow python build to find the Python installation.
- env['PYTHONHOME'], env['PYTHONPATH'] = prefix, prefix
- env['MACOSX_DEPLOYMENT_TARGET'] = '10.6'
+ spack_env.set('PYTHONHOME', prefix)
+ spack_env.set('PYTHONPATH', prefix)
+ spack_env.set('MACOSX_DEPLOYMENT_TARGET', platform.mac_ver()[0])
- # Rest of install is pretty standard except setup.py needs to
- # be able to read the CPPFLAGS and LDFLAGS as it scans for the
- # library and headers to build
+ def configure_args(self):
+ spec = self.spec
+
+ # setup.py needs to be able to read the CPPFLAGS and LDFLAGS
+ # as it scans for the library and headers to build
dep_pfxs = [dspec.prefix for dspec in spec.dependencies('link')]
config_args = [
- '--prefix={0}'.format(prefix),
'--with-threads',
- '--enable-shared',
'CPPFLAGS=-I{0}'.format(' -I'.join(dp.include for dp in dep_pfxs)),
'LDFLAGS=-L{0}'.format(' -L'.join(dp.lib for dp in dep_pfxs)),
]
- if spec.satisfies("platform=darwin") and ('%gcc' in spec):
+ if spec.satisfies('%gcc platform=darwin'):
config_args.append('--disable-toolbox-glue')
+ if '+shared' in spec:
+ config_args.append('--enable-shared')
+ else:
+ config_args.append('--disable-shared')
+
if '+ucs4' in spec:
if spec.satisfies('@:2.7'):
config_args.append('--enable-unicode=ucs4')
@@ -144,9 +164,22 @@ class Python(Package):
if spec.satisfies('@3:'):
config_args.append('--without-ensurepip')
- configure(*config_args)
- make()
- make('install')
+ if '+pic' in spec:
+ config_args.append('CFLAGS={0}'.format(self.compiler.pic_flag))
+
+ return config_args
+
+ @run_after('install')
+ def post_install(self):
+ spec = self.spec
+ prefix = self.prefix
+
+ self.sysconfigfilename = '_sysconfigdata.py'
+ if spec.satisfies('@3.6:'):
+ # Python 3.6.0 renamed the sys config file
+ sc = 'import sysconfig; print(sysconfig._get_sysconfigdata_name())'
+ cf = self.command('-c', sc, output=str).strip()
+ self.sysconfigfilename = '{0}.py'.format(cf)
self._save_distutil_vars(prefix)
@@ -199,7 +232,7 @@ class Python(Package):
Spack partially covers this by setting environment variables that
are also accounted for by distutils. Currently there is one more known
variable that must be set, which is LDSHARED, so the method saves its
- autogenerated value to pass it to the dependant package's setup script.
+ autogenerated value to pass it to the dependent package's setup script.
"""
self._distutil_vars = {}
@@ -207,12 +240,11 @@ class Python(Package):
input_filename = None
for filename in [join_path(lib_dir,
'python{0}'.format(self.version.up_to(2)),
- '_sysconfigdata.py')
+ self.sysconfigfilename)
for lib_dir in [prefix.lib, prefix.lib64]]:
if os.path.isfile(filename):
input_filename = filename
break
-
if not input_filename:
return
@@ -229,20 +261,20 @@ class Python(Package):
pass
if not input_dict:
- tty.warn('Failed to find \'build_time_vars\' dictionary in file '
- '\'%s\'. This might cause the extensions that are '
- 'installed with distutils to call compilers directly '
- 'avoiding Spack\'s wrappers.' % input_filename)
+ tty.warn("Failed to find 'build_time_vars' dictionary in file "
+ "'%s'. This might cause the extensions that are "
+ "installed with distutils to call compilers directly "
+ "avoiding Spack's wrappers." % input_filename)
return
for var_name in Python._DISTUTIL_VARS_TO_SAVE:
if var_name in input_dict:
self._distutil_vars[var_name] = input_dict[var_name]
else:
- tty.warn('Failed to find key \'%s\' in \'build_time_vars\' '
- 'dictionary in file \'%s\'. This might cause the '
- 'extensions that are installed with distutils to '
- 'call compilers directly avoiding Spack\'s wrappers.'
+ tty.warn("Failed to find key '%s' in 'build_time_vars' "
+ "dictionary in file '%s'. This might cause the "
+ "extensions that are installed with distutils to "
+ "call compilers directly avoiding Spack's wrappers."
% (var_name, input_filename))
if len(self._distutil_vars) > 0:
@@ -253,11 +285,11 @@ class Python(Package):
Python._DISTUTIL_CACHE_FILENAME)
with open(output_filename, 'w') as output_file:
sjson.dump(self._distutil_vars, output_file)
- except:
- tty.warn('Failed to save metadata for distutils. This might '
- 'cause the extensions that are installed with '
- 'distutils to call compilers directly avoiding '
- 'Spack\'s wrappers.')
+ except Exception:
+ tty.warn("Failed to save metadata for distutils. This might "
+ "cause the extensions that are installed with "
+ "distutils to call compilers directly avoiding "
+ "Spack's wrappers.")
# We make the cache empty if we failed to save it to file
# to provide the same behaviour as in the case when the cache
# is initialized by the method load_distutils_data().
@@ -276,7 +308,7 @@ class Python(Package):
if os.path.isfile(input_filename):
with open(input_filename) as input_file:
self._distutil_vars = sjson.load(input_file)
- except:
+ except Exception:
pass
if not self._distutil_vars:
@@ -301,7 +333,7 @@ class Python(Package):
config_dirname = 'config-{0}m'.format(
self.version.up_to(2)) if self.spec.satisfies('@3:') else 'config'
- rel_filenames = ['_sysconfigdata.py',
+ rel_filenames = [self.sysconfigfilename,
join_path(config_dirname, 'Makefile')]
abs_filenames = [join_path(dirname, filename) for dirname in
@@ -315,6 +347,144 @@ class Python(Package):
# ========================================================================
@property
+ def command(self):
+ """Returns the Python command, which may vary depending
+ on the version of Python and how it was installed.
+
+ In general, Python 2 comes with ``python`` and ``python2`` commands,
+ while Python 3 only comes with a ``python3`` command.
+
+ :returns: The Python command
+ :rtype: Executable
+ """
+ # We need to be careful here. If the user is using an externally
+ # installed python, all 3 commands could be in the same directory.
+
+ # Search for `python2` iff using Python 2
+ if (self.spec.satisfies('@:2') and
+ os.path.exists(os.path.join(self.prefix.bin, 'python2'))):
+ command = 'python2'
+ # Search for `python3` iff using Python 3
+ elif (self.spec.satisfies('@3:') and
+ os.path.exists(os.path.join(self.prefix.bin, 'python3'))):
+ command = 'python3'
+ # If neither were found, try `python`
+ elif os.path.exists(os.path.join(self.prefix.bin, 'python')):
+ command = 'python'
+ else:
+ msg = 'Unable to locate {0} command in {1}'
+ raise RuntimeError(msg.format(self.name, self.prefix.bin))
+
+ # The python command may be a symlink if it was installed
+ # with Homebrew. Since some packages try to determine the
+ # location of libraries and headers based on the path,
+ # return the realpath
+ path = os.path.realpath(os.path.join(self.prefix.bin, command))
+
+ return Executable(path)
+
+ def print_string(self, string):
+ """Returns the appropriate print string depending on the
+ version of Python.
+
+ Examples:
+
+ * Python 2
+
+ .. code-block:: python
+
+ >>> self.print_string('sys.prefix')
+ 'print sys.prefix'
+
+ * Python 3
+
+ .. code-block:: python
+
+ >>> self.print_string('sys.prefix')
+ 'print(sys.prefix)'
+ """
+ if self.spec.satisfies('@:2'):
+ return 'print {0}'.format(string)
+ else:
+ return 'print({0})'.format(string)
+
+ def get_config_var(self, key):
+ """Returns the value of a single variable. Wrapper around
+ ``distutils.sysconfig.get_config_var()``."""
+
+ cmd = 'from distutils.sysconfig import get_config_var; '
+ cmd += self.print_string("get_config_var('{0}')".format(key))
+
+ return self.command('-c', cmd, output=str).strip()
+
+ def get_config_h_filename(self):
+ """Returns the full path name of the configuration header.
+ Wrapper around ``distutils.sysconfig.get_config_h_filename()``."""
+
+ cmd = 'from distutils.sysconfig import get_config_h_filename; '
+ cmd += self.print_string('get_config_h_filename()')
+
+ return self.command('-c', cmd, output=str).strip()
+
+ @property
+ def home(self):
+ """Most of the time, ``PYTHONHOME`` is simply
+ ``spec['python'].prefix``. However, if the user is using an
+ externally installed python, it may be symlinked. For example,
+ Homebrew installs python in ``/usr/local/Cellar/python/2.7.12_2``
+ and symlinks it to ``/usr/local``. Users may not know the actual
+ installation directory and add ``/usr/local`` to their
+ ``packages.yaml`` unknowingly. Query the python executable to
+ determine exactly where it is installed."""
+
+ prefix = self.get_config_var('prefix')
+ return Prefix(prefix)
+
+ @property
+ def libs(self):
+ # Spack installs libraries into lib, except on openSUSE where it
+ # installs them into lib64. If the user is using an externally
+ # installed package, it may be in either lib or lib64, so we need
+ # to ask Python where its LIBDIR is.
+ libdir = self.get_config_var('LIBDIR')
+
+ # The system Python installation on macOS and Homebrew installations
+ # install libraries into a Frameworks directory
+ frameworkprefix = self.get_config_var('PYTHONFRAMEWORKPREFIX')
+
+ if '+shared' in self.spec:
+ ldlibrary = self.get_config_var('LDLIBRARY')
+
+ if os.path.exists(os.path.join(libdir, ldlibrary)):
+ return LibraryList(os.path.join(libdir, ldlibrary))
+ elif os.path.exists(os.path.join(frameworkprefix, ldlibrary)):
+ return LibraryList(os.path.join(frameworkprefix, ldlibrary))
+ else:
+ msg = 'Unable to locate {0} libraries in {1}'
+ raise RuntimeError(msg.format(self.name, libdir))
+ else:
+ library = self.get_config_var('LIBRARY')
+
+ if os.path.exists(os.path.join(libdir, library)):
+ return LibraryList(os.path.join(libdir, library))
+ elif os.path.exists(os.path.join(frameworkprefix, library)):
+ return LibraryList(os.path.join(frameworkprefix, library))
+ else:
+ msg = 'Unable to locate {0} libraries in {1}'
+ raise RuntimeError(msg.format(self.name, libdir))
+
+ @property
+ def headers(self):
+ config_h = self.get_config_h_filename()
+
+ if os.path.exists(config_h):
+ return HeaderList(config_h)
+ else:
+ includepy = self.get_config_var('INCLUDEPY')
+ msg = 'Unable to locate {0} headers in {1}'
+ raise RuntimeError(msg.format(self.name, includepy))
+
+ @property
def python_lib_dir(self):
return join_path('lib', 'python{0}'.format(self.version.up_to(2)))
@@ -326,33 +496,18 @@ class Python(Package):
def site_packages_dir(self):
return join_path(self.python_lib_dir, 'site-packages')
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
- """Set PYTHONPATH to include site-packages dir for the
+ @property
+ def easy_install_file(self):
+ return join_path(self.site_packages_dir, "easy-install.pth")
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ """Set PYTHONPATH to include the site-packages directory for the
extension and any other python extensions it depends on."""
- # The python executable for version 3 may be python3 or python
- # See https://github.com/LLNL/spack/pull/2173#issuecomment-257170199
- pythonex = 'python{0}'.format('3' if self.spec.satisfies('@3') else '')
- if os.path.isdir(self.prefix.bin):
- base = self.prefix.bin
- else:
- base = self.prefix
- if not os.path.isfile(os.path.join(base, pythonex)):
- if self.spec.satisfies('@3'):
- python = Executable(os.path.join(base, 'python'))
- version = python('-c', 'import sys; print(sys.version)',
- output=str)
- if version.startswith('3'):
- pythonex = 'python'
- else:
- raise RuntimeError('Cannot locate python executable')
- else:
- raise RuntimeError('Cannot locate python executable')
- python = Executable(os.path.join(base, pythonex))
- prefix = python('-c', 'import sys; print(sys.prefix)', output=str)
- spack_env.set('PYTHONHOME', prefix.strip('\n'))
+
+ spack_env.set('PYTHONHOME', self.home)
python_paths = []
- for d in extension_spec.traverse(
+ for d in dependent_spec.traverse(
deptype=('build', 'run'), deptype_query='run'):
if d.package.extends(self.spec):
python_paths.append(join_path(d.prefix,
@@ -362,41 +517,40 @@ class Python(Package):
spack_env.set('PYTHONPATH', pythonpath)
# For run time environment set only the path for
- # extension_spec and prepend it to PYTHONPATH
- if extension_spec.package.extends(self.spec):
+ # dependent_spec and prepend it to PYTHONPATH
+ if dependent_spec.package.extends(self.spec):
run_env.prepend_path('PYTHONPATH', join_path(
- extension_spec.prefix, self.site_packages_dir))
+ dependent_spec.prefix, self.site_packages_dir))
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""Called before python modules' install() methods.
In most cases, extensions will only need to have one line::
setup_py('install', '--prefix={0}'.format(prefix))"""
- python_path = join_path(
- self.spec.prefix.bin,
- 'python{0}'.format('3' if self.spec.satisfies('@3') else '')
- )
- module.python = Executable(python_path)
- module.setup_py = Executable(python_path + ' setup.py --no-user-cfg')
+ module.python = self.command
+ module.setup_py = Executable(
+ self.command.path + ' setup.py --no-user-cfg')
distutil_vars = self._load_distutil_vars()
if distutil_vars:
- for key, value in distutil_vars.iteritems():
+ for key, value in distutil_vars.items():
module.setup_py.add_default_env(key, value)
# Add variables for lib/pythonX.Y and lib/pythonX.Y/site-packages dirs.
- module.python_lib_dir = join_path(ext_spec.prefix,
+ module.python_lib_dir = join_path(dependent_spec.prefix,
self.python_lib_dir)
- module.python_include_dir = join_path(ext_spec.prefix,
+ module.python_include_dir = join_path(dependent_spec.prefix,
self.python_include_dir)
- module.site_packages_dir = join_path(ext_spec.prefix,
+ module.site_packages_dir = join_path(dependent_spec.prefix,
self.site_packages_dir)
+ self.spec.home = self.home
+
# Make the site packages directory for extensions
- if ext_spec.package.is_extension:
+ if dependent_spec.package.is_extension:
mkdirp(module.site_packages_dir)
# ========================================================================
@@ -423,20 +577,24 @@ class Python(Package):
if ext_pkg.name != 'py-pygments':
patterns.append(r'bin/pygmentize$')
if ext_pkg.name != 'py-numpy':
- patterns.append(r'bin/f2py3?$')
+ patterns.append(r'bin/f2py[0-9.]*$')
return match_predicate(ignore_arg, patterns)
- def write_easy_install_pth(self, exts):
+ def write_easy_install_pth(self, exts, prefix=None):
+ if not prefix:
+ prefix = self.prefix
+
paths = []
+ unique_paths = set()
+
for ext in sorted(exts.values()):
- ext_site_packages = join_path(ext.prefix, self.site_packages_dir)
- easy_pth = join_path(ext_site_packages, "easy-install.pth")
+ easy_pth = join_path(ext.prefix, self.easy_install_file)
if not os.path.isfile(easy_pth):
continue
- with closing(open(easy_pth)) as f:
+ with open(easy_pth) as f:
for line in f:
line = line.rstrip()
@@ -449,47 +607,54 @@ class Python(Package):
re.search(r'setuptools.*egg$', line)):
continue
- paths.append(line)
+ if line not in unique_paths:
+ unique_paths.add(line)
+ paths.append(line)
- site_packages = join_path(self.prefix, self.site_packages_dir)
- main_pth = join_path(site_packages, "easy-install.pth")
+ main_pth = join_path(prefix, self.easy_install_file)
if not paths:
if os.path.isfile(main_pth):
os.remove(main_pth)
else:
- with closing(open(main_pth, 'w')) as f:
- f.write("""
-import sys
-sys.__plen = len(sys.path)
-""")
+ with open(main_pth, 'w') as f:
+ f.write("import sys; sys.__plen = len(sys.path)\n")
for path in paths:
f.write("{0}\n".format(path))
- f.write("""
-new = sys.path[sys.__plen:]
-del sys.path[sys.__plen:]
-p = getattr(sys, '__egginsert', 0)
-sys.path[p:p] = new
-sys.__egginsert = p + len(new)
-""")
+ f.write("import sys; new=sys.path[sys.__plen:]; "
+ "del sys.path[sys.__plen:]; "
+ "p=getattr(sys,'__egginsert',0); "
+ "sys.path[p:p]=new; "
+ "sys.__egginsert = p+len(new)\n")
def activate(self, ext_pkg, **args):
ignore = self.python_ignore(ext_pkg, args)
args.update(ignore=ignore)
+ extensions_layout = args.get("extensions_layout",
+ spack.store.extensions)
+
super(Python, self).activate(ext_pkg, **args)
- exts = spack.store.layout.extension_map(self.spec)
+ exts = extensions_layout.extension_map(self.spec)
exts[ext_pkg.name] = ext_pkg.spec
- self.write_easy_install_pth(exts)
+
+ self.write_easy_install_pth(
+ exts,
+ prefix=extensions_layout.extendee_target_directory(self))
def deactivate(self, ext_pkg, **args):
args.update(ignore=self.python_ignore(ext_pkg, args))
super(Python, self).deactivate(ext_pkg, **args)
- exts = spack.store.layout.extension_map(self.spec)
+ extensions_layout = args.get("extensions_layout",
+ spack.store.extensions)
+
+ exts = extensions_layout.extension_map(self.spec)
# Make deactivate idempotent
if ext_pkg.name in exts:
del exts[ext_pkg.name]
- self.write_easy_install_pth(exts)
+ self.write_easy_install_pth(
+ exts,
+ prefix=extensions_layout.extendee_target_directory(self))
diff --git a/var/spack/repos/builtin/packages/qbank/package.py b/var/spack/repos/builtin/packages/qbank/package.py
new file mode 100644
index 0000000000..b56be62bad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qbank/package.py
@@ -0,0 +1,87 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Qbank(Package):
+ """QBank is a unique dynamic reservation-based allocation management system
+ that manages the utilization of computational resources in a multi-project
+ environment. It is used in conjunction with a resource management system
+ allowing an organization to guarantee greater fairness and enforce mission
+ priorities by associating a charge with the use of computational resources
+ and allocating resource credits which limit how much of the resources may
+ be used at what time and by whom. It tracks resource utilization and allows
+ for insightful planning."""
+
+ # QBank is so old that it no longer has (never had?) a homepage
+ # but it was developed at Pacific Northwest National Laboratory
+ # by Scott Jackson <Scott.Jackson@pnl.gov>
+ homepage = "http://www.pnnl.gov/"
+ url = "file://{0}/qbank-2.10.4.tar.gz".format(os.getcwd())
+
+ version('2.10.4', '0820587353e63d32ddb49689dd4289e7')
+
+ variant('doc', default=False, description='Build documentation')
+
+ depends_on('openssl')
+
+ depends_on('perl@5.6:5.16', type=('build', 'run'))
+ depends_on('perl-dbi@1.00:', type=('build', 'run'))
+
+ phases = ['configure', 'build', 'install']
+
+ def configure_args(self):
+ prefix = self.prefix
+
+ config_args = [
+ '--prefix', prefix,
+ '--logdir', join_path(prefix, 'var', 'log', 'qbank')
+ ]
+
+ return config_args
+
+ def configure(self, spec, prefix):
+ perl = which('perl')
+ perl('configure', *self.configure_args())
+
+ def build(self, spec, prefix):
+ make()
+
+ if '+doc' in spec:
+ make('docs')
+
+ def install(self, spec, prefix):
+ make('install')
+
+ if '+doc' in spec:
+ install_tree('doc', join_path(prefix, 'doc'))
+
+ def setup_environment(self, spack_env, run_env):
+ spec = self.spec
+ prefix = self.prefix
+
+ if '+doc' in spec:
+ run_env.prepend_path('MANPATH', join_path(prefix, 'doc'))
diff --git a/var/spack/repos/builtin/packages/qbox/package.py b/var/spack/repos/builtin/packages/qbox/package.py
new file mode 100644
index 0000000000..7945370997
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qbox/package.py
@@ -0,0 +1,93 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import shutil
+from spack import *
+
+
+class Qbox(MakefilePackage):
+ """Qbox is a C++/MPI scalable parallel implementation of first-principles
+ molecular dynamics (FPMD) based on the plane-wave, pseudopotential
+ formalism. Qbox is designed for operation on large parallel computers."""
+
+ homepage = "http://qboxcode.org/"
+ url = "http://qboxcode.org/download/qbox-1.63.7.tgz"
+
+ version('1.63.7', '6b0cf5656f816a1a59e22b268387af33')
+ version('1.63.5', 'da3161ab6a455793f2133dd03c04077c')
+ version('1.63.4', '8596f32c8fb7e7baa96571c655aaee07')
+ version('1.63.2', '55e8f13f37c8e1f43ca831791e3af1da')
+ version('1.63.0', '1436c884c553ab026b7f787307e5e6ed')
+ version('1.62.3', 'f07e038ab92b85956794e91a40346dbf')
+ version('1.60.9', '53b0df612e56bb65e8220d9d9dc8d395')
+ version('1.60.4', '060846c9fa03b1f3d7d5ce24a9491de2')
+ version('1.60.0', '3856cdc38a27dc17705844c4b9241a21')
+ version('1.58.0', 'ec0e6b79fa0ed06742212b1142e36b6a')
+ version('1.56.2', 'df7a4217d059a5d351d92e480ed14112')
+ version('1.54.4', '8f1a23af7d871317de93810b664ad3aa')
+ version('1.54.2', 'aeefee061255dbb36ca7e49378f63ad5')
+ version('1.52.3', '1862f2b2056cdf49ec4f746d45a7f1a6')
+ version('1.52.2', 'e406deb4c46176f1c15c226868bf61e2')
+ version('1.50.4', 'b06ff877257884e4fac321fb5a486266')
+ version('1.50.2', '171660b1bb5e57637f019fef055fb764')
+ version('1.50.1', '1da528b39da134f86f134432e8fada79')
+ version('1.47.0', '86f402651d440e05adc94168d6105da7')
+ version('1.45.3', '73b99a73dcbb1b5be9f66f3284750205')
+ version('1.45.1', '59e0c2583769b7586981c0d6ffa1b267')
+ version('1.45.0', '2c5bfbadfffd330c8c2fe294a10a08e4')
+ version('1.44.0', 'c46a2f0f68fe9229aa77779da188cea9')
+
+ depends_on('mpi')
+ depends_on('blas')
+ depends_on('scalapack')
+ depends_on('fftw')
+ depends_on('xerces-c')
+
+ build_directory = 'src'
+
+ def edit(self, spec, prefix):
+ with open('src/spack.mk', 'w') as mkfile:
+ mkfile.write('CXX = {0}\n'.format(spec['mpi'].mpicxx))
+ mkfile.write('LD = $(CXX)\n')
+ qbox_libs = spec['fftw'].libs + spec['xerces-c'].libs + \
+ spec['scalapack'].libs + spec['blas'].libs
+ mkfile.write('LDFLAGS = {0}\n'.format(qbox_libs.ld_flags))
+ mkfile.write('DFLAGS = {0}\n'.format(' -D'.join((
+ '',
+ '_LARGEFILE_SOURCE', 'USE_MPI', 'USE_XERCES',
+ 'XERCESC_3', 'MPICH_IGNORE_CXX_SEEK', 'SCALAPACK',
+ 'USE_FFTW3', 'FFTWMEASURE', 'FFTW3_2D', 'ADD_',
+ ))))
+ mkfile.write('CXXFLAGS = {0}\n'.format(' '.join((
+ '-g', '-O3', '$(DFLAGS)',
+ ))))
+ filter_file('$(TARGET)', 'spack', 'src/Makefile', string=True)
+
+ def install(self, spec, prefix):
+ mkdir(prefix.src)
+ install('src/qb', prefix.src)
+ shutil.move('test', prefix)
+ shutil.move('xml', prefix)
+ shutil.move('util', prefix)
diff --git a/var/spack/repos/builtin/packages/qhull/package.py b/var/spack/repos/builtin/packages/qhull/package.py
index 4456c16bd2..3e3e033025 100644
--- a/var/spack/repos/builtin/packages/qhull/package.py
+++ b/var/spack/repos/builtin/packages/qhull/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -43,4 +43,6 @@ class Qhull(CMakePackage):
version('2012.1', 'd0f978c0d8dfb2e919caefa56ea2953c',
url="http://www.qhull.org/download/qhull-2012.1-src.tgz")
+ patch('qhull-unused-intel-17.02.patch', when='@2015.2')
+
depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/qhull/qhull-unused-intel-17.02.patch b/var/spack/repos/builtin/packages/qhull/qhull-unused-intel-17.02.patch
new file mode 100644
index 0000000000..70eb3bd722
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qhull/qhull-unused-intel-17.02.patch
@@ -0,0 +1,18 @@
+--- a/src/libqhull_r/qhull_ra.h 2017-06-30 14:24:52.252635925 +0200
++++ b/src/libqhull_r/qhull_ra.h 2017-06-30 14:25:27.356635296 +0200
+@@ -101,13 +101,8 @@
+
+ */
+
+-#if defined(__cplusplus) && defined(__INTEL_COMPILER) && !defined(QHULL_OS_WIN)
+-template <typename T>
+-inline void qhullUnused(T &x) { (void)x; }
+-# define QHULL_UNUSED(x) qhullUnused(x);
+-#else
+-# define QHULL_UNUSED(x) (void)x;
+-#endif
++#define QHULL_UNUSED(x) (void)x;
++
+
+ /***** -libqhull_r.c prototypes (alphabetical after qhull) ********************/
+
diff --git a/var/spack/repos/builtin/packages/qmcpack/package.py b/var/spack/repos/builtin/packages/qmcpack/package.py
new file mode 100644
index 0000000000..360ae0a51d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qmcpack/package.py
@@ -0,0 +1,234 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Qmcpack(CMakePackage):
+ """QMCPACK, is a modern high-performance open-source Quantum Monte
+ Carlo (QMC) simulation code."""
+
+ # Package information
+ homepage = "http://www.qmcpack.org/"
+ url = "https://github.com/QMCPACK/qmcpack.git"
+
+ # This download method is untrusted, and is not recommended
+ # by the Spack manual. However, it is easier to maintain
+ # because github hashes can occasionally change
+ version('3.2.0', git=url, tag='v3.2.0')
+ version('3.1.1', git=url, tag='v3.1.1')
+ version('3.1.0', git=url, tag='v3.1.0')
+ version('3.0.0', git=url, tag='v3.0.0')
+ version('develop', git=url)
+
+ # These defaults match those in the QMCPACK manual
+ variant('debug', default=False, description='Build debug version')
+ variant('mpi', default=True, description='Build with MPI support')
+ variant('cuda', default=False,
+ description='Enable CUDA and GPU acceleration')
+ variant('complex', default=False,
+ description='Build the complex (general twist/k-point) version')
+ variant('mixed', default=False,
+ description='Build the mixed precision (mixture of single and '
+ 'double precision) version for gpu and cpu')
+ variant('soa', default=False,
+ description='Build with Structure-of-Array instead of '
+ 'Array-of-Structure code. Only for CPU code'
+ 'and only in mixed precision')
+ variant('timers', default=False,
+ description='Build with support for timers')
+ variant('da', default=False,
+ description='Install with support for basic data analysis tools')
+ variant('gui', default=False,
+ description='Install with Matplotlib (long installation time)')
+
+ # cuda variant implies mixed precision variant by default, but there is
+ # no way to express this in variant syntax, need something like
+ # variant('+mixed', default=True, when='+cuda', description="...")
+
+ # conflicts
+ conflicts('+soa', when='+cuda')
+ conflicts('^openblas+ilp64')
+ conflicts('^intel-mkl+ilp64')
+
+ # Dependencies match those in the QMCPACK manual
+ depends_on('cmake@3.4.3:', type='build')
+ depends_on('mpi', when='+mpi')
+ depends_on('libxml2')
+ depends_on('hdf5')
+ depends_on('hdf5+mpi', when='+mpi')
+ depends_on('hdf5~mpi', when='~mpi')
+ depends_on('boost')
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('fftw')
+ depends_on('fftw+mpi', when='+mpi')
+ depends_on('fftw~mpi', when='~mpi')
+ depends_on('cuda', when='+cuda')
+
+ # qmcpack data analysis tools
+ # basic command line tool based on Python and NumPy
+ # blas and lapack patching fails often and so are disabled at this time
+ depends_on('py-numpy~blas~lapack', type='run', when='+da')
+
+ # GUI is optional fpr data anlysis
+ # py-matplotlib leads to a long complex DAG for dependencies
+ depends_on('py-matplotlib', type='run', when='+gui')
+
+ # B-spline basis calculation require a patched version of
+ # Quantum Espresso 5.3.0 (see QMCPACK manual)
+ patch_url = 'https://raw.githubusercontent.com/QMCPACK/qmcpack/develop/external_codes/quantum_espresso/add_pw2qmcpack_to_espresso-5.3.0.diff'
+ patch_checksum = '0d8d7ba805313ddd4c02ee32c96d2f12e7091e9e82e22671d3ad5a24247860c4'
+ depends_on('espresso@5.3.0~elpa',
+ patches=patch(patch_url, sha256=patch_checksum),
+ when='+mpi')
+
+ depends_on('espresso@5.3.0~elpa~scalapack~mpi',
+ patches=patch(patch_url, sha256=patch_checksum),
+ when='~mpi')
+
+ def patch(self):
+ # FindLibxml2QMC.cmake doesn't check the environment by default
+ # for libxml2, so we fix that.
+ filter_file(r'$ENV{LIBXML2_HOME}/lib',
+ '${LIBXML2_HOME}/lib $ENV{LIBXML2_HOME}/lib',
+ 'CMake/FindLibxml2QMC.cmake')
+
+ def cmake_args(self):
+ args = []
+
+ if '+mpi' in self.spec:
+ mpi = self.spec['mpi']
+ args.append('-DCMAKE_C_COMPILER={0}'.format(mpi.mpicc))
+ args.append('-DCMAKE_CXX_COMPILER={0}'.format(mpi.mpicxx))
+ args.append('-DMPI_BASE_DIR:PATH={0}'.format(mpi.prefix))
+
+ # Currently FFTW_HOME and LIBXML2_HOME are used by CMake.
+ # Any CMake warnings about other variables are benign.
+ xml2_prefix = self.spec['libxml2'].prefix
+ args.append('-DLIBXML2_HOME={0}'.format(xml2_prefix))
+ args.append('-DLibxml2_INCLUDE_DIRS={0}'.format(xml2_prefix.include))
+ args.append('-DLibxml2_LIBRARY_DIRS={0}'.format(xml2_prefix.lib))
+
+ fftw_prefix = self.spec['fftw'].prefix
+ args.append('-DFFTW_HOME={0}'.format(fftw_prefix))
+ args.append('-DFFTW_INCLUDE_DIRS={0}'.format(fftw_prefix.include))
+ args.append('-DFFTW_LIBRARY_DIRS={0}'.format(fftw_prefix.lib))
+
+ args.append('-DBOOST_ROOT={0}'.format(self.spec['boost'].prefix))
+ args.append('-DHDF5_ROOT={0}'.format(self.spec['hdf5'].prefix))
+
+ # Default is MPI, serial version is convenient for cases, e.g. laptops
+ if '+mpi' in self.spec:
+ args.append('-DQMC_MPI=1')
+ elif '~mpi' in self.spec:
+ args.append('-DQMC_MPI=0')
+
+ # Default is real-valued single particle orbitals
+ if '+complex' in self.spec:
+ args.append('-DQMC_COMPLEX=1')
+ elif '~complex' in self.spec:
+ args.append('-DQMC_COMPLEX=0')
+
+ # When '-DQMC_CUDA=1', CMake automatically sets:
+ # '-DQMC_MIXED_PRECISION=1'
+ #
+ # There is a double-precision CUDA path, but it is not as well
+ # tested.
+
+ if '+cuda' in self.spec:
+ args.append('-DQMC_CUDA=1')
+ elif '~cuda' in self.spec:
+ args.append('-DQMC_CUDA=0')
+
+ # Mixed-precision versues double-precision CPU and GPU code
+ if '+mixed' in self.spec:
+ args.append('-DQMC_MIXED_PRECISION=1')
+ elif '~mixed' in self.spec:
+ args.append('-DQMC_MIXED_PRECISION=0')
+
+ # New Structure-of-Array (SOA) code, much faster than default
+ # Array-of-Structure (AOS) code.
+ # No support for local atomic orbital basis.
+ if '+soa' in self.spec:
+ args.append('-DENABLE_SOA=1')
+ elif '~soa' in self.spec:
+ args.append('-DENABLE_SOA=0')
+
+ # Manual Timers
+ if '+timers' in self.spec:
+ args.append('-DENABLE_TIMERS=1')
+ elif '~timers' in self.spec:
+ args.append('-DENABLE_TIMERS=0')
+
+ # # Proper MKL detection not working.
+ # # Include MKL flags
+ # if 'intel-mkl' in self.spec:
+ # args.append('-DBLA_VENDOR=Intel10_64lp_seq')
+ # args.append('-DQMC_INCLUDE={0}'.format(join_path(env['MKLROOT'],'include')))
+ return args
+
+ # def setup_environment(self, spack_env, run_env):
+ # # Add MKLROOT/lib to the CMAKE_PREFIX_PATH to enable CMake to find
+ # # MKL libraries. MKLROOT environment variable must be defined for
+ # # this to work properly.
+ # if 'intel-mkl' in self.spec:
+ # spack_env.append_path('CMAKE_PREFIX_PATH',format(join_path(env['MKLROOT'],'lib')))
+
+ def install(self, spec, prefix):
+ """Make the install targets"""
+
+ # QMCPACK 'make install' does nothing, which causes
+ # Spack to throw an error.
+ #
+ # This install method creates the top level directory
+ # and copies the bin subdirectory into the appropriate
+ # location. We do not copy include or lib at this time due
+ # to technical difficulties in qmcpack itself.
+
+ mkdirp(prefix)
+
+ # We assume cwd is self.stage.source_path
+
+ # install manual
+ install_tree('manual', prefix.manual)
+
+ # install nexus
+ install_tree('nexus', prefix.nexus)
+
+ with working_dir(self.build_directory):
+ mkdirp(prefix)
+
+ # install binaries
+ install_tree('bin', prefix.bin)
+
+ @run_after('build')
+ @on_package_attributes(run_tests=True)
+ def check(self):
+ """Run ctest after building binary.
+ It can take over 24 hours to run all the regression tests, here we
+ only run the unit tests and short tests."""
+ with working_dir(self.build_directory):
+ ctest('-L', 'unit')
+ ctest('-R', 'short')
diff --git a/var/spack/repos/builtin/packages/qmd-progress/package.py b/var/spack/repos/builtin/packages/qmd-progress/package.py
new file mode 100644
index 0000000000..a880609e76
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qmd-progress/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class QmdProgress(CMakePackage):
+ """PROGRESS: Parallel, Rapid O(N) and Graph-based Recursive Electronic
+ Structure Solver.
+ This library is focused on the development of general solvers that are
+ commonly used in quantum chemistry packages."""
+
+ homepage = "https://github.com/lanl/qmd-progress"
+ url = "https://github.com/lanl/qmd-progress"
+
+ version('develop', git='https://github.com/lanl/qmd-progress', branch='master')
+ version('1.0.0', git='https://github.com/lanl/qmd-progress', tag='v1.0.0')
+
+ variant('graphlib', default=False, description='Build with Metis Suppport')
+ variant('mpi', default=True, description='Build with MPI Support')
+ variant('shared', default=True, description='Build shared libs')
+
+ depends_on('bml')
+ depends_on('mpi', when='+mpi')
+ depends_on('metis', when='+graphlib')
+
+ def cmake_args(self):
+ spec = self.spec
+ args = ['-DCMAKE_Fortran_FLAGS=-ffree-line-length-none']
+ if '+shared' in spec:
+ args.append('-DBUILD_SHARED_LIBS=ON')
+ else:
+ args.append('-DBUILD_SHARED_LIBS=OFF')
+ if '+mpi' in spec:
+ args.append('-DPROGRESS_MPI=yes')
+ args.append('-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc)
+ args.append('-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx)
+ args.append('-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc)
+ else:
+ args.append('-DPROGRESS_MPI=no')
+ if '+graphlib' in spec:
+ args.append('-DPROGRESS_GRAPHLIB=yes')
+ else:
+ args.append('-DPROGRESS_GRAPHLIB=no')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/qrupdate/package.py b/var/spack/repos/builtin/packages/qrupdate/package.py
index f6b4c80cf4..0856a4efb0 100644
--- a/var/spack/repos/builtin/packages/qrupdate/package.py
+++ b/var/spack/repos/builtin/packages/qrupdate/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/qt-creator/package.py b/var/spack/repos/builtin/packages/qt-creator/package.py
index 347cf4d6ee..c7484f9643 100644
--- a/var/spack/repos/builtin/packages/qt-creator/package.py
+++ b/var/spack/repos/builtin/packages/qt-creator/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,24 +23,37 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
-class QtCreator(Package):
+class QtCreator(QMakePackage):
"""The Qt Creator IDE."""
homepage = 'https://www.qt.io/ide/'
- url = 'http://download.qt.io/official_releases/qtcreator/4.1/4.1.0/qt-creator-opensource-src-4.1.0.tar.gz'
+ url = 'http://download.qt.io/official_releases/qtcreator/4.3/4.3.1/qt-creator-opensource-src-4.3.1.tar.gz'
list_url = 'http://download.qt.io/official_releases/qtcreator/'
- list_depth = 3
+ list_depth = 2
- version('4.1.0', '657727e4209befa4bf5889dff62d9e0a')
+ version('4.4.0', 'bae2e08bb5087aba65d41eb3f9328d9a')
+ version('4.3.1', '6769ea47f287e2d9e30ff92acb899eef')
+ version('4.1.0', '657727e4209befa4bf5889dff62d9e0a')
- depends_on("qt")
+ depends_on('qt@5.6.0:+opengl')
+ # Qt Creator comes bundled with its own copy of sqlite. Qt has a build
+ # dependency on Python, which has a dependency on sqlite. If Python is
+ # built with a different version of sqlite than the bundled copy, it will
+ # cause symbol conflict. Force Spack to build with the same version of
+ # sqlite as the bundled copy.
+ depends_on('sqlite@3.8.10.2')
- def install(self, spec, prefix):
- os.environ['INSTALL_ROOT'] = self.prefix
- qmake = which('qmake')
- qmake('-r')
- make()
- make("install")
+ # Qt Creator 4.3.0+ requires a C++14 compiler
+ conflicts('%gcc@:4.8', when='@4.3.0:')
+
+ def url_for_version(self, version):
+ url = 'http://download.qt.io/official_releases/qtcreator/{0}/{1}/qt-creator-opensource-src-{1}.tar.gz'
+ return url.format(version.up_to(2), version)
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('INSTALL_ROOT', self.prefix)
+
+ def qmake_args(self):
+ return ['-r']
diff --git a/var/spack/repos/builtin/packages/qt/QTBUG-57656.patch b/var/spack/repos/builtin/packages/qt/QTBUG-57656.patch
new file mode 100644
index 0000000000..b1ba47fa00
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/QTBUG-57656.patch
@@ -0,0 +1,17 @@
+diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
+index f6cbf99..ec31e45 100644
+--- a/qtbase/mkspecs/features/qt_module.prf
++++ b/qtbase/mkspecs/features/qt_module.prf
+@@ -68,9 +68,9 @@ load(qt_build_paths)
+
+ header_module {
+ TEMPLATE = aux
+- CONFIG += \
+- force_qt \ # Needed for the headers_clean tests.
+- qt_no_install_library
++ CONFIG += force_qt # Needed for the headers_clean tests.
++ !lib_bundle: \
++ CONFIG += qt_no_install_library
+ } else {
+ TEMPLATE = lib
+ }
diff --git a/var/spack/repos/builtin/packages/qt/QTBUG-58038.patch b/var/spack/repos/builtin/packages/qt/QTBUG-58038.patch
new file mode 100644
index 0000000000..c8d71105ab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/QTBUG-58038.patch
@@ -0,0 +1,12 @@
+diff --git a/qtbase/src/3rdparty/freetype/freetype.pro b/qtbase/src/3rdparty/freetype/freetype.pro
+index 5b1eb92..390a6da 100644
+--- a/qtbase/src/3rdparty/freetype/freetype.pro
++++ b/qtbase/src/3rdparty/freetype/freetype.pro
+@@ -69,6 +69,7 @@ DEFINES += FT_CONFIG_OPTION_SYSTEM_ZLIB
+ include(../zlib_dependency.pri)
+
+ DEFINES += FT_CONFIG_OPTION_USE_PNG
++include($$OUT_PWD/../../gui/qtgui-config.pri)
+ QMAKE_USE_PRIVATE += libpng
+
+ DEFINES += TT_CONFIG_OPTION_SUBPIXEL_HINTING
diff --git a/var/spack/repos/builtin/packages/qt/package.py b/var/spack/repos/builtin/packages/qt/package.py
index 95698018fa..fe29ced8a9 100644
--- a/var/spack/repos/builtin/packages/qt/package.py
+++ b/var/spack/repos/builtin/packages/qt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import platform
import os
import sys
@@ -30,10 +31,15 @@ import sys
class Qt(Package):
"""Qt is a comprehensive cross-platform C++ application framework."""
homepage = 'http://qt.io'
+ # Alternative location 'http://download.qt.io/official_releases/qt/'
url = 'http://download.qt.io/archive/qt/5.7/5.7.0/single/qt-everywhere-opensource-src-5.7.0.tar.gz'
list_url = 'http://download.qt.io/archive/qt/'
- list_depth = 4
+ list_depth = 3
+ version('5.9.1', '77b4af61c49a09833d4df824c806acaf')
+ version('5.9.0', '9c8bc8b828c2b56721980368266df9d9')
+ version('5.8.0', 'a9f2494f75f966e2f22358ec367d8f41')
+ version('5.7.1', '031fb3fd0c3cc0f1082644492683f18d')
version('5.7.0', '9a46cce61fc64c20c3ac0a0e0fa41b42')
version('5.5.1', '59f0216819152b77536cf660b015d784')
version('5.4.2', 'fa1c4d819b401b267eb246a543a63ea5')
@@ -45,19 +51,34 @@ class Qt(Package):
# Add patch for compile issues with qt3 found with use in the
# OpenSpeedShop project
- variant('krellpatch', default=False, description="Build with openspeedshop based patch.")
- variant('mesa', default=False, description="Depend on mesa.")
- variant('gtk', default=False, description="Build with gtkplus.")
- variant('webkit', default=False, description="Build the Webkit extension")
- variant('examples', default=False, description="Build examples.")
- variant('dbus', default=False, description="Build with D-Bus support.")
- variant('phonon', default=False, description="Build with phonon support.")
+ variant('krellpatch', default=False,
+ description="Build with openspeedshop based patch.")
+ variant('gtk', default=False,
+ description="Build with gtkplus.")
+ variant('webkit', default=False,
+ description="Build the Webkit extension")
+ variant('examples', default=False,
+ description="Build examples.")
+ variant('dbus', default=False,
+ description="Build with D-Bus support.")
+ variant('phonon', default=False,
+ description="Build with phonon support.")
+ variant('opengl', default=False,
+ description="Build with OpenGL support.")
patch('qt3krell.patch', when='@3.3.8b+krellpatch')
+ # see https://bugreports.qt.io/browse/QTBUG-57656
+ patch('QTBUG-57656.patch', when='@5.8.0')
+ # see https://bugreports.qt.io/browse/QTBUG-58038
+ patch('QTBUG-58038.patch', when='@5.8.0')
+
# https://github.com/xboxdrv/xboxdrv/issues/188
patch('btn_trigger_happy.patch', when='@5.7.0:')
+ # https://github.com/spack/spack/issues/1517
+ patch('qt5-pcre.patch', when='@5:')
+
patch('qt4-corewlan-new-osx.patch', when='@4')
patch('qt4-pcre-include-conflict.patch', when='@4')
patch('qt4-el-capitan.patch', when='@4')
@@ -75,16 +96,25 @@ class Qt(Package):
depends_on("libmng")
depends_on("jpeg")
depends_on("icu4c")
+ depends_on("fontconfig")
+ depends_on("freetype")
+ # FIXME:
+ # depends_on("freetype", when='@5.8:') and '-system-freetype'
+ # -system-harfbuzz
+ # -system-pcre
+
+ # QtQml
+ depends_on("python", when='@5.7.0:', type='build')
# OpenGL hardware acceleration
- depends_on("mesa", when='@4:+mesa')
+ depends_on("mesa", when='@4:+opengl')
depends_on("libxcb", when=sys.platform != 'darwin')
+ depends_on("libx11", when=sys.platform != 'darwin')
# Webkit
depends_on("flex", when='+webkit', type='build')
depends_on("bison", when='+webkit', type='build')
depends_on("gperf", when='+webkit')
- depends_on("fontconfig", when='+webkit')
# Multimedia
# depends_on("gstreamer", when='+multimedia')
@@ -99,9 +129,9 @@ class Qt(Package):
url = self.list_url
if version >= Version('4.0'):
- url += version.up_to(2) + '/'
+ url += str(version.up_to(2)) + '/'
else:
- url += version.up_to(1) + '/'
+ url += str(version.up_to(1)) + '/'
if version >= Version('4.8'):
url += str(version) + '/'
@@ -121,17 +151,22 @@ class Qt(Package):
elif version >= Version('3'):
url += 'free-'
- url += str(version) + '.tar.gz'
+ # 5.9 only has xz format. From 5.2.1 -> 5.8.0 .gz or .xz were possible
+ if version >= Version('5.9'):
+ url += str(version) + '.tar.xz'
+ else:
+ url += str(version) + '.tar.gz'
return url
def setup_environment(self, spack_env, run_env):
+ spack_env.set('MAKEFLAGS', '-j{0}'.format(make_jobs))
run_env.set('QTDIR', self.prefix)
- def setup_dependent_environment(self, spack_env, run_env, dspec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('QTDIR', self.prefix)
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
module.qmake = Executable(join_path(self.spec.prefix.bin, 'qmake'))
def patch(self):
@@ -167,18 +202,35 @@ class Qt(Package):
'-prefix', self.prefix,
'-v',
'-opensource',
- '-opengl',
+ '-{0}opengl'.format('' if '+opengl' in self.spec else 'no-'),
'-release',
'-shared',
'-confirm-license',
'-openssl-linked',
'-optimized-qmake',
- '-no-openvg',
- '-no-pch',
- # NIS is deprecated in more recent glibc
- '-no-nis'
+ '-fontconfig',
+ '-system-freetype',
+ '-I{0}/freetype2'.format(self.spec['freetype'].prefix.include),
+ '-no-pch'
]
+ if '@:5.7.1' in self.spec:
+ config_args.append('-no-openvg')
+ else:
+ # FIXME: those could work for other versions
+ config_args.extend([
+ '-system-libpng',
+ '-system-libjpeg',
+ '-system-zlib'
+ ])
+
+ if '@:5.7.0' in self.spec:
+ config_args.extend([
+ # NIS is deprecated in more recent glibc,
+ # but qt-5.7.1 does not recognize this option
+ '-no-nis',
+ ])
+
if '~examples' in self.spec:
config_args.extend(['-nomake', 'examples'])
@@ -186,7 +238,12 @@ class Qt(Package):
config_args.append('-no-phonon')
if '+dbus' in self.spec:
+ dbus = self.spec['dbus'].prefix
config_args.append('-dbus-linked')
+ config_args.append('-I%s/dbus-1.0/include' % dbus.lib)
+ config_args.append('-I%s/dbus-1.0' % dbus.include)
+ config_args.append('-L%s' % dbus.lib)
+ config_args.append('-ldbus-1')
else:
config_args.append('-no-dbus')
@@ -199,25 +256,30 @@ class Qt(Package):
])
if '@4' in self.spec and sys.platform == 'darwin':
+ config_args.append('-cocoa')
+
+ mac_ver = tuple(platform.mac_ver()[0].split('.')[:2])
+ sdkname = 'macosx%s' % '.'.join(mac_ver)
sdkpath = which('xcrun')('--show-sdk-path',
- # XXX(macos): 10.11 SDK fails to configure
- '--sdk', 'macosx10.9',
+ '--sdk', sdkname,
output=str)
config_args.extend([
'-sdk', sdkpath.strip(),
])
use_clang_platform = False
if self.spec.compiler.name == 'clang' and \
- str(self.spec.compiler.version).endwith('-apple'):
+ str(self.spec.compiler.version).endswith('-apple'):
use_clang_platform = True
# No one uses gcc-4.2.1 anymore; this is clang.
if self.spec.compiler.name == 'gcc' and \
str(self.spec.compiler.version) == '4.2.1':
use_clang_platform = True
if use_clang_platform:
- config_args.extend([
- '-platform', 'unsupported/macx-clang',
- ])
+ config_args.append('-platform')
+ if mac_ver >= (10, 9):
+ config_args.append('unsupported/macx-clang-libc++')
+ else:
+ config_args.append('unsupported/macx-clang')
return config_args
@@ -226,8 +288,14 @@ class Qt(Package):
@when('@3')
def configure(self):
- # A user reported that this was necessary to link Qt3 on ubuntu
- os.environ['LD_LIBRARY_PATH'] = os.getcwd() + '/lib'
+ # A user reported that this was necessary to link Qt3 on ubuntu.
+ # However, if LD_LIBRARY_PATH is not set the qt build fails, check
+ # and set LD_LIBRARY_PATH if not set, update if it is set.
+ if os.environ.get('LD_LIBRARY_PATH'):
+ os.environ['LD_LIBRARY_PATH'] += os.pathsep + os.getcwd() + '/lib'
+ else:
+ os.environ['LD_LIBRARY_PATH'] = os.pathsep + os.getcwd() + '/lib'
+
configure('-prefix', self.prefix,
'-v',
'-thread',
diff --git a/var/spack/repos/builtin/packages/qt/qt5-pcre.patch b/var/spack/repos/builtin/packages/qt/qt5-pcre.patch
new file mode 100644
index 0000000000..8fdf25661c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qt/qt5-pcre.patch
@@ -0,0 +1,33 @@
+--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/runtime/RegExp.cpp 2016-09-17 20:55:14.000000000 +0000
++++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/runtime/RegExp.cpp 2017-05-17 01:55:10.000000000 +0000
+@@ -44,7 +44,7 @@
+ #include "JIT.h"
+ #include "WRECGenerator.h"
+ #endif
+-#include <pcre/pcre.h>
++#include "../pcre/pcre.h"
+
+ #endif
+
+--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/yarr/RegexJIT.cpp 2016-09-17 20:55:14.000000000 +0000
++++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/yarr/RegexJIT.cpp 2017-05-17 01:55:51.000000000 +0000
+@@ -32,7 +32,7 @@
+ #include "MacroAssembler.h"
+ #include "RegexCompiler.h"
+
+-#include "pcre.h" // temporary, remove when fallback is removed.
++#include "../pcre/pcre.h" // temporary, remove when fallback is removed.
+
+ #if ENABLE(YARR_JIT)
+
+--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/yarr/RegexJIT.h 2016-09-17 20:55:14.000000000 +0000
++++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/yarr/RegexJIT.h 2017-05-17 01:55:36.000000000 +0000
+@@ -34,7 +34,7 @@
+ #include "RegexPattern.h"
+ #include <UString.h>
+
+-#include <pcre.h>
++#include "../pcre/pcre.h"
+ struct JSRegExp; // temporary, remove when fallback is removed.
+
+ #if CPU(X86) && !COMPILER(MSVC)
diff --git a/var/spack/repos/builtin/packages/qtgraph/package.py b/var/spack/repos/builtin/packages/qtgraph/package.py
new file mode 100644
index 0000000000..742b51dd1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qtgraph/package.py
@@ -0,0 +1,73 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+##############################################################################
+# Copyright (c) 2015-2017 Krell Institute. All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+# Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Qtgraph(QMakePackage):
+ """The baseline library used in the CUDA-centric Open|SpeedShop Graphical
+ User Interface (GUI) which allows Graphviz DOT formatted data to be
+ imported into a Qt application by wrapping the Graphviz libcgraph and
+ libgvc within the Qt Graphics View Framework."""
+
+ homepage = "https://github.com/OpenSpeedShop/QtGraph"
+
+ url = "https://github.com/OpenSpeedShop/QtGraph.git"
+ version('1.0.0', branch='master',
+ git='https://github.com/OpenSpeedShop/QtGraph.git')
+
+ # qtgraph depends on these packages
+ depends_on('qt@4.8.6:')
+ depends_on('graphviz')
+
+ def setup_environment(self, spack_env, run_env):
+ """Set up the compile and runtime environments for a package."""
+ spack_env.set('GRAPHVIZ_ROOT', self.spec['graphviz'].prefix)
+ spack_env.set('INSTALL_ROOT', self.prefix)
+
+ # The implementor has set up the library and include paths in
+ # a non-conventional way. We reflect that here.
+ run_env.prepend_path(
+ 'LD_LIBRARY_PATH', join_path(
+ self.prefix.lib64,
+ '{0}'.format(self.spec['qt'].version.up_to(3))))
+
+ run_env.prepend_path('CPATH', self.prefix.include.QtGraph)
diff --git a/var/spack/repos/builtin/packages/qthreads/package.py b/var/spack/repos/builtin/packages/qthreads/package.py
index aa2f0ac67a..b06e824681 100644
--- a/var/spack/repos/builtin/packages/qthreads/package.py
+++ b/var/spack/repos/builtin/packages/qthreads/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Qthreads(Package):
+class Qthreads(AutotoolsPackage):
"""The qthreads API is designed to make using large numbers of
threads convenient and easy, and to allow portable access to
threading constructs used in massively parallel shared memory
@@ -39,6 +39,7 @@ class Qthreads(Package):
homepage = "http://www.cs.sandia.gov/qthreads/"
url = "https://github.com/Qthreads/qthreads/releases/download/1.10/qthread-1.10.tar.bz2"
+ version("1.12", "c857d175f8135eaa669f3f8fa0fb0c09")
version("1.11", "68b5f9a41cfd1a2ac112cc4db0612326")
version("1.10", "d1cf3cf3f30586921359f7840171e551")
@@ -47,10 +48,10 @@ class Qthreads(Package):
depends_on("hwloc")
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--enable-guard-pages",
- "--with-topology=hwloc",
- "--with-hwloc=%s" % spec["hwloc"].prefix)
- make()
- make("install")
+ def configure_args(self):
+ spec = self.spec
+ args = [
+ "--enable-guard-pages",
+ "--with-topology=hwloc",
+ "--with-hwloc=%s" % spec["hwloc"].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/quinoa/package.py b/var/spack/repos/builtin/packages/quinoa/package.py
new file mode 100644
index 0000000000..5a47d355d9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/quinoa/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Quinoa(CMakePackage):
+ """Quinoa is a set of computational tools that enables research and
+ numerical analysis in fluid dynamics. At this time it is a test-bed
+ to experiment with various algorithms using fully asynchronous runtime
+ systems.
+ """
+
+ homepage = "http://quinoacomputing.org"
+ url = "https://github.com/quinoacomputing/quinoa/tarball/quinoa_v0.1"
+
+ version('develop', git='https://github.com/quinoacomputing/quinoa', branch='master')
+
+ depends_on('hdf5+mpi')
+ depends_on("charm backend=mpi")
+ depends_on("trilinos+exodus")
+ depends_on("boost")
+ depends_on("hypre~internal-superlu")
+ depends_on("random123")
+ depends_on("netlib-lapack+lapacke")
+ depends_on("mad-numdiff")
+ depends_on("h5part")
+ depends_on("boostmplcartesianproduct")
+ depends_on("tut")
+ depends_on("pugixml")
+ depends_on("pstreams")
+ depends_on("pegtl")
+
+ root_cmakelists_dir = 'src'
diff --git a/var/spack/repos/builtin/packages/qwt/package.py b/var/spack/repos/builtin/packages/qwt/package.py
new file mode 100644
index 0000000000..cef42d73e1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/qwt/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Qwt(QMakePackage):
+ """The Qwt library contains GUI Components and utility classes which are
+ primarily useful for programs with a technical background. Beside a
+ framework for 2D plots it provides scales, sliders, dials, compasses,
+ thermometers, wheels and knobs to control or display values, arrays, or
+ ranges of type double.
+ """
+ homepage = "http://qwt.sourceforge.net/"
+ url = "https://sourceforge.net/projects/qwt/files/qwt/6.1.3/qwt-6.1.3.tar.bz2"
+
+ version('6.1.3', '19d1f5fa5e22054d22ee3accc37c54ba')
+ version('5.2.2', '70d77e4008a6cc86763737f0f24726ca')
+
+ depends_on('qt+opengl')
+ # Qwt 6.1.1 and older use a constant that was removed in Qt 5.4
+ # https://bugs.launchpad.net/ubuntu/+source/qwt-qt5/+bug/1485213
+ depends_on('qt@:5.3', when='@:6.1.1')
+
+ def patch(self):
+ # Subvert hardcoded prefix
+ filter_file(r'/usr/local/qwt-\$\$(QWT_)?VERSION.*',
+ self.prefix, 'qwtconfig.pri')
diff --git a/var/spack/repos/builtin/packages/r-a4/package.py b/var/spack/repos/builtin/packages/r-a4/package.py
new file mode 100644
index 0000000000..248e0c41f8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4(RPackage):
+ """Automated Affymetrix Array Analysis Umbrella Package."""
+
+ homepage = "https://www.bioconductor.org/packages/a4/"
+ url = "https://git.bioconductor.org/packages/a4"
+ list_url = homepage
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4', commit='79b5143652176787c85a0d587b3bbfad6b4a19f4')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-a4base', type=('build', 'run'))
+ depends_on('r-a4preproc', type=('build', 'run'))
+ depends_on('r-a4classif', type=('build', 'run'))
+ depends_on('r-a4core', type=('build', 'run'))
+ depends_on('r-a4reporting', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4base/package.py b/var/spack/repos/builtin/packages/r-a4base/package.py
new file mode 100644
index 0000000000..bc18cae16d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4base/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4base(RPackage):
+ """Automated Affymetrix Array Analysis."""
+
+ homepage = "https://www.bioconductor.org/packages/a4Base/"
+ url = "'https://git.bioconductor.org/packages/a4Base'"
+ list_url = homepage
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4Base', commit='f674afe424a508df2c8ee6c87a06fbd4aa410ef6')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-annaffy', type=('build', 'run'))
+ depends_on('r-mpm', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-multtest', type=('build', 'run'))
+ depends_on('r-glmnet', type=('build', 'run'))
+ depends_on('r-a4preproc', type=('build', 'run'))
+ depends_on('r-a4core', type=('build', 'run'))
+ depends_on('r-gplots', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4classif/package.py b/var/spack/repos/builtin/packages/r-a4classif/package.py
new file mode 100644
index 0000000000..18a2e1b390
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4classif/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4classif(RPackage):
+ """Automated Affymetrix Array Analysis Classification Package."""
+
+ homepage = "https://www.bioconductor.org/packages/a4Classif/"
+ url = "https://git.bioconductor.org/packages/a4Classif"
+ list_url = homepage
+
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4Classif', commit='ca06bf274c87a73fc12c29a6eea4b90289fe30b1')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-a4core', type=('build', 'run'))
+ depends_on('r-a4preproc', type=('build', 'run'))
+ depends_on('r-mlinterfaces', type=('build', 'run'))
+ depends_on('r-rocr', type=('build', 'run'))
+ depends_on('r-pamr', type=('build', 'run'))
+ depends_on('r-glmnet', type=('build', 'run'))
+ depends_on('r-varselrf', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4core/package.py b/var/spack/repos/builtin/packages/r-a4core/package.py
new file mode 100644
index 0000000000..d01514d499
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4core/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4core(RPackage):
+ """Automated Affymetrix Array Analysis Core Package."""
+
+ homepage = "https://www.bioconductor.org/packages/a4Core/"
+ url = "https://git.bioconductor.org/packages/a4Core"
+
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4Core', commit='c871faa3e1ab6be38a9ea3018816cf31b58b0ed3')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-glmnet', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4preproc/package.py b/var/spack/repos/builtin/packages/r-a4preproc/package.py
new file mode 100644
index 0000000000..3410b0640b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4preproc/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4preproc(RPackage):
+ """Automated Affymetrix Array Analysis Preprocessing Package."""
+
+ homepage = "https://www.bioconductor.org/packages/a4Preproc/"
+ url = "https://git.bioconductor.org/packages/a4Preproc"
+
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4Preproc', commit='651014b8102807aea4f1274e34e083e70b5e7ee7')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-a4reporting/package.py b/var/spack/repos/builtin/packages/r-a4reporting/package.py
new file mode 100644
index 0000000000..352d35b38a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-a4reporting/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RA4reporting(RPackage):
+ """Automated Affymetrix Array Analysis Reporting Package."""
+
+ homepage = "https://www.bioconductor.org/packages/a4Reporting"
+ url = "https://git.bioconductor.org/packages/a4Reporting"
+ list_url = homepage
+ version('1.24.0', git='https://git.bioconductor.org/packages/a4Reporting', commit='bf22c4d50daf40fc9eaf8c476385bf4a24a5b5ce')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-annaffy', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-abadata/package.py b/var/spack/repos/builtin/packages/r-abadata/package.py
new file mode 100644
index 0000000000..0d92e3e540
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-abadata/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAbadata(RPackage):
+ """Provides the data for the gene expression enrichment analysis
+ conducted in the package 'ABAEnrichment'. The package includes three
+ datasets which are derived from the Allen Brain Atlas: (1) Gene
+ expression data from Human Brain (adults) averaged across donors,
+ (2) Gene expression data from the Developing Human Brain pooled into
+ five age categories and averaged across donors and (3) a developmental
+ effect score based on the Developing Human Brain expression data.
+ All datasets are restricted to protein coding genes."""
+
+ homepage = "https://bioconductor.org/packages/ABAData/"
+ url = "https://bioconductor.org/packages/release/data/experiment/src/contrib/ABAData_1.6.0.tar.gz"
+
+ version('1.6.0', '9adfb9fbb39ad05cf72852a229476fb7')
diff --git a/var/spack/repos/builtin/packages/r-abaenrichment/package.py b/var/spack/repos/builtin/packages/r-abaenrichment/package.py
new file mode 100644
index 0000000000..c3e903e248
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-abaenrichment/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAbaenrichment(RPackage):
+ """The package ABAEnrichment is designed to test for enrichment
+ of user defined candidate genes in the set of expressed genes in
+ different human brain regions. The core function 'aba_enrich'
+ integrates the expression of the candidate gene set (averaged
+ across donors) and the structural information of the brain using
+ an ontology, both provided by the Allen Brain Atlas project.
+ 'aba_enrich' interfaces the ontology enrichment software FUNC to
+ perform the statistical analyses. Additional functions provided
+ in this package like 'get_expression' and 'plot_expression'
+ facilitate exploring the expression data. From version 1.3.5
+ onwards genomic regions can be provided as input, too; and from
+ version 1.5.9 onwards the function 'get_annotated_genes' offers
+ an easy way to obtain annotations of genes to enriched or
+ user-defined brain regions."""
+
+ homepage = "https://bioconductor.org/packages/ABAEnrichment/"
+ url = "https://git.bioconductor.org/packages/ABAEnrichment"
+
+ version('1.6.0', git='https://git.bioconductor.org/packages/ABAEnrichment', commit='d2a0467dcb7aa6e103e3b83dccd6510b0e142ac1')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.6.0')
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-gtools', type=('build', 'run'))
+ depends_on('r-abadata', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-abind/package.py b/var/spack/repos/builtin/packages/r-abind/package.py
index 81fa319a90..768e930f4b 100644
--- a/var/spack/repos/builtin/packages/r-abind/package.py
+++ b/var/spack/repos/builtin/packages/r-abind/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-absseq/package.py b/var/spack/repos/builtin/packages/r-absseq/package.py
new file mode 100644
index 0000000000..e3a094c97c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-absseq/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAbsseq(RPackage):
+ """Inferring differential expression genes by absolute counts
+ difference between two groups, utilizing Negative binomial
+ distribution and moderating fold-change according to heterogeneity
+ of dispersion across expression level."""
+
+ homepage = "https://www.bioconductor.org/packages/ABSSeq/"
+ url = "https://git.bioconductor.org/packages/ABSSeq"
+
+ version('1.22.8', git='https://git.bioconductor.org/packages/ABSSeq', commit='a67ba49bc156a4522092519644f3ec83d58ebd6a')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.22.8')
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-acde/package.py b/var/spack/repos/builtin/packages/r-acde/package.py
new file mode 100644
index 0000000000..fd8677d42e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-acde/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAcde(RPackage):
+ """This package provides a multivariate inferential analysis method
+ for detecting differentially expressed genes in gene expression data.
+ It uses artificial components, close to the data's principal
+ components but with an exact interpretation in terms of differential
+ genetic expression, to identify differentially expressed genes while
+ controlling the false discovery rate (FDR). The methods on this
+ package are described in the vignette or in the article
+ 'Multivariate Method for Inferential Identification of
+ Differentially Expressed Genes in Gene Expression Experiments' by
+ J. P. Acosta, L. Lopez-Kleine and S. Restrepo
+ (2015, pending publication)."""
+
+ homepage = "https://www.bioconductor.org/packages/acde/"
+ url = "https://www.bioconductor.org/packages/release/bioc/src/contrib/acde_1.6.0.tar.gz"
+
+ version('1.6.0', 'e92ce91f75bab3bb1d79995bec1b42cc')
+
+ depends_on('r-boot', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-acepack/package.py b/var/spack/repos/builtin/packages/r-acepack/package.py
new file mode 100644
index 0000000000..be5d20f6ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-acepack/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAcepack(RPackage):
+ """ACE and AVAS for Selecting Multiple Regression Transformations."""
+
+ homepage = "https://CRAN.R-project.org/package=acepack"
+ url = "https://cran.rstudio.com/src/contrib/acepack_1.4.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/acepack"
+
+ version('1.4.1', 'a35354655e5260afa0e1860fcc68d871')
diff --git a/var/spack/repos/builtin/packages/r-acgh/package.py b/var/spack/repos/builtin/packages/r-acgh/package.py
new file mode 100644
index 0000000000..f2e923ca3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-acgh/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAcgh(RPackage):
+ """Functions for reading aCGH data from image analysis output files
+ and clone information files, creation of aCGH S3 objects for storing
+ these data. Basic methods for accessing/replacing, subsetting,
+ printing and plotting aCGH objects."""
+
+ homepage = "https://www.bioconductor.org/packages/aCGH/"
+ url = "https://git.bioconductor.org/packages/aCGH"
+
+ version('1.54.0', git='https://git.bioconductor.org/packages/aCGH', commit='be2ed339449f55c8d218e10c435e4ad356683693')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
+ depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-multtest', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-acme/package.py b/var/spack/repos/builtin/packages/r-acme/package.py
new file mode 100644
index 0000000000..168f2044d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-acme/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAcme(RPackage):
+ """ACME (Algorithms for Calculating Microarray Enrichment) is a set
+ of tools for analysing tiling array ChIP/chip, DNAse hypersensitivity,
+ or other experiments that result in regions of the genome showing
+ "enrichment". It does not rely on a specific array technology
+ (although the array should be a "tiling" array), is very general
+ (can be applied in experiments resulting in regions of enrichment),
+ and is very insensitive to array noise or normalization methods.
+ It is also very fast and can be applied on whole-genome tiling array
+ experiments quite easily with enough memory."""
+
+ homepage = "https://www.bioconductor.org/packages/ACME/"
+ url = "https://git.bioconductor.org/packages/ACME"
+
+ version('2.32.0', git='https://git.bioconductor.org/packages/ACME', commit='76372255d7714a0c8128a11c028bf70214dac407')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.32.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ada/package.py b/var/spack/repos/builtin/packages/r-ada/package.py
new file mode 100644
index 0000000000..fbd4c0f167
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ada/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAda(RPackage):
+ """Performs discrete, real, and gentle boost under both exponential
+ and logistic loss on a given data set."""
+
+ homepage = "https://cran.r-project.org/web/packages/ada/index.html"
+ url = "https://cran.r-project.org/src/contrib/ada_2.0-5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ada"
+
+ version('2.0-5', '25ac0dc2650fba9e19f3d15c7c6721c1')
+
+ depends_on('r-rpart', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-adabag/package.py b/var/spack/repos/builtin/packages/r-adabag/package.py
new file mode 100644
index 0000000000..407d0ad1ab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-adabag/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAdabag(RPackage):
+ """Applies Multiclass AdaBoost.M1, SAMME and Bagging."""
+
+ homepage = "https://cran.r-project.org/package=adabag"
+ url = "https://cran.r-project.org/src/contrib/adabag_4.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/adabag"
+
+ version('4.1', '2e019f053d49f62ebb3b1697bbb50afa')
+
+ depends_on('r-rpart', type=('build', 'run'))
+ depends_on('r-mlbench', type=('build', 'run'))
+ depends_on('r-caret', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ade4/package.py b/var/spack/repos/builtin/packages/r-ade4/package.py
new file mode 100644
index 0000000000..39b21c3373
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ade4/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAde4(RPackage):
+ """Analysis of Ecological Data : Exploratory and Euclidean Methods in
+ Environmental Sciences"""
+
+ homepage = "http://pbil.univ-lyon1.fr/ADE-4"
+ url = "https://cran.r-project.org/src/contrib/ade4_1.7-6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ade4"
+
+ version('1.7-6', '63401ca369677538c96c3d7b75b3f4a1')
+
+ depends_on('r@2.10:')
diff --git a/var/spack/repos/builtin/packages/r-adegenet/package.py b/var/spack/repos/builtin/packages/r-adegenet/package.py
new file mode 100644
index 0000000000..64c475bc1f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-adegenet/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAdegenet(RPackage):
+ """Toolset for the exploration of genetic and genomic data. Adegenet
+ provides formal (S4) classes for storing and handling various genetic
+ data, including genetic markers with varying ploidy and hierarchical
+ population structure ('genind' class), alleles counts by populations
+ ('genpop'), and genome-wide SNP data ('genlight'). It also implements
+ original multivariate methods (DAPC, sPCA), graphics, statistical tests,
+ simulation tools, distance and similarity measures, and several spatial
+ methods. A range of both empirical and simulated datasets is also provided
+ to illustrate various methods."""
+
+ homepage = "https://github.com/thibautjombart/adegenet/wiki"
+ url = "https://cran.r-project.org/src/contrib/adegenet_2.0.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/adegenet"
+
+ version('2.0.1', 'ecb1220ce7c9affaba2987bc7f38adda')
+
+ depends_on('r@2.14:')
+ depends_on('r-ade4', type=('build', 'run'))
+ depends_on('r-igraph', type=('build', 'run'))
+ depends_on('r-ape', type=('build', 'run'))
+ depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-seqinr', type=('build', 'run'))
+ depends_on('r-spdep', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-dplyr@0.4.1:', type=('build', 'run'))
+ depends_on('r-vegan', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-adsplit/package.py b/var/spack/repos/builtin/packages/r-adsplit/package.py
new file mode 100644
index 0000000000..f862b1e581
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-adsplit/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAdsplit(RPackage):
+ """This package implements clustering of microarray gene expression
+ profiles according to functional annotations. For each term genes
+ are annotated to, splits into two subclasses are computed and a
+ significance of the supporting gene set is determined."""
+
+ homepage = "https://www.bioconductor.org/packages/adSplit/"
+ url = "https://git.bioconductor.org/packages/adSplit"
+
+ version('1.46.0', git='https://git.bioconductor.org/packages/adSplit', commit='7e81a83f34d371447f491b3a146bf6851e260c7c')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.46.0')
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-go-db', type=('build', 'run'))
+ depends_on('r-kegg-db', type=('build', 'run'))
+ depends_on('r-multtest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affxparser/package.py b/var/spack/repos/builtin/packages/r-affxparser/package.py
new file mode 100644
index 0000000000..1fd1dc5e85
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affxparser/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffxparser(RPackage):
+ """Package for parsing Affymetrix files (CDF, CEL, CHP, BPMAP, BAR).
+ It provides methods for fast and memory efficient parsing of
+ Affymetrix files using the Affymetrix' Fusion SDK. Both ASCII-
+ and binary-based files are supported. Currently, there are methods
+ for reading chip definition file (CDF) and a cell intensity file (CEL).
+ These files can be read either in full or in part. For example,
+ probe signals from a few probesets can be extracted very quickly
+ from a set of CEL files into a convenient list structure."""
+
+ homepage = "https://www.bioconductor.org/packages/affxparser/"
+ url = "https://git.bioconductor.org/packages/affxparser"
+ list_url = homepage
+
+ version('1.48.0', git='https://git.bioconductor.org/packages/affxparser', commit='2461ea88f310b59c4a9a997a4b3dadedbd65a4aa')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.48.0')
diff --git a/var/spack/repos/builtin/packages/r-affy/package.py b/var/spack/repos/builtin/packages/r-affy/package.py
new file mode 100644
index 0000000000..6be405c38b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affy/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffy(RPackage):
+ """The package contains functions for exploratory oligonucleotide array
+ analysis. The dependence on tkWidgets only concerns few convenience
+ functions. 'affy' is fully functional without it."""
+
+ homepage = "https://bioconductor.org/packages/affy/"
+ url = "https://git.bioconductor.org/packages/affy"
+ list_url = homepage
+
+ version('1.54.0', git='https://git.bioconductor.org/packages/affy', commit='a815f02906fcf491b28ed0a356d6fce95a6bd20e')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affyio', type=('build', 'run'))
+ depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
diff --git a/var/spack/repos/builtin/packages/r-affycomp/package.py b/var/spack/repos/builtin/packages/r-affycomp/package.py
new file mode 100644
index 0000000000..16593472ad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affycomp/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffycomp(RPackage):
+ """The package contains functions that can be used to compare
+ expression measures for Affymetrix Oligonucleotide Arrays."""
+
+ homepage = "https://www.bioconductor.org/packages/affycomp/"
+ url = "https://git.bioconductor.org/packages/affycomp"
+
+ version('1.52.0', git='https://git.bioconductor.org/packages/affycomp', commit='1b97a1cb21ec93bf1e5c88d5d55b988059612790')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.52.0')
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affycompatible/package.py b/var/spack/repos/builtin/packages/r-affycompatible/package.py
new file mode 100644
index 0000000000..68f6f5c450
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affycompatible/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffycompatible(RPackage):
+ """This package provides an interface to Affymetrix chip annotation
+ and sample attribute files. The package allows an easy way for users
+ to download and manage local data bases of Affynmetrix NetAffx
+ annotation files. The package also provides access to GeneChip
+ Operating System (GCOS) and GeneChip Command Console
+ (AGCC)-compatible sample annotation files."""
+
+ homepage = "https://www.bioconductor.org/packages/AffyCompatible/"
+ url = "https://git.bioconductor.org/packages/AffyCompatible"
+
+ version('1.36.0', 'https://git.bioconductor.org/packages/AffyCompatible', commit='dbbfd43a54ae1de6173336683a9461084ebf38c3')
+
+ depends_on('r@3.4.0:3.4.9', when=('@1.36.0'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affycontam/package.py b/var/spack/repos/builtin/packages/r-affycontam/package.py
new file mode 100644
index 0000000000..c2c08be3d6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affycontam/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffycontam(RPackage):
+ """structured corruption of cel file data to demonstrate QA
+ effectiveness."""
+
+ homepage = "https://www.bioconductor.org/packages/affyContam/"
+ url = "https://git.bioconductor.org/packages/affyContam"
+
+ version('1.34.0', git='https://git.bioconductor.org/packages/affyContam', commit='03529f26d059c19e069cdda358dbf7789b6d4c40')
+
+ depends_on('r@3.4.0:3.4.9', when=('@1.34.0'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-affydata', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affycoretools/package.py b/var/spack/repos/builtin/packages/r-affycoretools/package.py
new file mode 100644
index 0000000000..303b7255f8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affycoretools/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffycoretools(RPackage):
+ """Various wrapper functions that have been written to streamline
+ the more common analyses that a core Biostatistician might see."""
+
+ homepage = "https://www.bioconductor.org/packages/affycoretools/"
+ url = "https://git.bioconductor.org/packages/affycoretools"
+
+ version('1.48.0', git='https://git.bioconductor.org/packages/affycoretools', commit='e0d52e34eead1ac45d3e60c59efd940e4889eb99')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.48.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-gostats', type=('build', 'run'))
+ depends_on('r-gcrma', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-oligoclasses', type=('build', 'run'))
+ depends_on('r-reportingtools', type=('build', 'run'))
+ depends_on('r-hwriter', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affydata/package.py b/var/spack/repos/builtin/packages/r-affydata/package.py
new file mode 100644
index 0000000000..9fa647f282
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affydata/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffydata(RPackage):
+ """Example datasets of a slightly large size. They represent 'real
+ world examples', unlike the artificial examples included in the
+ package affy."""
+
+ homepage = "https://www.bioconductor.org/packages/affydata/"
+ url = "https://www.bioconductor.org/packages/release/data/experiment/src/contrib/affydata_1.24.0.tar.gz"
+
+ version('1.24.0', '0b6938685c450a56d65dd5628ebed42d')
+
+ depends_on('r@3.4.0:3.4.9', when=('@1.24.0'))
+ depends_on('r-affy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyexpress/package.py b/var/spack/repos/builtin/packages/r-affyexpress/package.py
new file mode 100644
index 0000000000..0e3a8f19d7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyexpress/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyexpress(RPackage):
+ """The purpose of this package is to provide a comprehensive and
+ easy-to-use tool for quality assessment and to identify differentially
+ expressed genes in the Affymetrix gene expression data."""
+
+ homepage = "https://www.bioconductor.org/packages/AffyExpress/"
+ url = "https://git.bioconductor.org/packages/AffyExpress"
+
+ version('1.42.0', git='https://git.bioconductor.org/packages/AffyExpress', commit='f5c5cf6173f4419e25f4aeff5e6b705a40abc371')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.42.0')
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyilm/package.py b/var/spack/repos/builtin/packages/r-affyilm/package.py
new file mode 100644
index 0000000000..7b854bc262
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyilm/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyilm(RPackage):
+ """affyILM is a preprocessing tool which estimates gene
+ expression levels for Affymetrix Gene Chips. Input from
+ physical chemistry is employed to first background subtract
+ intensities before calculating concentrations on behalf
+ of the Langmuir model."""
+
+ homepage = "https://www.bioconductor.org/packages/affyILM/"
+ url = "https://git.bioconductor.org/packages/affyILM"
+
+ version('1.28.0', git='https://git.bioconductor.org/packages/affyILM', commit='307bee3ebc599e0ea4a1d6fa8d5511ccf8bef7de')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.28.0')
+ depends_on('r-gcrma', type=('build', 'run'))
+ depends_on('r-affxparser', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyio/package.py b/var/spack/repos/builtin/packages/r-affyio/package.py
new file mode 100644
index 0000000000..ed1f9ff265
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyio/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyio(RPackage):
+ """Routines for parsing Affymetrix data files based upon file format
+ information. Primary focus is on accessing the CEL and CDF file
+ formats."""
+
+ homepage = "https://bioconductor.org/packages/affyio/"
+ url = "https://git.bioconductor.org/packages/affyio"
+ list_url = homepage
+
+ version('1.46.0', git='https://git.bioconductor.org/packages/affyio', commit='977597f2772e08273d86579486f452170566c880')
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.46.0')
diff --git a/var/spack/repos/builtin/packages/r-affypdnn/package.py b/var/spack/repos/builtin/packages/r-affypdnn/package.py
new file mode 100644
index 0000000000..6fa1136468
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affypdnn/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffypdnn(RPackage):
+ """The package contains functions to perform the PDNN method
+ described by Li Zhang et al."""
+
+ homepage = "https://www.bioconductor.org/packages/affypdnn/"
+ url = "https://git.bioconductor.org/packages/affypdnn"
+
+ version('1.50.0', git='https://git.bioconductor.org/packages/affypdnn', commit='97ff68e9f51f31333c0330435ea23b212b3ed18a')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.50.0')
+ depends_on('r-affy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyplm/package.py b/var/spack/repos/builtin/packages/r-affyplm/package.py
new file mode 100644
index 0000000000..f73b7ca19f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyplm/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyplm(RPackage):
+ """A package that extends and improves the functionality of
+ the base affy package. Routines that make heavy use of compiled
+ code for speed. Central focus is on implementation of methods
+ for fitting probe-level models and tools using these models.
+ PLM based quality assessment tools."""
+
+ homepage = "https://www.bioconductor.org/packages/affyPLM/"
+ url = "https://git.bioconductor.org/packages/affyPLM"
+
+ version('1.52.1', git='https://git.bioconductor.org/packages/affyPLM', commit='e8613a6018c4ee58045df6bf19128844f50a1f43')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.52.1')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-gcrma', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyqcreport/package.py b/var/spack/repos/builtin/packages/r-affyqcreport/package.py
new file mode 100644
index 0000000000..a7b9f2aa3c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyqcreport/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyqcreport(RPackage):
+ """This package creates a QC report for an AffyBatch object.
+ The report is intended to allow the user to quickly assess the
+ quality of a set of arrays in an AffyBatch object."""
+
+ homepage = "https://www.bioconductor.org/packages/affyQCReport/"
+ url = "https://git.bioconductor.org/packages/affyQCReport"
+
+ version('1.54.0', git='https://git.bioconductor.org/packages/affyQCReport', commit='5572e9981dc874b78b4adebf58080cac3fbb69e1')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-affyplm', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-simpleaffy', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py b/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py
new file mode 100644
index 0000000000..0a5d5f315c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-affyrnadegradation/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAffyrnadegradation(RPackage):
+ """The package helps with the assessment and correction of
+ RNA degradation effects in Affymetrix 3' expression arrays.
+ The parameter d gives a robust and accurate measure of RNA
+ integrity. The correction removes the probe positional bias,
+ and thus improves comparability of samples that are affected
+ by RNA degradation."""
+
+ homepage = "https://www.bioconductor.org/packages/AffyRNADegradation/"
+ url = "https://git.bioconductor.org/packages/AffyRNADegradation"
+
+ version('1.22.0', git='https://git.bioconductor.org/packages/AffyRNADegradation', commit='0fa78f8286494711a239ded0ba587b0de47c15d3')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.22.0')
+ depends_on('r-affy', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-agdex/package.py b/var/spack/repos/builtin/packages/r-agdex/package.py
new file mode 100644
index 0000000000..8abec46a01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-agdex/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAgdex(RPackage):
+ """A tool to evaluate agreement of differential expression
+ for cross-species genomics."""
+
+ homepage = "http://bioconductor.org/packages/AGDEX/"
+ url = "https://git.bioconductor.org/packages/AGDEX"
+
+ version('1.24.0', git='https://git.bioconductor.org/packages/AGDEX', commit='29c6bcfa6919a5c6d8bcb36b44e75145a60ce7b5')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-gseabase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-agilp/package.py b/var/spack/repos/builtin/packages/r-agilp/package.py
new file mode 100644
index 0000000000..15aba2cdce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-agilp/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAgilp(RPackage):
+ """Agilent expression array processing package."""
+
+ homepage = "http://bioconductor.org/packages/agilp/"
+ url = "https://git.bioconductor.org/packages/agilp"
+
+ version('3.8.0', git='https://git.bioconductor.org/packages/agilp', commit='c772a802af1b4c0741f2edd78053a0425160ea53')
+
+ depends_on('r@3.4.0:3.4.9', when='@3.8.0')
diff --git a/var/spack/repos/builtin/packages/r-agimicrorna/package.py b/var/spack/repos/builtin/packages/r-agimicrorna/package.py
new file mode 100644
index 0000000000..b672f784bc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-agimicrorna/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAgimicrorna(RPackage):
+ """Processing and Analysis of Agilent microRNA data."""
+
+ homepage = "https://www.bioconductor.org/packages/AgiMicroRna/"
+ url = "https://git.bioconductor.org/packages/AgiMicroRna"
+
+ version('2.26.0', git='https://git.bioconductor.org/packages/AgiMicroRna', commit='6dd74bae47986f2a23d03e3f1f9f78f701dd8053')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.26.0')
+ depends_on('r-affycoretools', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aims/package.py b/var/spack/repos/builtin/packages/r-aims/package.py
new file mode 100644
index 0000000000..4a724804ae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-aims/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAims(RPackage):
+ """This package contains the AIMS implementation. It contains
+ necessary functions to assign the five intrinsic molecular
+ subtypes (Luminal A, Luminal B, Her2-enriched, Basal-like,
+ Normal-like). Assignments could be done on individual samples
+ as well as on dataset of gene expression data."""
+
+ homepage = "http://bioconductor.org/packages/AIMS/"
+ url = "https://git.bioconductor.org/packages/AIMS"
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/AIMS', commit='86b866c20e191047492c51b43e3f73082c3f8357')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
+ depends_on('r-e1071', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aldex2/package.py b/var/spack/repos/builtin/packages/r-aldex2/package.py
new file mode 100644
index 0000000000..ab046f82ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-aldex2/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAldex2(RPackage):
+ """A differential abundance analysis for the comparison of
+ two or more conditions. For example, single-organism and
+ meta-RNA-seq high-throughput sequencing assays, or of
+ selected and unselected values from in-vitro sequence selections.
+ Uses a Dirichlet-multinomial model to infer abundance from counts,
+ that has been optimized for three or more experimental replicates.
+ Infers sampling variation and calculates the expected false
+ discovery rate given the biological and sampling variation
+ using the Wilcox rank test or Welches t-test (aldex.ttest) or
+ the glm and Kruskal Wallis tests (aldex.glm). Reports both P
+ and fdr values calculated by the Benjamini Hochberg correction."""
+
+ homepage = "http://bioconductor.org/packages/ALDEx2/"
+ url = "https://git.bioconductor.org/packages/ALDEx2"
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/ALDEx2', commit='24104824ca2402ad4f54fbf1ed9cee7fac2aaaf1')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-allelicimbalance/package.py b/var/spack/repos/builtin/packages/r-allelicimbalance/package.py
new file mode 100644
index 0000000000..f7e95e519c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-allelicimbalance/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAllelicimbalance(RPackage):
+ """Provides a framework for allelic specific expression
+ investigation using RNA-seq data."""
+
+ homepage = "http://bioconductor.org/packages/AllelicImbalance/"
+ url = "https://git.bioconductor.org/packages/AllelicImbalance"
+
+ version('1.14.0', git='https://git.bioconductor.org/packages/AllelicImbalance', commit='35958534945819baafde0e13d1eb4d05a514142c')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.14.0')
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-bsgenome', type=('build', 'run'))
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-gviz', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-latticeextra', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-seqinr', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-alpine/package.py b/var/spack/repos/builtin/packages/r-alpine/package.py
new file mode 100644
index 0000000000..9d28ec66e7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-alpine/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAlpine(RPackage):
+ """Fragment sequence bias modeling and correction for RNA-seq
+ transcript abundance estimation."""
+
+ homepage = "http://bioconductor.org/packages/alpine/"
+ url = "https://git.bioconductor.org/packages/alpine"
+
+ version('1.2.0', git='https://git.bioconductor.org/packages/alpine', commit='896872e6071769e1ac2cf786974edb8b875c45eb')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.2.0')
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-speedglm', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-rbgl', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-als/package.py b/var/spack/repos/builtin/packages/r-als/package.py
new file mode 100644
index 0000000000..12f1905614
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-als/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAls(RPackage):
+ """Alternating least squares is often used to resolve components
+ contributing to data with a bilinear structure; the basic
+ technique may be extended to alternating constrained least squares.
+ Commonly applied constraints include unimodality, non-negativity,
+ and normalization of components. Several data matrices may be
+ decomposed simultaneously by assuming that one of the two matrices
+ in the bilinear decomposition is shared between datasets."""
+
+ homepage = "https://cran.r-project.org/package=ALS"
+ url = "https://cran.rstudio.com/src/contrib/ALS_0.0.6.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/ALS"
+
+ version('0.0.6', 'b72d97911e8ab7e4f8aed1a710b3d62d')
+
+ depends_on('r-iso', type=('build', 'run'))
+ depends_on('r-nnls', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-alsace/package.py b/var/spack/repos/builtin/packages/r-alsace/package.py
new file mode 100644
index 0000000000..0573dde123
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-alsace/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAlsace(RPackage):
+ """Alternating Least Squares (or Multivariate Curve Resolution)
+ for analytical chemical data, in particular hyphenated data where
+ the first direction is a retention time axis, and the second a
+ spectral axis. Package builds on the basic als function from the
+ ALS package and adds functionality for high-throughput analysis,
+ including definition of time windows, clustering of profiles,
+ retention time correction, etcetera."""
+
+ homepage = "https://www.bioconductor.org/packages/alsace/"
+ url = "https://git.bioconductor.org/packages/alsace"
+
+ version('1.12.0', git='https://git.bioconductor.org/packages/alsace', commit='1364c65bbff05786d05c02799fd44fd57748fae3')
+
+ depends_on('r-als', type=('build', 'run'))
+ depends_on('r-ptw', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-altcdfenvs/package.py b/var/spack/repos/builtin/packages/r-altcdfenvs/package.py
new file mode 100644
index 0000000000..8f9770d68a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-altcdfenvs/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAltcdfenvs(RPackage):
+ """Convenience data structures and functions to handle cdfenvs."""
+
+ homepage = "https://www.bioconductor.org/packages/altcdfenvs/"
+ url = "https://git.bioconductor.org/packages/altcdfenvs"
+
+ version('2.38.0', git='https://git.bioconductor.org/packages/altcdfenvs', commit='2e92b9da76dbe50af4bf33c525134e29e9809291')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.38.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-makecdfenv', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-hypergraph', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ampliqueso/package.py b/var/spack/repos/builtin/packages/r-ampliqueso/package.py
new file mode 100644
index 0000000000..a703caf19e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ampliqueso/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAmpliqueso(RPackage):
+ """The package provides tools and reports for the analysis of
+ amplicon sequencing panels, such as AmpliSeq."""
+
+ homepage = "https://www.bioconductor.org/packages/ampliQueso/"
+ url = "https://git.bioconductor.org/packages/ampliQueso"
+
+ version('1.14.0', git='https://git.bioconductor.org/packages/ampliQueso', commit='9a4c26ec594171279aba8ab7fe59c4a2ea09b06b')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.14.0')
+ depends_on('r-samr', type=('build', 'run'))
+ depends_on('r-deseq', type=('build', 'run'))
+ depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
+ depends_on('r-statmod', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
+ depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-rgl', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-rnaseqmap', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-analysispageserver/package.py b/var/spack/repos/builtin/packages/r-analysispageserver/package.py
new file mode 100644
index 0000000000..4245dbed56
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-analysispageserver/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnalysispageserver(RPackage):
+ """AnalysisPageServer is a modular system that enables sharing
+ of customizable R analyses via the web."""
+
+ homepage = "https://www.bioconductor.org/packages/AnalysisPageServer/"
+ url = "https://git.bioconductor.org/packages/AnalysisPageServer"
+
+ version('1.10.0', git='https://git.bioconductor.org/packages/AnalysisPageServer', commit='876c87073be116fa15a1afdd407e21152eb80d50')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.10.0')
+ depends_on('r-log4r', type=('build', 'run'))
+ depends_on('r-rjson', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-anaquin/package.py b/var/spack/repos/builtin/packages/r-anaquin/package.py
new file mode 100644
index 0000000000..678084df09
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-anaquin/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnaquin(RPackage):
+ """The project is intended to support the use of sequins
+ (synthetic sequencing spike-in controls) owned and made available
+ by the Garvan Institute of Medical Research. The goal is to
+ provide a standard open source library for quantitative analysis,
+ modelling and visualization of spike-in controls."""
+
+ homepage = "https://www.bioconductor.org/packages/Anaquin/"
+ url = "https://git.bioconductor.org/packages/Anaquin"
+
+ version('1.2.0', git='https://git.bioconductor.org/packages/Anaquin', commit='584d1970cc9dc1d354f9a6d7c1306bd7e8567119')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.2.0')
+ depends_on('r-deseq2', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r-qvalue', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-rocr', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aneufinder/package.py b/var/spack/repos/builtin/packages/r-aneufinder/package.py
new file mode 100644
index 0000000000..6be07235a1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-aneufinder/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAneufinder(RPackage):
+ """This package implements functions for CNV calling, plotting,
+ export and analysis from whole-genome single cell sequencing data."""
+
+ homepage = "https://www.bioconductor.org/packages/AneuFinder/"
+ url = "https://git.bioconductor.org/packages/AneuFinder"
+
+ version('1.4.0', git='https://git.bioconductor.org/packages/AneuFinder', commit='e5bdf4d5e4f84ee5680986826ffed636ed853b8e')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.4.0')
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-cowplot', type=('build', 'run'))
+ depends_on('r-aneufinderdata', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-bamsignals', type=('build', 'run'))
+ depends_on('r-dnacopy', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-ggdendro', type=('build', 'run'))
+ depends_on('r-reordercluster', type=('build', 'run'))
+ depends_on('r-mclust', type=('build', 'run'))
+ depends_on('r-ggrepel', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-aneufinderdata/package.py b/var/spack/repos/builtin/packages/r-aneufinderdata/package.py
new file mode 100644
index 0000000000..a61e7cd4cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-aneufinderdata/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAneufinderdata(RPackage):
+ """Whole-genome single cell sequencing data for demonstration
+ purposes in the AneuFinder package."""
+
+ homepage = "https://www.bioconductor.org/packages/AneuFinderData/"
+ url = "https://git.bioconductor.org/packages/AneuFinderData"
+
+ version('1.4.0', git='https://git.bioconductor.org/packages/AneuFinderData', commit='55c8807ee4a37a2eb6d0defafaf843f980b22c40')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.4.0')
diff --git a/var/spack/repos/builtin/packages/r-annaffy/package.py b/var/spack/repos/builtin/packages/r-annaffy/package.py
new file mode 100644
index 0000000000..f4bfd87d3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annaffy/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+#
+from spack import *
+
+
+class RAnnaffy(RPackage):
+ """Functions for handling data from Bioconductor Affymetrix
+ annotation data packages. Produces compact HTML and text
+ reports including experimental data and URL links to many
+ online databases. Allows searching biological metadata
+ using various criteria."""
+
+ homepage = "https://www.bioconductor.org/packages/annaffy/"
+ url = "https://git.bioconductor.org/packages/annaffy"
+
+ version('1.48.0', git='https://git.bioconductor.org/packages/annaffy', commit='89a03c64ac9df5d963ed60b87893a3fffa6798a0')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.48.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-go-db', type=('build', 'run'))
+ depends_on('r-kegg-db', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotate/package.py b/var/spack/repos/builtin/packages/r-annotate/package.py
new file mode 100644
index 0000000000..7c49849f01
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annotate/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnnotate(RPackage):
+ """Using R enviroments for annotation."""
+
+ homepage = "https://www.bioconductor.org/packages/annotate/"
+ url = "https://git.bioconductor.org/packages/annotate"
+ list_url = homepage
+ version('1.54.0', git='https://git.bioconductor.org/packages/annotate', commit='860cc5b696795a31b18beaf4869f9c418d74549e')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-xtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotationdbi/package.py b/var/spack/repos/builtin/packages/r-annotationdbi/package.py
new file mode 100644
index 0000000000..2b55b95a63
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annotationdbi/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+#
+from spack import *
+
+
+class RAnnotationdbi(RPackage):
+ """Provides user interface and database connection code for
+ annotation data packages using SQLite data storage."""
+
+ homepage = "https://www.bioconductor.org/packages/AnnotationDbi/"
+ url = "https://git.bioconductor.org/packages/AnnotationDbi"
+ list_url = homepage
+ version('1.38.2', git='https://git.bioconductor.org/packages/AnnotationDbi', commit='67d46facba8c15fa5f0eb47c4e39b53dbdc67c36')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.38.2')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotationfilter/package.py b/var/spack/repos/builtin/packages/r-annotationfilter/package.py
new file mode 100644
index 0000000000..ff82f8a3c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annotationfilter/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnnotationfilter(RPackage):
+ """This package provides class and other infrastructure to implement
+ filters for manipulating Bioconductor annotation resources. The
+ filters will be used by ensembldb, Organism.dplyr, and other
+ packages."""
+
+ homepage = "https://bioconductor.org/packages/AnnotationFilter/"
+ url = "https://git.bioconductor.org/packages/AnnotationFilter"
+ list_url = homepage
+
+ version('1.0.0', git='https://git.bioconductor.org/packages/AnnotationFilter', commit='a9f79b26defe3021eea60abe16ce1fa379813ec9')
+
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-lazyeval', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.0.0')
diff --git a/var/spack/repos/builtin/packages/r-annotationforge/package.py b/var/spack/repos/builtin/packages/r-annotationforge/package.py
new file mode 100644
index 0000000000..57a69306c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annotationforge/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnnotationforge(RPackage):
+ """Provides code for generating Annotation packages and
+ their databases. Packages produced are intended to be used
+ with AnnotationDbi."""
+
+ homepage = "https://www.bioconductor.org/packages/AnnotationForge/"
+ url = "https://git.bioconductor.org/packages/AnnotationForge"
+
+ version('1.18.2', git='https://git.bioconductor.org/packages/AnnotationForge', commit='44ca3d4ef9e9825c14725ffdbbaa57ea059532e1')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.18.2')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-annotationhub/package.py b/var/spack/repos/builtin/packages/r-annotationhub/package.py
new file mode 100644
index 0000000000..ccda18a203
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-annotationhub/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RAnnotationhub(RPackage):
+ """This package provides a client for the Bioconductor AnnotationHub web
+ resource. The AnnotationHub web resource provides a central location
+ where genomic files (e.g., VCF, bed, wig) and other resources from
+ standard locations (e.g., UCSC, Ensembl) can be discovered. The
+ resource includes metadata about each resource, e.g., a textual
+ description, tags, and date of modification. The client creates and
+ manages a local cache of files retrieved by the user, helping with
+ quick and reproducible access."""
+
+ homepage = "https://bioconductor.org/packages/AnnotationHub/"
+ url = "https://git.bioconductor.org/packages/AnnotationHub"
+ list_url = homepage
+
+ version('2.8.3', git='https://git.bioconductor.org/packages/AnnotationHub', commit='8aa9c64262a8d708d2bf1c82f82dfc3d7d4ccc0c')
+
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-interactivedisplaybase', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-yaml', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.8.3')
diff --git a/var/spack/repos/builtin/packages/r-ape/package.py b/var/spack/repos/builtin/packages/r-ape/package.py
new file mode 100644
index 0000000000..17a0f0ff23
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ape/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RApe(RPackage):
+ """Functions for reading, writing, plotting, and manipulating phylogenetic
+ trees, analyses of comparative data in a phylogenetic framework, ancestral
+ character analyses, analyses of diversification and macroevolution,
+ computing distances from DNA sequences, reading and writing nucleotide
+ sequences as well as importing from BioConductor, and several tools such
+ as Mantel's test, generalized skyline plots, graphical exploration of
+ phylogenetic data (alex, trex, kronoviz), estimation of absolute
+ evolutionary rates and clock-like trees using mean path lengths and
+ penalized likelihood, dating trees with non-contemporaneous sequences,
+ translating DNA into AA sequences, and assessing sequence alignments.
+ Phylogeny estimation can be done with the NJ, BIONJ, ME, MVR, SDM, and
+ triangle methods, and several methods handling incomplete distance
+ matrices (NJ*, BIONJ*, MVR*, and the corresponding triangle method). Some
+ functions call external applications (PhyML, Clustal, T-Coffee, Muscle)
+ whose results are returned into R."""
+
+ homepage = "http://ape-package.ird.fr/"
+ url = "https://cran.r-project.org/src/contrib/ape_4.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ape"
+
+ version('4.1', 'a9ed416d6d172d4b9682556cf692d7c2')
+
+ depends_on('r@3.2:')
diff --git a/var/spack/repos/builtin/packages/r-assertthat/package.py b/var/spack/repos/builtin/packages/r-assertthat/package.py
index 97c29b4a99..37e0424d1a 100644
--- a/var/spack/repos/builtin/packages/r-assertthat/package.py
+++ b/var/spack/repos/builtin/packages/r-assertthat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,8 @@ class RAssertthat(RPackage):
producing friendly error messages so that your users know what they've done
wrong."""
- homepage = "https://cran.r-project.org/web/packages/assertthat/index.html"
+ homepage = "https://cran.r-project.org/package=assertthat"
url = "https://cran.r-project.org/src/contrib/assertthat_0.1.tar.gz"
-
+ list_url = "https://cran.r-project.org/src/contrib/Archive/assertthat"
+ version('0.2.0', '8134f0072c6a84fd738d3bfc5e7f68ef')
version('0.1', '59f9d7f7c00077ea54d763b78eeb5798')
diff --git a/var/spack/repos/builtin/packages/r-backports/package.py b/var/spack/repos/builtin/packages/r-backports/package.py
new file mode 100644
index 0000000000..02c0c6fc1b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-backports/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBackports(RPackage):
+ """Implementations of functions which have been introduced
+ in R since version 3.0.0. The backports are conditionally
+ exported which results in R resolving the function names to
+ the version shipped with R (if available) and uses the
+ implemented backports as fallback. This way package developers
+ can make use of the new functions without worrying about the
+ minimum required R version."""
+
+ homepage = "https://cran.r-project.org/package=backports"
+ url = "https://cran.r-project.org/src/contrib/backports_1.1.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/backports"
+
+ version('1.1.1', '969543a0af32dc23bba9bb37ec82008c')
+ version('1.1.0', 'b97a71b026fd7ede0e449be93d160c17')
diff --git a/var/spack/repos/builtin/packages/r-bamsignals/package.py b/var/spack/repos/builtin/packages/r-bamsignals/package.py
new file mode 100644
index 0000000000..29a7fda80d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bamsignals/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBamsignals(RPackage):
+ """This package allows to efficiently obtain count vectors
+ from indexed bam files. It counts the number of reads in given
+ genomic ranges and it computes reads profiles and coverage
+ profiles. It also handles paired-end data."""
+
+ homepage = "https://www.bioconductor.org/packages/bamsignals/"
+ url = "https://git.bioconductor.org/packages/bamsignals"
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/bamsignals', commit='b123b83e8e026c9ec91209d4498aff3e95a5de23')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r-rhtslib', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-base64/package.py b/var/spack/repos/builtin/packages/r-base64/package.py
new file mode 100644
index 0000000000..6a693e12a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-base64/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBase64(RPackage):
+ """Compatibility wrapper to replace the orphaned package by Romain
+ Francois. New applications should use the 'openssl' or 'base64enc'
+ package instead."""
+
+ homepage = "https://cran.r-project.org/package=base64"
+ url = "https://cran.rstudio.com/src/contrib/base64_2.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/base64"
+
+ version('2.0', 'f5a653842f75ad717ef6a00969868ae5')
+
+ depends_on('r-openssl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-base64enc/package.py b/var/spack/repos/builtin/packages/r-base64enc/package.py
index 698e27a29e..3566baab7a 100644
--- a/var/spack/repos/builtin/packages/r-base64enc/package.py
+++ b/var/spack/repos/builtin/packages/r-base64enc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-beanplot/package.py b/var/spack/repos/builtin/packages/r-beanplot/package.py
new file mode 100644
index 0000000000..3ddb95f59e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-beanplot/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBeanplot(RPackage):
+ """Plots univariate comparison graphs, an alternative to
+ boxplot/stripchart/violin plot."""
+
+ homepage = "https://cran.r-project.org/web/packages/beanplot/index.html"
+ url = "https://cran.rstudio.com/src/contrib/beanplot_1.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/beanplot"
+
+ version('1.2', 'b24943208a4e61ee9ee0dc152634d5da')
diff --git a/var/spack/repos/builtin/packages/r-bh/package.py b/var/spack/repos/builtin/packages/r-bh/package.py
index 683ba24d86..bcf4f600a6 100644
--- a/var/spack/repos/builtin/packages/r-bh/package.py
+++ b/var/spack/repos/builtin/packages/r-bh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -42,7 +42,7 @@ class RBh(RPackage):
'tuple' 'type_trains' 'typeof' 'unordered' 'utility' 'uuid'."""
homepage = "https://cran.r-project.org/web/packages/BH/index.html"
- url = "https://cran.r-project.org/src/contrib/BH_1.60.0-2.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/BH_1.65.0-1.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/BH"
-
+ version('1.65.0-1', '7d0402188e4af59f4103f36616d6ee55')
version('1.60.0-2', 'b50fdc85285da05add4e9da664a2d551')
diff --git a/var/spack/repos/builtin/packages/r-biobase/package.py b/var/spack/repos/builtin/packages/r-biobase/package.py
new file mode 100644
index 0000000000..035d0ddcad
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biobase/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class RBiobase(RPackage):
+ """Functions that are needed by many other packages
+ or which replace R functions."""
+
+ homepage = "https://www.bioconductor.org/packages/Biobase/"
+ url = "https://git.bioconductor.org/packages/Biobase"
+ list_url = homepage
+
+ version('2.36.2', git='https://git.bioconductor.org/packages/Biobase', commit='15f50912f3fa08ccb15c33b7baebe6b8a59ce075')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.36.2')
diff --git a/var/spack/repos/builtin/packages/r-biocgenerics/package.py b/var/spack/repos/builtin/packages/r-biocgenerics/package.py
index 654e7f1b2a..2d101b09e1 100644
--- a/var/spack/repos/builtin/packages/r-biocgenerics/package.py
+++ b/var/spack/repos/builtin/packages/r-biocgenerics/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,19 +22,16 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+#
from spack import *
class RBiocgenerics(RPackage):
"""S4 generic functions needed by many Bioconductor packages."""
+ homepage = "https://www.bioconductor.org/packages/BiocGenerics/"
+ url = "https://git.bioconductor.org/packages/BiocGenerics"
+ list_url = homepage
- homepage = 'https://bioconductor.org/packages/BiocGenerics/'
- version('3.3',
- git='https://github.com/Bioconductor-mirror/BiocGenerics.git',
- branch='release-3.3')
- version('3.2',
- git='https://github.com/Bioconductor-mirror/BiocGenerics.git',
- branch='release-3.2')
+ version('0.22.1', git='https://git.bioconductor.org/packages/BiocGenerics', commit='9c90bb8926885289d596a81ff318ee3745cbb6ad')
- depends_on('r@3.3.0:3.3.9', when='@3.3')
- depends_on('r@3.2.0:3.2.9', when='@3.2')
+ depends_on('r@3.4.0:3.4.9', when='@0.22.1')
diff --git a/var/spack/repos/builtin/packages/r-biocinstaller/package.py b/var/spack/repos/builtin/packages/r-biocinstaller/package.py
new file mode 100644
index 0000000000..b2248f87ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biocinstaller/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBiocinstaller(RPackage):
+ """This package is used to install and update Bioconductor, CRAN,
+ and (some) github packages."""
+
+ homepage = "https://bioconductor.org/packages/BiocInstaller/"
+ url = "https://git.bioconductor.org/packages/BiocInstaller"
+ list_url = homepage
+
+ version('1.26.1', git='https://git.bioconductor.org/packages/BiocInstaller', commit='9049b82a77aefa98e3f8e4dd7068317505d70e98')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.26.1')
diff --git a/var/spack/repos/builtin/packages/r-biocparallel/package.py b/var/spack/repos/builtin/packages/r-biocparallel/package.py
new file mode 100644
index 0000000000..769c8b9b16
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biocparallel/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBiocparallel(RPackage):
+ """This package provides modified versions and novel implementation of
+ functions for parallel evaluation, tailored to use with Bioconductor
+ objects."""
+
+ homepage = "https://bioconductor.org/packages/BiocParallel/"
+ url = "https://git.bioconductor.org/packages/BiocParallel"
+ list_url = homepage
+
+ version('1.10.1', git='https://git.bioconductor.org/packages/BiocParallel', commit='a76c58cf99fd585ba5ea33065649e68f1afe0a7d')
+
+ depends_on('r-futile-logger', type=('build', 'run'))
+ depends_on('r-snow', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.10.1')
diff --git a/var/spack/repos/builtin/packages/r-biomart/package.py b/var/spack/repos/builtin/packages/r-biomart/package.py
new file mode 100644
index 0000000000..d9c15151bd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biomart/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBiomart(RPackage):
+ """In recent years a wealth of biological data has become available in
+ public data repositories. Easy access to these valuable data resources
+ and firm integration with data analysis is needed for comprehensive
+ bioinformatics data analysis. biomaRt provides an interface to a growing
+ collection of databases implementing the BioMart software suite
+ (http://www.biomart.org). The package enables retrieval of large amounts
+ of data in a uniform way without the need to know the underlying
+ database schemas or write complex SQL queries. Examples of BioMart
+ databases are Ensembl, COSMIC, Uniprot, HGNC, Gramene, Wormbase and
+ dbSNP mapped to Ensembl. These major databases give biomaRt users direct
+ access to a diverse set of data and enable a wide range of powerful
+ online queries from gene annotation to database mining."""
+
+ homepage = "https://bioconductor.org/packages/biomaRt/"
+ url = "https://git.bioconductor.org/packages/biomaRt"
+
+ version('2.32.1', git='https://git.bioconductor.org/packages/biomaRt', commit='f84d74424fa599f6d08f8db4612ca09914a9087f')
+
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.32.1')
diff --git a/var/spack/repos/builtin/packages/r-biostrings/package.py b/var/spack/repos/builtin/packages/r-biostrings/package.py
new file mode 100644
index 0000000000..fee137c11b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biostrings/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBiostrings(RPackage):
+ """Memory efficient string containers, string matching algorithms, and
+ other utilities, for fast manipulation of large biological sequences
+ or sets of sequences."""
+
+ homepage = "https://bioconductor.org/packages/Biostrings/"
+ url = "https://git.bioconductor.org/packages/Biostrings"
+ list_url = homepage
+
+ version('2.44.2', git='https://git.bioconductor.org/packages/Biostrings', commit='e4a2b320fb21c5cab3ece7b3c6fecaedfb1e5200')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.44.2')
diff --git a/var/spack/repos/builtin/packages/r-biovizbase/package.py b/var/spack/repos/builtin/packages/r-biovizbase/package.py
new file mode 100644
index 0000000000..ee87f87625
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-biovizbase/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBiovizbase(RPackage):
+ """The biovizBase package is designed to provide a set of
+ utilities, color schemes and conventions for genomic data.
+ It serves as the base for various high-level packages for
+ biological data visualization. This saves development effort
+ and encourages consistency."""
+
+ homepage = "http://bioconductor.org/packages/biovizBase/"
+ url = "https://git.bioconductor.org/packages/biovizBase"
+
+ version('1.24.0', git='https://git.bioconductor.org/packages/biovizBase', commit='ae9cd2ff665b74a8f45ed9c1d17fc0a778b4af6c')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.24.0')
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-hmisc', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-dichromat', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-ensembldb', type=('build', 'run'))
+ depends_on('r-annotationfilter', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bit/package.py b/var/spack/repos/builtin/packages/r-bit/package.py
new file mode 100644
index 0000000000..aed6d724a6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bit/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBit(RPackage):
+ """ A class for vectors of 1-bit booleans."""
+
+ homepage = "https://cran.rstudio.com/web/packages/bit/index.html"
+ url = "https://cran.rstudio.com/src/contrib/bit_1.1-12.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/bit"
+ version('1.1-12', 'c4473017beb93f151a8e672e4d5747af')
diff --git a/var/spack/repos/builtin/packages/r-bit64/package.py b/var/spack/repos/builtin/packages/r-bit64/package.py
new file mode 100644
index 0000000000..85c631e1ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bit64/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBit64(RPackage):
+ """Package 'bit64' provides serializable S3 atomic 64bit (signed)
+ integers. These are useful for handling database keys and exact
+ counting in +-2^63. WARNING: do not use them as replacement for 32bit
+ integers, integer64 are not supported for subscripting by R-core and
+ they have different semantics when combined with double, e.g.
+ integer64 + double => integer64. Class integer64 can be used in vectors,
+ matrices, arrays and data.frames. Methods are available for coercion
+ from and to logicals, integers, doubles, characters and factors
+ as well as many elementwise and summary functions. Many fast
+ algorithmic operations such as 'match' and 'order' support
+ inter- active data exploration
+ and manipulation and optionally leverage caching."""
+
+ homepage = "https://cran.rstudio.com/web/packages/bit64/index.html"
+ url = "https://cran.rstudio.com/src/contrib/bit64_0.9-7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/bit64"
+ version('0.9-7', 'ac4bc39827338c552d329d3d4d2339c2')
+
+ depends_on('r-bit', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-bitops/package.py b/var/spack/repos/builtin/packages/r-bitops/package.py
index 67bb0fe777..ec0b45f454 100644
--- a/var/spack/repos/builtin/packages/r-bitops/package.py
+++ b/var/spack/repos/builtin/packages/r-bitops/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-blob/package.py b/var/spack/repos/builtin/packages/r-blob/package.py
new file mode 100644
index 0000000000..b77399f775
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-blob/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBlob(RPackage):
+ """R's raw vector is useful for storing a single binary object.
+ What if you want to put a vector of them in a data frame? The blob
+ package provides the blob object, a list of raw vectors, suitable
+ for use as a column in data frame."""
+
+ homepage = "https://cran.rstudio.com/web/packages/blob/index.html"
+ url = "https://cran.rstudio.com/src/contrib/blob_1.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/blob"
+ version('1.1.0', '1c729aca36fd5193d81b1cd5ed9d8a00')
+
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-boot/package.py b/var/spack/repos/builtin/packages/r-boot/package.py
index 1361920673..2e2802893d 100644
--- a/var/spack/repos/builtin/packages/r-boot/package.py
+++ b/var/spack/repos/builtin/packages/r-boot/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,4 +34,5 @@ class RBoot(RPackage):
url = "https://cran.r-project.org/src/contrib/boot_1.3-18.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/boot"
+ version('1.3-20', 'bb879fb4204a4f94ab82c98dd1ad5eca')
version('1.3-18', '711dd58af14e1027eb8377d9202e9b6f')
diff --git a/var/spack/repos/builtin/packages/r-brew/package.py b/var/spack/repos/builtin/packages/r-brew/package.py
index 558d830a2b..e3cf99a095 100644
--- a/var/spack/repos/builtin/packages/r-brew/package.py
+++ b/var/spack/repos/builtin/packages/r-brew/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-bsgenome/package.py b/var/spack/repos/builtin/packages/r-bsgenome/package.py
new file mode 100644
index 0000000000..3758992266
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bsgenome/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBsgenome(RPackage):
+ """Infrastructure shared by all the Biostrings-based genome data
+ packages."""
+
+ homepage = "https://www.bioconductor.org/packages/BSgenome/"
+ url = "https://git.bioconductor.org/packages/BSgenome"
+ list_url = homepage
+
+ version('1.44.2', git='https://git.bioconductor.org/packages/BSgenome', commit='105b00588a758d5ec7c347a7dff2756aea4516a0')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.44.2')
diff --git a/var/spack/repos/builtin/packages/r-bumphunter/package.py b/var/spack/repos/builtin/packages/r-bumphunter/package.py
new file mode 100644
index 0000000000..bc36a53485
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-bumphunter/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RBumphunter(RPackage):
+ """Tools for finding bumps in genomic data"""
+
+ homepage = "http://bioconductor.org/packages/bumphunter/"
+ url = "https://git.bioconductor.org/packages/bumphunter"
+ list_url = homepage
+
+ version('1.16.0', git='https://git.bioconductor.org/packages/bumphunter', commit='1c3ab4d1fd2d75b1586ccef12665960b3602080a')
+
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-iterators', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-dorng', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.16.0')
diff --git a/var/spack/repos/builtin/packages/r-c50/package.py b/var/spack/repos/builtin/packages/r-c50/package.py
index 571f8f461b..e5ee2d285a 100644
--- a/var/spack/repos/builtin/packages/r-c50/package.py
+++ b/var/spack/repos/builtin/packages/r-c50/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,4 +35,4 @@ class RC50(RPackage):
version('0.1.0-24', '42631e65c5c579532cc6edf5ea175949')
- depends_on('r-partykit', type=('build','run'))
+ depends_on('r-partykit', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-callr/package.py b/var/spack/repos/builtin/packages/r-callr/package.py
new file mode 100644
index 0000000000..f69ed861ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-callr/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCallr(RPackage):
+ """It is sometimes useful to perform a computation in a separate R
+ process, without affecting the current R process at all. This packages
+ does exactly that."""
+
+ homepage = "https://github.com/MangoTheCat/callr"
+ url = "https://cran.r-project.org/src/contrib/callr_1.0.0.tar.gz"
+
+ version('1.0.0', 'd9af99bb95696310fa1e5d1cb7166c91')
diff --git a/var/spack/repos/builtin/packages/r-car/package.py b/var/spack/repos/builtin/packages/r-car/package.py
index 80a0206a8a..aa5a776e37 100644
--- a/var/spack/repos/builtin/packages/r-car/package.py
+++ b/var/spack/repos/builtin/packages/r-car/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,13 +30,14 @@ class RCar(RPackage):
Companion to Applied Regression, Second Edition, Sage, 2011."""
homepage = "https://r-forge.r-project.org/projects/car/"
- url = "https://cran.r-project.org/src/contrib/car_2.1-2.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/car_2.1-4.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/car"
+ version('2.1-4', 'a66c307e8ccf0c336ed197c0f1799565')
version('2.1-2', '0f78ad74ef7130126d319acec23951a0')
- depends_on('r-mass', type=('build','run'))
- depends_on('r-mgcv', type=('build','run'))
- depends_on('r-nnet', type=('build','run'))
- depends_on('r-pbkrtest', type=('build','run'))
- depends_on('r-quantreg', type=('build','run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-mgcv', type=('build', 'run'))
+ depends_on('r-nnet', type=('build', 'run'))
+ depends_on('r-pbkrtest', type=('build', 'run'))
+ depends_on('r-quantreg', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-caret/package.py b/var/spack/repos/builtin/packages/r-caret/package.py
index d795cfa204..89dcc691ea 100644
--- a/var/spack/repos/builtin/packages/r-caret/package.py
+++ b/var/spack/repos/builtin/packages/r-caret/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,15 +30,19 @@ class RCaret(RPackage):
models."""
homepage = "https://github.com/topepo/caret/"
- url = "https://cran.r-project.org/src/contrib/caret_6.0-70.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/caret_6.0-73.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/caret"
+ version('6.0-73', 'ca869e3357b5358f028fb926eb62eb70')
version('6.0-70', '202d7abb6a679af716ea69fb2573f108')
- depends_on('r-lattice', type=('build','run'))
- depends_on('r-ggplot2', type=('build','run'))
- depends_on('r-car', type=('build','run'))
- depends_on('r-foreach', type=('build','run'))
- depends_on('r-plyr', type=('build','run'))
- depends_on('r-nlme', type=('build','run'))
- depends_on('r-reshape2', type=('build','run'))
+ depends_on('r@2.10:')
+
+ depends_on('r-lattice@0.20:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-car', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-modelmetrics@1.1.0:', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-category/package.py b/var/spack/repos/builtin/packages/r-category/package.py
new file mode 100644
index 0000000000..026f0c5987
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-category/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCategory(RPackage):
+ """A collection of tools for performing category analysis."""
+
+ homepage = "https://www.bioconductor.org/packages/Category/"
+ url = "https://git.bioconductor.org/packages/Category"
+
+ version('2.42.1', git='https://git.bioconductor.org/packages/Category', commit='382c817a2371671a72f8f949dfb4050361ebabcd')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.42.1')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-rbgl', type=('build', 'run'))
+ depends_on('r-gseabase', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-catools/package.py b/var/spack/repos/builtin/packages/r-catools/package.py
index 7b82a19c01..2253b1e0ec 100644
--- a/var/spack/repos/builtin/packages/r-catools/package.py
+++ b/var/spack/repos/builtin/packages/r-catools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,4 +38,4 @@ class RCatools(RPackage):
version('1.17.1', '5c872bbc78b177b306f36709deb44498')
- depends_on('r-bitops', type=('build','run'))
+ depends_on('r-bitops', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cellranger/package.py b/var/spack/repos/builtin/packages/r-cellranger/package.py
new file mode 100644
index 0000000000..5b57c221f9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-cellranger/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCellranger(RPackage):
+ """Helper functions to work with spreadsheets and the "A1:D10"
+ style of cell range specification."""
+
+ homepage = "https://cran.r-project.org/package=cellranger"
+ url = "https://cran.r-project.org/src/contrib/cellranger_1.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/cellranger"
+
+ version('1.1.0', '1abcfea6af5ab2e277cb99e86880456f')
+
+ depends_on('r-rematch', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-checkmate/package.py b/var/spack/repos/builtin/packages/r-checkmate/package.py
new file mode 100644
index 0000000000..278937335a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-checkmate/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCheckmate(RPackage):
+ """Tests and assertions to perform frequent argument checks.
+ A substantial part of the package was written in C to
+ minimize any worries about execution time overhead."""
+
+ homepage = "https://cran.r-project.org/package=checkmate"
+ url = "https://cran.rstudio.com/src/contrib/checkmate_1.8.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/checkmate"
+
+ version('1.8.4', '00bd2c464386614da208f82c4b21910b')
+
+ depends_on('r-backports', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-checkpoint/package.py b/var/spack/repos/builtin/packages/r-checkpoint/package.py
new file mode 100644
index 0000000000..6d3d9cc830
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-checkpoint/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCheckpoint(RPackage):
+ """The goal of checkpoint is to solve the problem of package
+ reproducibility in R. Specifically, checkpoint allows you to
+ install packages as they existed on CRAN on a specific snapshot
+ date as if you had a CRAN time machine."""
+
+ homepage = "https://cran.r-project.org/package=checkpoint"
+ url = "https://cran.r-project.org/src/contrib/checkpoint_0.3.18.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/checkpoint"
+
+ version('0.3.18', '021d7faeb72c36167951e103b2b065ea')
+ version('0.3.15', 'a4aa8320338f1434a330d984e97981ea')
+
+ depends_on('r@3.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-chron/package.py b/var/spack/repos/builtin/packages/r-chron/package.py
index e1731424b3..0a2566c0b1 100644
--- a/var/spack/repos/builtin/packages/r-chron/package.py
+++ b/var/spack/repos/builtin/packages/r-chron/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-circlize/package.py b/var/spack/repos/builtin/packages/r-circlize/package.py
new file mode 100644
index 0000000000..628c042d7d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-circlize/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCirclize(RPackage):
+ """Circular layout is an efficient way for the visualization of huge
+ amounts of information. Here this package provides an implementation
+ of circular layout generation in R as well as an enhancement of
+ available software. The flexibility of the package is based on the
+ usage of low-level graphics functions such that self-defined
+ high-level graphics can be easily implemented by users for specific
+ purposes. Together with the seamless connection between the powerful
+ computational and visual environment in R, it gives users more
+ convenience and freedom to design figures for better understanding
+ complex patterns behind multiple dimensional data."""
+
+ homepage = "https://cran.r-project.org/package=circlize"
+ url = "https://cran.r-project.org/src/contrib/circlize_0.4.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/circlize"
+
+ version('0.4.1', '6818830654f485abbdc8c74ec9087377')
+ version('0.4.0', '0dbf1b481930a759d6f413d17f8ae1c4')
+
+ depends_on('r-globaloptions', type=('build', 'run'))
+ depends_on('r-shape', type=('build', 'run'))
+ depends_on('r-colorspace', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-class/package.py b/var/spack/repos/builtin/packages/r-class/package.py
index de81e7588e..3b35634302 100644
--- a/var/spack/repos/builtin/packages/r-class/package.py
+++ b/var/spack/repos/builtin/packages/r-class/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,4 +35,4 @@ class RClass(RPackage):
version('7.3-14', '6a21dd206fe4ea29c55faeb65fb2b71e')
- depends_on('r-mass', type=('build','run'))
+ depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-clipr/package.py b/var/spack/repos/builtin/packages/r-clipr/package.py
new file mode 100644
index 0000000000..a5b6ce9993
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-clipr/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RClipr(RPackage):
+ """Simple utility functions to read from and write to the Windows, OS X,
+ and X11 clipboards."""
+
+ homepage = "https://github.com/mdlincoln/clipr"
+ url = "https://cran.r-project.org/src/contrib/clipr_0.4.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/clipr"
+
+ version('0.4.0', '4012a31eb3b7a36bd3bac00f916e56a7')
+
+ depends_on('r-rstudioapi', type=('build', 'run'))
+ depends_on('r-testthat', type=('build', 'run'))
+ depends_on('xclip')
diff --git a/var/spack/repos/builtin/packages/r-cluster/package.py b/var/spack/repos/builtin/packages/r-cluster/package.py
index 29e16c2271..e59a486434 100644
--- a/var/spack/repos/builtin/packages/r-cluster/package.py
+++ b/var/spack/repos/builtin/packages/r-cluster/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,9 @@ class RCluster(RPackage):
(1990) "Finding Groups in Data"."""
homepage = "https://cran.r-project.org/web/packages/cluster/index.html"
- url = "https://cran.r-project.org/src/contrib/cluster_2.0.4.tar.gz"
+ url = "https://cran.rstudio.com/src/contrib/cluster_2.0.6.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/cluster"
+ version('2.0.6', 'e7d0660b05c65f4d886ebf7f046939ab')
+ version('2.0.5', '7330f209ebce960bdee1a6d6679cb85a')
version('2.0.4', 'bb4deceaafb1c42bb1278d5d0dc11e59')
diff --git a/var/spack/repos/builtin/packages/r-coda/package.py b/var/spack/repos/builtin/packages/r-coda/package.py
new file mode 100644
index 0000000000..82c1887a32
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-coda/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCoda(RPackage):
+ """Provides functions for summarizing and plotting the output from
+ Markov Chain Monte Carlo (MCMC) simulations, as well as
+ diagnostic tests of convergence to the equilibrium distribution
+ of the Markov chain."""
+
+ homepage = "https://cran.r-project.org/web/packages/coda/index.html"
+ url = "https://cran.r-project.org/src/contrib/coda_0.19-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/coda"
+
+ version('0.19-1', '0d2aca6a5a3bdae9542708817c1ec001')
+
+ depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-codetools/package.py b/var/spack/repos/builtin/packages/r-codetools/package.py
index 39186bf54a..ce78dd590b 100644
--- a/var/spack/repos/builtin/packages/r-codetools/package.py
+++ b/var/spack/repos/builtin/packages/r-codetools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,8 @@ class RCodetools(RPackage):
"""Code analysis tools for R."""
homepage = "https://cran.r-project.org/web/packages/codetools/index.html"
- url = "https://cran.r-project.org/src/contrib/codetools_0.2-14.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/codetools_0.2-15.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/codetools"
+ version('0.2-15', '37419cbc3de81984cf6d9b207d4f62d4')
version('0.2-14', '7ec41d4f8bd6ba85facc8c5e6adc1f4d')
diff --git a/var/spack/repos/builtin/packages/r-coin/package.py b/var/spack/repos/builtin/packages/r-coin/package.py
new file mode 100644
index 0000000000..8c7a3a348e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-coin/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCoin(RPackage):
+ """Conditional inference procedures for the general independence problem
+ including two-sample, K-sample (non-parametric ANOVA), correlation,
+ censored, ordered and multivariate problems."""
+
+ homepage = "https://cran.r-project.org/package=coin"
+ url = "https://cran.r-project.org/src/contrib/coin_1.1-3.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/coin"
+
+ version('1.1-3', '97d3d21f1e4a5762e36dd718dd2d0661')
+
+ depends_on('r@2.14.0:')
+
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-modeltools@0.2-9:', type=('build', 'run'))
+ depends_on('r-mvtnorm@1.0-5:', type=('build', 'run'))
+ depends_on('r-multcomp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-colorspace/package.py b/var/spack/repos/builtin/packages/r-colorspace/package.py
index b7561ea360..70e3ea63a7 100644
--- a/var/spack/repos/builtin/packages/r-colorspace/package.py
+++ b/var/spack/repos/builtin/packages/r-colorspace/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,8 @@ class RColorspace(RPackage):
are provided."""
homepage = "https://cran.r-project.org/web/packages/colorspace/index.html"
- url = "https://cran.r-project.org/src/contrib/colorspace_1.2-6.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/colorspace_1.3-2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/colorspace"
+ version('1.3-2', '63000bab81d995ff167df76fb97b2984')
version('1.2-6', 'a30191e9caf66f77ff4e99c062e9dce1')
diff --git a/var/spack/repos/builtin/packages/r-complexheatmap/package.py b/var/spack/repos/builtin/packages/r-complexheatmap/package.py
new file mode 100644
index 0000000000..04c88f8ef8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-complexheatmap/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RComplexheatmap(RPackage):
+ """Complex heatmaps are efficient to visualize associations between
+ different sources of data sets and reveal potential structures. Here
+ the ComplexHeatmap package provides a highly flexible way to arrange
+ multiple heatmaps and supports self-defined annotation graphics."""
+
+ homepage = "https://bioconductor.org/packages/ComplexHeatmap/"
+ url = "https://git.bioconductor.org/packages/ComplexHeatmap"
+ list_url = homepage
+
+ version('1.14.0', git='https://git.bioconductor.org/packages/ComplexHeatmap', commit='0acd8974fb5cedde8cd96efea6dfa39324d25b34')
+
+ depends_on('r-circlize', type=('build', 'run'))
+ depends_on('r-getoptlong', type=('build', 'run'))
+ depends_on('r-colorspace', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-dendextend', type=('build', 'run'))
+ depends_on('r-globaloptions', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.14.0')
diff --git a/var/spack/repos/builtin/packages/r-corpcor/package.py b/var/spack/repos/builtin/packages/r-corpcor/package.py
new file mode 100644
index 0000000000..b07e333ad7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-corpcor/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCorpcor(RPackage):
+ """Efficient Estimation of Covariance and (Partial) Correlation"""
+
+ homepage = "https://cran.r-project.org/package=corpcor"
+ url = "https://cran.r-project.org/src/contrib/corpcor_1.6.9.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/corpcor"
+
+ version('1.6.9', '7f447d9f389e5d7dedb5fe5baedca925')
diff --git a/var/spack/repos/builtin/packages/r-corrplot/package.py b/var/spack/repos/builtin/packages/r-corrplot/package.py
new file mode 100644
index 0000000000..52408e5ae7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-corrplot/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCorrplot(RPackage):
+ """A graphical display of a correlation matrix or general matrix.
+ It also contains some algorithms to do matrix reordering."""
+
+ homepage = "https://cran.r-project.org/package=corrplot"
+ url = "https://cran.r-project.org/src/contrib/corrplot_0.77.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/corrplot"
+
+ version('0.77', '2a5d54fd5c65618b9afba1a32f6b4542')
diff --git a/var/spack/repos/builtin/packages/r-covr/package.py b/var/spack/repos/builtin/packages/r-covr/package.py
new file mode 100644
index 0000000000..5e3d8fff21
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-covr/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCovr(RPackage):
+ """Track and report code coverage for your package and (optionally)
+ upload the results to a coverage service like 'Codecov'
+ <http://codecov.io> or 'Coveralls' <http://coveralls.io>. Code
+ coverage is a measure of the amount of code being exercised by a
+ set of tests. It is an indirect measure of test quality and
+ completeness. This package is compatible with any testing methodology
+ or framework and tracks coverage of both R code and compiled
+ C/C++/FORTRAN code."""
+
+ homepage = "https://cran.r-project.org/package=covr"
+ url = "https://cran.r-project.org/src/contrib/covr_3.0.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/covr"
+
+ version('3.0.1', 'f88383f751fe5aa830a2b2e5c14aa66a')
+
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-rex', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-crayon', type=('build', 'run'))
+ depends_on('r-withr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-cowplot/package.py b/var/spack/repos/builtin/packages/r-cowplot/package.py
new file mode 100644
index 0000000000..cb49c52acb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-cowplot/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCowplot(RPackage):
+ """Some helpful extensions and modifications to the 'ggplot2'
+ package. In particular, this package makes it easy to combine
+ multiple 'ggplot2' plots into one and label them with letters,
+ e.g. A, B, C, etc., as is often required for scientific
+ publications. The package also provides a streamlined and clean
+ theme that is used in the Wilke lab, hence the package name,
+ which stands for Claus O. Wilke's plot package."""
+
+ homepage = "https://cran.r-project.org/package=cowplot"
+ url = "https://cran.rstudio.com/src/contrib/cowplot_0.8.0.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/cowplot"
+
+ version('0.8.0', 'bcb19c72734d8eb5d73db393c1235c3d')
+
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-crayon/package.py b/var/spack/repos/builtin/packages/r-crayon/package.py
index 2002ea5419..de1140df3b 100644
--- a/var/spack/repos/builtin/packages/r-crayon/package.py
+++ b/var/spack/repos/builtin/packages/r-crayon/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,8 +32,9 @@ class RCrayon(RPackage):
New styles can also be created easily. This package was inspired by the
'chalk' 'JavaScript' project."""
- homepage = "https://github.com/gaborcsardi/crayon"
- url = "https://cran.r-project.org/src/contrib/crayon_1.3.2.tar.gz"
+ homepage = "https://cran.r-project.org/package=sourcetools"
+ url = "https://cran.rstudio.com/src/contrib/crayon_1.3.4.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/crayon"
+ version('1.3.4', '77c7c2906c59a3141306d86c89ffc7d3')
version('1.3.2', 'fe29c6204d2d6ff4c2f9d107a03d0cb9')
diff --git a/var/spack/repos/builtin/packages/r-cubature/package.py b/var/spack/repos/builtin/packages/r-cubature/package.py
index 918f8e9e3d..9f09069094 100644
--- a/var/spack/repos/builtin/packages/r-cubature/package.py
+++ b/var/spack/repos/builtin/packages/r-cubature/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-cubist/package.py b/var/spack/repos/builtin/packages/r-cubist/package.py
new file mode 100644
index 0000000000..8fd4639fc5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-cubist/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RCubist(RPackage):
+ """Regression modeling using rules with added instance-based corrections"""
+
+ homepage = "https://cran.r-project.org/package=Cubist"
+ url = "https://cran.r-project.org/src/contrib/Cubist_0.0.19.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/Cubist"
+
+ version('0.0.19', 'bf9364f655536ec03717fd2ad6223a47')
+
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-curl/package.py b/var/spack/repos/builtin/packages/r-curl/package.py
index 7b62d1be60..0b53d436fd 100644
--- a/var/spack/repos/builtin/packages/r-curl/package.py
+++ b/var/spack/repos/builtin/packages/r-curl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,10 +37,13 @@ class RCurl(RPackage):
package with http specific tools and logic."""
homepage = "https://github.com/jeroenooms/curl"
- url = "https://cran.r-project.org/src/contrib/curl_0.9.7.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/curl_2.3.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/curl"
- version('1.0', '93d34926d6071e1fba7e728b482f0dd9')
+ version('3.0', '741202626eacd1f9c022b0a4d7be6d6a')
+ version('2.3', '7250ee8caed98ba76906ab4d32da60f8')
+ version('1.0', '93d34926d6071e1fba7e728b482f0dd9')
version('0.9.7', 'a101f7de948cb828fef571c730f39217')
+ depends_on('r@3.0.0:')
depends_on('curl')
diff --git a/var/spack/repos/builtin/packages/r-datatable/package.py b/var/spack/repos/builtin/packages/r-data-table/package.py
index 23802524e8..fad200eeb1 100644
--- a/var/spack/repos/builtin/packages/r-datatable/package.py
+++ b/var/spack/repos/builtin/packages/r-data-table/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,18 @@
from spack import *
-class RDatatable(RPackage):
+class RDataTable(RPackage):
"""Fast aggregation of large data (e.g. 100GB in RAM), fast ordered joins,
fast add/modify/delete of columns by group using no copies at all, list
columns and a fast file reader (fread). Offers a natural and flexible
syntax, for faster development."""
homepage = "https://github.com/Rdatatable/data.table/wiki"
- url = "https://cran.r-project.org/src/contrib/data.table_1.9.6.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/data.table_1.10.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/data.table"
- version('1.9.6', 'b1c0c7cce490bdf42ab288541cc55372')
+ version('1.10.4-2', '4a2d3541f241088d0979522b4083a765')
+ version('1.10.0', 'f0e08dd5ba1b3f46c59dd1574fe497c1')
+ version('1.9.6', 'b1c0c7cce490bdf42ab288541cc55372')
- depends_on('r-chron', type=('build', 'run'))
+ depends_on('r@3.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-dbi/package.py b/var/spack/repos/builtin/packages/r-dbi/package.py
index f00100bdf0..5aac25d2fb 100644
--- a/var/spack/repos/builtin/packages/r-dbi/package.py
+++ b/var/spack/repos/builtin/packages/r-dbi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,8 +30,8 @@ class RDbi(RPackage):
relational database management systems. All classes in this package are
virtual and need to be extended by the various R/DBMS implementations."""
- homepage = "https://github.com/rstats-db/DBI"
- url = "https://cran.r-project.org/src/contrib/DBI_0.4-1.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/DBI"
-
+ homepage = "http://rstats-db.github.io/DBI"
+ url = "https://cran.rstudio.com/src/contrib/DBI_0.7.tar.gz"
+ list_url = homepage
version('0.4-1', 'c7ee8f1c5037c2284e99c62698d0f087')
+ version('0.7', '66065dd687d758b72d638adb6a8cab2e')
diff --git a/var/spack/repos/builtin/packages/r-delayedarray/package.py b/var/spack/repos/builtin/packages/r-delayedarray/package.py
new file mode 100644
index 0000000000..8cbeb0296b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-delayedarray/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDelayedarray(RPackage):
+ """Wrapping an array-like object (typically an on-disk object) in a
+ DelayedArray object allows one to perform common array operations on it
+ without loading the object in memory. In order to reduce memory usage
+ and optimize performance, operations on the object are either delayed
+ or executed using a block processing mechanism. Note that this also
+ works on in-memory array-like objects like DataFrame objects (typically
+ with Rle columns), Matrix objects, and ordinary arrays and data frames.
+ Wrapping an array-like object (typically an on-disk object) in a
+ DelayedArray object allows one to perform common array operations on it
+ without loading the object in memory. In order to reduce memory usage
+ and optimize performance, operations on the object are either delayed
+ or executed using a block processing mechanism. Note that this also
+ works on in-memory array-like objects like DataFrame objects (typically
+ with Rle columns), Matrix objects, and ordinary arrays and data
+ frames."""
+
+ homepage = "https://bioconductor.org/packages/DelayedArray/"
+ url = "https://git.bioconductor.org/packages/DelayedArray"
+ list_url = homepage
+
+ version('0.2.7', git='https://git.bioconductor.org/packages/DelayedArray', commit='909c2ce1665ebae2543172ead50abbe10bd42bc4')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@0.2.7')
diff --git a/var/spack/repos/builtin/packages/r-deldir/package.py b/var/spack/repos/builtin/packages/r-deldir/package.py
new file mode 100644
index 0000000000..d02ecb19ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-deldir/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDeldir(RPackage):
+ """Calculates the Delaunay triangulation and the Dirichlet or Voronoi
+ tessellation (with respect to the entire plane) of a planar point set.
+ Plots triangulations and tessellations in various ways. Clips
+ tessellations to sub-windows. Calculates perimeters of tessellations.
+ Summarises information about the tiles of the tessellation."""
+
+ homepage = "https://CRAN.R-project.org/package=deldir"
+ url = "https://cran.r-project.org/src/contrib/deldir_0.1-14.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/deldir"
+
+ version('0.1-14', '6a22b13d962615cd9d51b6eae403409f')
+
+ depends_on('r@0.99:')
diff --git a/var/spack/repos/builtin/packages/r-dendextend/package.py b/var/spack/repos/builtin/packages/r-dendextend/package.py
new file mode 100644
index 0000000000..5d98e012fc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-dendextend/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDendextend(RPackage):
+ """dendextend: Extending 'Dendrogram' Functionality in R"""
+
+ homepage = "https://CRAN.R-project.org/package=dendextend"
+ url = "https://cran.r-project.org/src/contrib/dendextend_1.5.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/dendextend"
+
+ version('1.5.2', '1134869d94005727c63cf3037e2f1bbf')
+
+ depends_on('r@3.0.0:')
+ depends_on('r-magrittr@1.0.1:', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-fpc', type=('build', 'run'))
+ depends_on('r-whisker', type=('build', 'run'))
+ depends_on('r-viridis', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-deoptim/package.py b/var/spack/repos/builtin/packages/r-deoptim/package.py
index 5334953d46..298b790693 100644
--- a/var/spack/repos/builtin/packages/r-deoptim/package.py
+++ b/var/spack/repos/builtin/packages/r-deoptim/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-deoptimr/package.py b/var/spack/repos/builtin/packages/r-deoptimr/package.py
new file mode 100644
index 0000000000..af95c081e0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-deoptimr/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDeoptimr(RPackage):
+ """An implementation of a bespoke jDE variant of the Differential
+ Evolution stochastic algorithm for global optimization of
+ nonlinear programming problems."""
+
+ homepage = "https://cran.r-project.org/web/packages/DEoptimR/index.html"
+ url = "https://cran.r-project.org/src/contrib/DEoptimR_1.0-8.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/DEoptimR"
+
+ version('1.0-8', 'c85836a504fbe4166e3c8eba0efe705d')
diff --git a/var/spack/repos/builtin/packages/r-deseq/package.py b/var/spack/repos/builtin/packages/r-deseq/package.py
new file mode 100644
index 0000000000..900c82499a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-deseq/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDeseq(RPackage):
+ """Estimate variance-mean dependence in count data from
+ high-throughput sequencing assays and test for differential
+ expression based on a model using the negative binomial
+ distribution."""
+
+ homepage = "https://www.bioconductor.org/packages/DESeq/"
+ url = "https://git.bioconductor.org/packages/DESeq"
+
+ version('1.28.0', git='https://git.bioconductor.org/packages/DESeq', commit='738371466e6ccf00179fd35b617c8ba0e1e91630')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-geneplotter', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-deseq2/package.py b/var/spack/repos/builtin/packages/r-deseq2/package.py
new file mode 100644
index 0000000000..96a2426c4f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-deseq2/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDeseq2(RPackage):
+ """Estimate variance-mean dependence in count data from
+ high-throughput sequencing assays and test for differential
+ expression based on a model using the negative binomial
+ distribution."""
+
+ homepage = "https://www.bioconductor.org/packages/DESeq2/"
+ url = "https://git.bioconductor.org/packages/DESeq2"
+
+ version('1.16.1', git='https://git.bioconductor.org/packages/DESeq2', commit='0a815574382704a08ef8b906eceb0296f81cded5')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.16.1')
+ depends_on("r-rcpparmadillo", type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r-geneplotter', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-hmisc', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-desolve/package.py b/var/spack/repos/builtin/packages/r-desolve/package.py
new file mode 100644
index 0000000000..bbcbebcd53
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-desolve/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDesolve(RPackage):
+ """Functions that solve initial value problems of a system of first-order
+ ordinary differential equations ('ODE'), of partial differential
+ equations ('PDE'), of differential algebraic equations ('DAE'), and of
+ delay differential equations."""
+
+ homepage = "https://cran.r-project.org/package=deSolve"
+ url = "https://cran.r-project.org/src/contrib/deSolve_1.20.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/deSolve"
+
+ version('1.20', '85c6a2d8568944ae8eef27ac7c35fb25')
diff --git a/var/spack/repos/builtin/packages/r-devtools/package.py b/var/spack/repos/builtin/packages/r-devtools/package.py
index 9895a3b390..7b9b789eb3 100644
--- a/var/spack/repos/builtin/packages/r-devtools/package.py
+++ b/var/spack/repos/builtin/packages/r-devtools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,16 +29,19 @@ class RDevtools(RPackage):
"""Collection of package development tools."""
homepage = "https://github.com/hadley/devtools"
- url = "https://cran.r-project.org/src/contrib/devtools_1.11.1.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/devtools_1.12.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/devtools"
+ version('1.12.0', '73b46c446273566e5b21c9f5f72aeca3')
version('1.11.1', '242672ee27d24dddcbdaac88c586b6c2')
- depends_on('r-httr', type=('build', 'run'))
- depends_on('r-memoise', type=('build', 'run'))
+ depends_on('r@3.0.2:')
+
+ depends_on('r-httr@0.4:', type=('build', 'run'))
+ depends_on('r-memoise@1.0.0:', type=('build', 'run'))
depends_on('r-whisker', type=('build', 'run'))
depends_on('r-digest', type=('build', 'run'))
- depends_on('r-rstudioapi', type=('build', 'run'))
+ depends_on('r-rstudioapi@0.2.0:', type=('build', 'run'))
depends_on('r-jsonlite', type=('build', 'run'))
- depends_on('r-git2r', type=('build', 'run'))
+ depends_on('r-git2r@0.11.0:', type=('build', 'run'))
depends_on('r-withr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-diagrammer/package.py b/var/spack/repos/builtin/packages/r-diagrammer/package.py
index 5f8e27a102..650ab64a3f 100644
--- a/var/spack/repos/builtin/packages/r-diagrammer/package.py
+++ b/var/spack/repos/builtin/packages/r-diagrammer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-dichromat/package.py b/var/spack/repos/builtin/packages/r-dichromat/package.py
index ea465e2d6c..b40cff31dd 100644
--- a/var/spack/repos/builtin/packages/r-dichromat/package.py
+++ b/var/spack/repos/builtin/packages/r-dichromat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-digest/package.py b/var/spack/repos/builtin/packages/r-digest/package.py
index 7e077442f9..78b96e03f4 100644
--- a/var/spack/repos/builtin/packages/r-digest/package.py
+++ b/var/spack/repos/builtin/packages/r-digest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -44,7 +44,11 @@ class RDigest(RPackage):
used."""
homepage = "http://dirk.eddelbuettel.com/code/digest.html"
- url = "https://cran.r-project.org/src/contrib/digest_0.6.9.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/digest_0.6.12.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/digest"
- version('0.6.9', '48048ce6c466bdb124716e45ba4a0e83')
+ version('0.6.12', '738efd4d9a37c5a4001ae66e954ce07e')
+ version('0.6.11', '52a864f55846b48b3cab0b5d0304a82a')
+ version('0.6.9', '48048ce6c466bdb124716e45ba4a0e83')
+
+ depends_on('r@2.4.1:')
diff --git a/var/spack/repos/builtin/packages/r-diptest/package.py b/var/spack/repos/builtin/packages/r-diptest/package.py
new file mode 100644
index 0000000000..96d9eea734
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-diptest/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDiptest(RPackage):
+ """diptest: Hartigan's Dip Test Statistic for Unimodality - Corrected"""
+
+ homepage = "https://CRAN.R-project.org/package=diptest"
+ url = "https://cran.r-project.org/src/contrib/diptest_0.75-7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/diptest"
+
+ version('0.75-7', '1a4a958fda763f7c99cb485dbe5954ab')
diff --git a/var/spack/repos/builtin/packages/r-dnacopy/package.py b/var/spack/repos/builtin/packages/r-dnacopy/package.py
new file mode 100644
index 0000000000..ade0424829
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-dnacopy/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDnacopy(RPackage):
+ """Implements the circular binary segmentation (CBS) algorithm
+ to segment DNA copy number data and identify genomic regions
+ with abnormal copy number."""
+
+ homepage = "https://www.bioconductor.org/packages/DNAcopy/"
+ url = "https://git.bioconductor.org/packages/DNAcopy"
+
+ version('1.50.1', git='https://git.bioconductor.org/packages/DNAcopy', commit='a20153029e28c009df813dbaf13d9f519fafa4e8')
diff --git a/var/spack/repos/builtin/packages/r-domc/package.py b/var/spack/repos/builtin/packages/r-domc/package.py
new file mode 100644
index 0000000000..9ed4841520
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-domc/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDomc(RPackage):
+ """Provides a parallel backend for the %dopar% function using
+ the multicore functionality of the parallel package."""
+
+ homepage = "https://cran.r-project.org/package=doMC"
+ url = "https://cran.r-project.org/src/contrib/doMC_1.3.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/doMC"
+
+ version('1.3.4', 'f965b09add9056e84f99a831dc3af7d1')
+
+ depends_on('r@2.14.0:')
+
+ depends_on('r-foreach@1.2.0:', type=('build', 'run'))
+ depends_on('r-iterators@1.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-doparallel/package.py b/var/spack/repos/builtin/packages/r-doparallel/package.py
index fa039568c6..1690db07a7 100644
--- a/var/spack/repos/builtin/packages/r-doparallel/package.py
+++ b/var/spack/repos/builtin/packages/r-doparallel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,6 +33,7 @@ class RDoparallel(RPackage):
url = "https://cran.r-project.org/src/contrib/doParallel_1.0.10.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/doParallel"
+ version('1.0.11', 'd7822f0efd7bdf7582d8b43c986be86c')
version('1.0.10', 'd9fbde8f315d98d055483ee3493c9b43')
depends_on('r-foreach', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dorng/package.py b/var/spack/repos/builtin/packages/r-dorng/package.py
new file mode 100644
index 0000000000..8c69ee810e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-dorng/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDorng(RPackage):
+ """Provides functions to perform reproducible parallel foreach loops,
+ using independent random streams as generated by L'Ecuyer's combined
+ multiple-recursive generator
+ [L'Ecuyer (1999), <doi:10.1287/opre.47.1.159>]. It enables to easily
+ convert standard %dopar% loops into fully reproducible loops,
+ independently of the number of workers, the task scheduling strategy,
+ or the chosen parallel environment and associated foreach backend."""
+
+ homepage = "https://cran.rstudio.com/web/packages/doRNG/index.html"
+ url = "https://cran.rstudio.com/src/contrib/doRNG_1.6.6.tar.gz"
+ list_url = homepage
+
+ version('1.6.6', 'ffb26024c58c8c99229470293fbf35cf')
+
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-rngtools', type=('build', 'run'))
+ depends_on('r-iterators', type=('build', 'run'))
+ depends_on('r-pkgmaker', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-downloader/package.py b/var/spack/repos/builtin/packages/r-downloader/package.py
new file mode 100644
index 0000000000..a86650fd9f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-downloader/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RDownloader(RPackage):
+ """Provides a wrapper for the download.file function, making it possible to
+ download files over HTTPS on Windows, Mac OS X, and other Unix-like
+ platforms. The 'RCurl' package provides this functionality
+ (and much more) but can be difficult to install because it must be
+ compiled with external dependencies. This package has no external
+ dependencies, so it is much easier to install."""
+
+ homepage = "https://cran.rstudio.com/web/packages/downloader/index.html"
+ url = "https://cran.rstudio.com/src/contrib/downloader_0.4.tar.gz"
+ list_url = homepage
+
+ version('0.4', 'f26daf8fbeb29a1882bf102f62008594')
+
+ depends_on('r-digest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dplyr/package.py b/var/spack/repos/builtin/packages/r-dplyr/package.py
index 6ffa48adc8..bb2ecc4155 100644
--- a/var/spack/repos/builtin/packages/r-dplyr/package.py
+++ b/var/spack/repos/builtin/packages/r-dplyr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,10 @@ class RDplyr(RPackage):
in memory and out of memory."""
homepage = "https://github.com/hadley/dplyr"
- url = "https://cran.r-project.org/src/contrib/dplyr_0.5.0.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/dplyr"
+ url = "https://cran.rstudio.com/src/contrib/dplyr_0.7.3.tar.gz"
+ list_url = homepage
+ version('0.7.3', 'f9760b796917747e9dcd927ebb531c7d')
version('0.5.0', '1fcafcacca70806eea2e6d465cdb94ef')
depends_on('r-assertthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-dt/package.py b/var/spack/repos/builtin/packages/r-dt/package.py
index ae92f5fd24..a2d01900e1 100644
--- a/var/spack/repos/builtin/packages/r-dt/package.py
+++ b/var/spack/repos/builtin/packages/r-dt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,7 +33,7 @@ class RDt(RPackage):
homepage = "http://rstudio.github.io/DT"
url = "https://cran.r-project.org/src/contrib/DT_0.1.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/DT/"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/DT"
version('0.1', '5c8df984921fa484784ec4b8a4fb6f3c')
diff --git a/var/spack/repos/builtin/packages/r-dygraphs/package.py b/var/spack/repos/builtin/packages/r-dygraphs/package.py
index 323fb6d584..91e2dc5504 100644
--- a/var/spack/repos/builtin/packages/r-dygraphs/package.py
+++ b/var/spack/repos/builtin/packages/r-dygraphs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-e1071/package.py b/var/spack/repos/builtin/packages/r-e1071/package.py
index 4d79fcccd7..7be5264895 100644
--- a/var/spack/repos/builtin/packages/r-e1071/package.py
+++ b/var/spack/repos/builtin/packages/r-e1071/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,7 @@ class RE1071(RPackage):
homepage = "https://cran.r-project.org/package=e1071"
url = "https://cran.r-project.org/src/contrib/e1071_1.6-7.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/e1071"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/e1071"
version('1.6-7', 'd109a7e3dd0c905d420e327a9a921f5a')
diff --git a/var/spack/repos/builtin/packages/r-edger/package.py b/var/spack/repos/builtin/packages/r-edger/package.py
new file mode 100644
index 0000000000..2d9da861db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-edger/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class REdger(RPackage):
+ """Differential expression analysis of RNA-seq expression profiles with
+ biological replication. Implements a range of statistical methodology
+ based on the negative binomial distributions, including empirical Bayes
+ estimation, exact tests, generalized linear models and quasi-likelihood
+ tests. As well as RNA-seq, it be applied to differential signal analysis
+ of other types of genomic data that produce counts, including ChIP-seq,
+ SAGE and CAGE."""
+
+ homepage = "https://bioconductor.org/packages/edgeR/"
+ url = "https://git.bioconductor.org/packages/edgeR"
+ list_url = homepage
+
+ version('3.18.1', git='https://git.bioconductor.org/packages/edgeR', commit='101106f3fdd9e2c45d4a670c88f64c12e97a0495')
+
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-locfit', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@3.18.1')
diff --git a/var/spack/repos/builtin/packages/r-ellipse/package.py b/var/spack/repos/builtin/packages/r-ellipse/package.py
new file mode 100644
index 0000000000..52393ed66a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ellipse/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class REllipse(RPackage):
+ """This package contains various routines for drawing ellipses and
+ ellipse-like confidence regions."""
+
+ homepage = "https://cran.r-project.org/package=ellipse"
+ url = "https://cran.r-project.org/src/contrib/ellipse_0.3-8.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ellipse"
+
+ version('0.3-8', '385f5ec5e49bcda4317ca9dffd33f771')
+
+ depends_on('r@2.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-ensembldb/package.py b/var/spack/repos/builtin/packages/r-ensembldb/package.py
new file mode 100644
index 0000000000..c6f424a855
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ensembldb/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class REnsembldb(RPackage):
+ """The package provides functions to create and use transcript centric
+ annotation databases/packages. The annotation for the databases are
+ directly fetched from Ensembl using their Perl API. The functionality
+ and data is similar to that of the TxDb packages from the
+ GenomicFeatures package, but, in addition to retrieve all
+ gene/transcript models and annotations from the database, the ensembldb
+ package provides also a filter framework allowing to retrieve
+ annotations for specific entries like genes encoded on a chromosome
+ region or transcript models of lincRNA genes."""
+
+ homepage = "https://bioconductor.org/packages/ensembldb/"
+ url = "https://git.bioconductor.org/packages/ensembldb"
+ list_url = homepage
+
+ version('2.0.4', git='https://git.bioconductor.org/packages/ensembldb', commit='514623d71e3cca7a4e547adb579b5a958702ef86')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-annotationfilter', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-annotationhub', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-protgenerics', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ergm/package.py b/var/spack/repos/builtin/packages/r-ergm/package.py
new file mode 100644
index 0000000000..419119e2b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ergm/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RErgm(RPackage):
+ """An integrated set of tools to analyze and simulate networks based
+ on exponential-family random graph models (ERGM). "ergm" is a
+ part of the "statnet" suite of packages for network analysis."""
+
+ homepage = "http://statnet.org"
+ url = "https://cran.r-project.org/src/contrib/ergm_3.7.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ergm"
+
+ version('3.7.1', '431ae430c76b2408988f469831d80126')
+
+ depends_on('r-robustbase@0.9-10:', type=('build', 'run'))
+ depends_on('r-coda@0.18-1:', type=('build', 'run'))
+ depends_on('r-trust', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-lpsolve', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-statnet-common@3.3:', type=('build', 'run'))
+ depends_on('r-network@1.13:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-evaluate/package.py b/var/spack/repos/builtin/packages/r-evaluate/package.py
index cf6c72dc62..d32bff7319 100644
--- a/var/spack/repos/builtin/packages/r-evaluate/package.py
+++ b/var/spack/repos/builtin/packages/r-evaluate/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,10 +31,14 @@ class REvaluate(RPackage):
"""Parsing and evaluation tools that make it easy to recreate the command
line behaviour of R."""
- homepage = "https://github.com/hadley/evaluate"
- url = "https://cran.rstudio.com/src/contrib/evaluate_0.9.tar.gz"
+ homepage = "https://cran.r-project.org/package=evaluate"
+ url = "https://cran.rstudio.com/src/contrib/evaluate_0.10.1.tar.gz"
list_url = "https://cran.rstudio.com/src/contrib/Archive/evaluate"
- version('0.9', '877d89ce8a9ef7f403b1089ca1021775')
+ version('0.10.1', '1dde5a35e2b9d57f1b1bb16791b35ff5')
+ version('0.10', 'c49326babf984a8b36e7e276da370ad2')
+ version('0.9', '877d89ce8a9ef7f403b1089ca1021775')
- depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r@3.0.2:')
+
+ depends_on('r-stringr@0.6.2:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-expm/package.py b/var/spack/repos/builtin/packages/r-expm/package.py
new file mode 100644
index 0000000000..48080163de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-expm/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RExpm(RPackage):
+ """Computation of the matrix exponential, logarithm, sqrt, and related
+ quantities."""
+
+ homepage = "http://R-Forge.R-project.org/projects/expm"
+ url = "https://cran.r-project.org/src/contrib/expm_0.999-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/expm"
+
+ version('0.999-2', 'e05fa3f995754af92bd03227625da984')
diff --git a/var/spack/repos/builtin/packages/r-factoextra/package.py b/var/spack/repos/builtin/packages/r-factoextra/package.py
new file mode 100644
index 0000000000..518f4d6a63
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-factoextra/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFactoextra(RPackage):
+ """factoextra: Extract and Visualize the Results of Multivariate Data
+ Analyses"""
+
+ homepage = "http://www.sthda.com/english/rpkgs/factoextra"
+ url = "https://cran.r-project.org/src/contrib/factoextra_1.0.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/factoextra"
+
+ version('1.0.4', 'aa4c81ca610f17fdee0c9f3379e35429')
+
+ depends_on('r@3.1.0:')
+ depends_on('r-ggplot2@2.2.0:', type=('build', 'run'))
+ depends_on('r-abind', type=('build', 'run'))
+ # depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-dendextend', type=('build', 'run'))
+ depends_on('r-factominer', type=('build', 'run'))
+ depends_on('r-ggpubr', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-ggrepel', type=('build', 'run'))
+ depends_on('r-tidyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-factominer/package.py b/var/spack/repos/builtin/packages/r-factominer/package.py
new file mode 100644
index 0000000000..d2abf10ff7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-factominer/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFactominer(RPackage):
+ """FactoMineR: Multivariate Exploratory Data Analysis and Data Mining"""
+
+ homepage = "http://factominer.free.fr"
+ url = "https://cran.r-project.org/src/contrib/FactoMineR_1.35.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/FactoMineR"
+
+ version('1.35', 'bef076181ce942016114dd7a6f5c2348')
+
+ depends_on('r@3.3.0:')
+ depends_on('r-car', type=('build', 'run'))
+ # depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-ellipse', type=('build', 'run'))
+ depends_on('r-flashclust', type=('build', 'run'))
+ # depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-leaps', type=('build', 'run'))
+ # depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-scatterplot3d', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ff/package.py b/var/spack/repos/builtin/packages/r-ff/package.py
new file mode 100644
index 0000000000..1bb7250658
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ff/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFf(RPackage):
+ """memory-efficient storage of large data on disk and
+ fast access functions."""
+
+ homepage = "http://ff.r-forge.r-project.org/"
+ url = "https://cran.rstudio.com/src/contrib/ff_2.2-13.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ff"
+
+ version('2.2-13', '4adf8840d24cb6e2927a3ef885c86fcd')
+
+ depends_on('r-bit', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-filehash/package.py b/var/spack/repos/builtin/packages/r-filehash/package.py
index b17335ed11..b7cfbb19ce 100644
--- a/var/spack/repos/builtin/packages/r-filehash/package.py
+++ b/var/spack/repos/builtin/packages/r-filehash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-flashclust/package.py b/var/spack/repos/builtin/packages/r-flashclust/package.py
new file mode 100644
index 0000000000..cfaee392db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-flashclust/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFlashclust(RPackage):
+ """flashClust: Implementation of optimal hierarchical clustering"""
+
+ homepage = "https://CRAN.R-project.org/package=flashClust"
+ url = "https://cran.r-project.org/src/contrib/flashClust_1.01-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/flashClust"
+
+ version('1.01-2', '23409aeeef98bf35d0b3d5dd755fdeff')
+
+ depends_on('r@2.3.0:')
diff --git a/var/spack/repos/builtin/packages/r-flexmix/package.py b/var/spack/repos/builtin/packages/r-flexmix/package.py
new file mode 100644
index 0000000000..82ea3f068a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-flexmix/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFlexmix(RPackage):
+ """flexmix: Flexible Mixture Modeling"""
+
+ homepage = "https://CRAN.R-project.org/package=flexmix"
+ url = "https://cran.r-project.org/src/contrib/flexmix_2.3-14.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/flexmix"
+
+ version('2.3-14', '5be4f7764e6a697f4586e60c2bf6e960')
+
+ depends_on('r@2.15.0:')
+ # depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-modeltools@0.2-16:', type=('build', 'run'))
+ # depends_on('r-nnet', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-foreach/package.py b/var/spack/repos/builtin/packages/r-foreach/package.py
index 78efe02188..bf542efaea 100644
--- a/var/spack/repos/builtin/packages/r-foreach/package.py
+++ b/var/spack/repos/builtin/packages/r-foreach/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-forecast/package.py b/var/spack/repos/builtin/packages/r-forecast/package.py
new file mode 100644
index 0000000000..e6549a30dd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-forecast/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RForecast(RPackage):
+ """Methods and tools for displaying and analysing univariate time
+ series forecasts including exponential smoothing via state space
+ models and automatic ARIMA modelling."""
+
+ homepage = "https://cran.r-project.org/package=forecast"
+ url = "https://cran.r-project.org/src/contrib/forecast_8.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/forecast"
+
+ version('8.2', '3ef095258984364c100b771b3c90d15e')
+
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-colorspace', type=('build', 'run'))
+ depends_on('r-nnet', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-fracdiff', type=('build', 'run'))
+ depends_on('r-tseries', type=('build', 'run'))
+ depends_on('r-lmtest', type=('build', 'run'))
+ depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-timedate', type=('build', 'run'))
+ depends_on('r-rcpparmadillo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-foreign/package.py b/var/spack/repos/builtin/packages/r-foreign/package.py
index b293f091c2..f43e0ad0e4 100644
--- a/var/spack/repos/builtin/packages/r-foreign/package.py
+++ b/var/spack/repos/builtin/packages/r-foreign/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-formatr/package.py b/var/spack/repos/builtin/packages/r-formatr/package.py
index 011111af07..e6fa3c6824 100644
--- a/var/spack/repos/builtin/packages/r-formatr/package.py
+++ b/var/spack/repos/builtin/packages/r-formatr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,10 +33,11 @@ class RFormatr(RPackage):
human-readable and tidy. There is also a Shiny app as a user interface in
this package."""
- homepage = "http://yihui.name/formatR"
- url = "https://cran.r-project.org/src/contrib/formatR_1.4.tar.gz"
+ homepage = "https://cran.r-project.org/package=formatR"
+ url = "https://cran.r-project.org/src/contrib/formatR_1.5.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/formatR"
+ version('1.5', 'ac735515b8e4c32097154f1b68c5ecc7')
version('1.4', '98b9b64b2785b35f9df403e1aab6c73c')
depends_on('r-codetools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-formula/package.py b/var/spack/repos/builtin/packages/r-formula/package.py
index 5515ca91a3..499ebfa8da 100644
--- a/var/spack/repos/builtin/packages/r-formula/package.py
+++ b/var/spack/repos/builtin/packages/r-formula/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,8 @@ class RFormula(RPackage):
side and/or multiple responses on the left-hand side."""
homepage = "https://cran.r-project.org/package=Formula"
- url = "https://cran.r-project.org/src/contrib/Formula_1.2-1.tar.gz"
+ url = "https://cran.rstudio.com/src/contrib/Formula_1.2-2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/Formula"
+ version('1.2-2', 'c69bb0522811cf8eb9f1cc6c3d182b6e')
version('1.2-1', '2afb31e637cecd0c1106317aca1e4849')
diff --git a/var/spack/repos/builtin/packages/r-fpc/package.py b/var/spack/repos/builtin/packages/r-fpc/package.py
new file mode 100644
index 0000000000..4628970171
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fpc/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFpc(RPackage):
+ """fpc: Flexible Procedures for Clustering"""
+
+ homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
+ url = "https://cran.r-project.org/src/contrib/fpc_2.1-10.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/fpc"
+
+ version('2.1-10', '75e5340e416cd13d7751e06f1c07866b')
+
+ depends_on('r@2.0.0:')
+ # depends_on('r-mass', type=('build', 'run'))
+ # depends_on('r-cluster', type=('build', 'run'))
+ depends_on('r-mclust', type=('build', 'run'))
+ depends_on('r-flexmix', type=('build', 'run'))
+ depends_on('r-prabclus', type=('build', 'run'))
+ # depends_on('r-class', type=('build', 'run'))
+ depends_on('r-diptest', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-robustbase', type=('build', 'run'))
+ depends_on('r-kernlab', type=('build', 'run'))
+ depends_on('r-trimcluster', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-fracdiff/package.py b/var/spack/repos/builtin/packages/r-fracdiff/package.py
new file mode 100644
index 0000000000..c5ed63b240
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-fracdiff/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFracdiff(RPackage):
+ """Maximum likelihood estimation of the parameters of a
+ fractionally differenced ARIMA(p,d,q) model (Haslett and
+ Raftery, Appl.Statistics, 1989)."""
+
+ homepage = "https://cran.r-project.org/package=fracdiff"
+ url = "https://cran.r-project.org/src/contrib/fracdiff_1.4-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/fracdiff"
+
+ version('1.4-2', '6a6977d175ad963d9675736a8f8d41f7')
diff --git a/var/spack/repos/builtin/packages/r-futile-logger/package.py b/var/spack/repos/builtin/packages/r-futile-logger/package.py
new file mode 100644
index 0000000000..25229e9581
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-futile-logger/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFutileLogger(RPackage):
+ """Provides a simple yet powerful logging utility. Based loosely on log4j,
+ futile.logger takes advantage of R idioms to make logging a convenient
+ and easy to use replacement for cat and print statements."""
+
+ homepage = "https://cran.rstudio.com/web/packages/futile.logger/index.html"
+ url = "https://cran.rstudio.com/src/contrib/futile.logger_1.4.3.tar.gz"
+ list_url = homepage
+
+ version('1.4.3', 'ba0e8d2dfb5a970b51c21907bbf8bfc2')
+
+ depends_on('r-lambda-r', type=('build', 'run'))
+ depends_on('r-futile-options', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-futile-options/package.py b/var/spack/repos/builtin/packages/r-futile-options/package.py
new file mode 100644
index 0000000000..9d0ee93d13
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-futile-options/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RFutileOptions(RPackage):
+ """A scoped options management framework"""
+
+ homepage = "https://cran.rstudio.com/web/packages/futile.options/index.html"
+ url = "https://cran.rstudio.com/src/contrib/futile.options_1.0.0.tar.gz"
+
+ version('1.0.0', '8fd845774bbce56f41f7c43c3b4c13ba')
diff --git a/var/spack/repos/builtin/packages/r-gbm/package.py b/var/spack/repos/builtin/packages/r-gbm/package.py
new file mode 100644
index 0000000000..cddc0c77be
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gbm/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGbm(RPackage):
+ """Generalized Boosted Regression Models."""
+
+ homepage = "https://cran.rstudio.com/web/packages/gbm/index.html"
+ url = "https://cran.rstudio.com/src/contrib/gbm_2.1.3.tar.gz"
+
+ version('2.1.3', '9b2f32c892c6e31b01c1162e3b16b3f4')
+
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gcrma/package.py b/var/spack/repos/builtin/packages/r-gcrma/package.py
new file mode 100644
index 0000000000..b54315796a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gcrma/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGcrma(RPackage):
+ """Background adjustment using sequence information"""
+
+ homepage = "https://bioconductor.org/packages/gcrma/"
+ url = "https://git.bioconductor.org/packages/gcrma"
+ list_url = homepage
+
+ version('2.48.0', git='https://git.bioconductor.org/packages/gcrma', commit='3ea0eb0b5c15ffb24df76620667ae7996ed715b4')
+
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affyio', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.48.0')
diff --git a/var/spack/repos/builtin/packages/r-gdata/package.py b/var/spack/repos/builtin/packages/r-gdata/package.py
index ef001699bb..e07fc8d360 100644
--- a/var/spack/repos/builtin/packages/r-gdata/package.py
+++ b/var/spack/repos/builtin/packages/r-gdata/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -45,9 +45,10 @@ class RGdata(RPackage):
both scalar and vector arguments ('resample')."""
homepage = "https://cran.r-project.org/package=gdata"
- url = "https://cran.r-project.org/src/contrib/gdata_2.17.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/gdata_2.18.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/gdata"
+ version('2.18.0', 'f831019aa743fe11dcf0a051e4280921')
version('2.17.0', 'c716b663b9dc16ad8cafe6acc781a75f')
depends_on('r-gtools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-geiger/package.py b/var/spack/repos/builtin/packages/r-geiger/package.py
new file mode 100644
index 0000000000..c2ce69ef37
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-geiger/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGeiger(RPackage):
+ """Methods for fitting macroevolutionary models to phylogenetic trees."""
+
+ homepage = "https://cran.r-project.org/package=geiger"
+ url = "https://cran.r-project.org/src/contrib/geiger_2.0.6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/geiger"
+
+ version('2.0.6', 'e5e1a407ea56805227d0f91bf6d95afc')
+
+ depends_on('r-ape@3.0:', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r-subplex', type=('build', 'run'))
+ depends_on('r-desolve@1.7:', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-rcpp@0.9.0:', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-ncbit', type=('build', 'run'))
+ depends_on('r-colorspace', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genefilter/package.py b/var/spack/repos/builtin/packages/r-genefilter/package.py
new file mode 100644
index 0000000000..e5b631d778
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genefilter/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenefilter(RPackage):
+ """Some basic functions for filtering genes"""
+
+ homepage = "https://bioconductor.org/packages/genefilter/"
+ url = "https://git.bioconductor.org/packages/genefilter"
+ list_url = homepage
+ version('1.58.1', git='https://git.bioconductor.org/packages/genefilter', commit='ace2556049677f60882adfe91f8cc96791556fc2')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.58.1')
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-geneplotter/package.py b/var/spack/repos/builtin/packages/r-geneplotter/package.py
new file mode 100644
index 0000000000..940c87e01f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-geneplotter/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGeneplotter(RPackage):
+ """Functions for plotting genomic data."""
+
+ homepage = "https://www.bioconductor.org/packages/geneplotter/"
+ url = "https://git.bioconductor.org/packages/geneplotter"
+
+ version('1.54.0', git='https://git.bioconductor.org/packages/geneplotter', commit='efdd946e092e44e35fde1eb4bcc5ec1d52090940')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-genomeinfodb/package.py b/var/spack/repos/builtin/packages/r-genomeinfodb/package.py
new file mode 100644
index 0000000000..85a161a01b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genomeinfodb/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenomeinfodb(RPackage):
+ """Contains data and functions that define and allow translation between
+ different chromosome sequence naming conventions (e.g., "chr1"
+ versus "1"), including a function that attempts to place sequence
+ names in their natural, rather than lexicographic, order."""
+
+ homepage = "https://bioconductor.org/packages/GenomeInfoDb/"
+ url = "https://git.bioconductor.org/packages/GenomeInfoDb"
+ list_url = homepage
+
+ version('1.12.3', git='https://git.bioconductor.org/packages/GenomeInfoDb', commit='2deef3f0571b7f622483257bc22d2509ab5a0369')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-genomeinfodbdata', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.12.3')
diff --git a/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py b/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py
new file mode 100644
index 0000000000..8e231ac43c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genomeinfodbdata/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenomeinfodbdata(RPackage):
+ """for mapping between NCBI taxonomy ID and species. Used by functions
+ in the GenomeInfoDb package."""
+
+ homepage = "http://www.example.co://bioconductor.org/packages/3.5/data/annotation/html/GenomeInfoDbData.html"
+ url = "https://bioconductor.org/packages/3.5/data/annotation/src/contrib/GenomeInfoDbData_0.99.0.tar.gz"
+
+ version('0.99.0', '85977b51061dd02a90153db887040d05')
+ depends_on('r@3.4.0:3.4.9', when='@0.99.0')
diff --git a/var/spack/repos/builtin/packages/r-genomicalignments/package.py b/var/spack/repos/builtin/packages/r-genomicalignments/package.py
new file mode 100644
index 0000000000..4a26b91538
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genomicalignments/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenomicalignments(RPackage):
+ """Provides efficient containers for storing and manipulating short genomic
+ alignments (typically obtained by aligning short reads to a reference
+ genome). This includes read counting, computing the coverage, junction
+ detection, and working with the nucleotide content of the alignments."""
+
+ homepage = "https://bioconductor.org/packages/GenomicAlignments/"
+ url = "https://git.bioconductor.org/packages/GenomicAlignments"
+ list_url = homepage
+
+ version('1.12.2', git='https://git.bioconductor.org/packages/GenomicAlignments', commit='b5d6f19e4a89b6c1c3e9e58e5ea4eb13870874ef')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.12.2')
diff --git a/var/spack/repos/builtin/packages/r-genomicfeatures/package.py b/var/spack/repos/builtin/packages/r-genomicfeatures/package.py
new file mode 100644
index 0000000000..a9e4bf5143
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genomicfeatures/package.py
@@ -0,0 +1,58 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenomicfeatures(RPackage):
+ """A set of tools and methods for making and manipulating transcript
+ centric annotations. With these tools the user can easily download the
+ genomic locations of the transcripts, exons and cds of a given organism,
+ from either the UCSC Genome Browser or a BioMart database (more sources
+ will be supported in the future). This information is then stored in a
+ local database that keeps track of the relationship between transcripts,
+ exons, cds and genes. Flexible methods are provided for extracting the
+ desired features in a convenient format."""
+
+ homepage = "http://bioconductor.org/packages/GenomicFeatures/"
+ url = "https://git.bioconductor.org/packages/GenomicFeatures"
+ list_url = homepage
+
+ version('1.28.5', git='https://git.bioconductor.org/packages/GenomicFeatures', commit='ba92381ae93cb1392dad5e6acfab8f6c1d744834')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-biomart', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.28.5')
diff --git a/var/spack/repos/builtin/packages/r-genomicranges/package.py b/var/spack/repos/builtin/packages/r-genomicranges/package.py
new file mode 100644
index 0000000000..bd3f685acd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-genomicranges/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGenomicranges(RPackage):
+ """The ability to efficiently represent and manipulate genomic annotations
+ and alignments is playing a central role when it comes to analyzing
+ high-throughput sequencing data (a.k.a. NGS data). The GenomicRanges
+ package defines general purpose containers for storing and manipulating
+ genomic intervals and variables defined along a genome. More specialized
+ containers for representing and manipulating short alignments against a
+ reference genome, or a matrix-like summarization of an experiment, are
+ defined in the GenomicAlignments and SummarizedExperiment packages
+ respectively. Both packages build on top of the GenomicRanges
+ infrastructure."""
+
+ homepage = "https://bioconductor.org/packages/GenomicRanges/"
+ url = "https://git.bioconductor.org/packages/GenomicRanges"
+ list_url = homepage
+
+ version('1.28.6', git='https://git.bioconductor.org/packages/GenomicRanges', commit='197472d618f3ed04c795dc6ed435500c29619563')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.28.6')
diff --git a/var/spack/repos/builtin/packages/r-geomorph/package.py b/var/spack/repos/builtin/packages/r-geomorph/package.py
new file mode 100644
index 0000000000..1cb82c9d7e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-geomorph/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGeomorph(RPackage):
+ """Read, manipulate, and digitize landmark data, generate shape variables
+ via Procrustes analysis for points, curves and surfaces, perform shape
+ analyses, and provide graphical depictions of shapes and patterns of
+ shape variation."""
+
+ homepage = "https://cran.r-project.org/package=geomorph"
+ url = "https://cran.r-project.org/src/contrib/geomorph_3.0.5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/geomorph"
+
+ version('3.0.5', '240e69fe260ca3ef4d84b4281d61396c')
+
+ depends_on('r-rgl', type=('build', 'run'))
+ depends_on('r-ape', type=('build', 'run'))
+ depends_on('r-jpeg', type=('build', 'run'))
+ depends_on('r-geiger', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-geoquery/package.py b/var/spack/repos/builtin/packages/r-geoquery/package.py
new file mode 100644
index 0000000000..fd2c497430
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-geoquery/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGeoquery(RPackage):
+ """The NCBI Gene Expression Omnibus (GEO) is a public repository of
+ microarray data. Given the rich and varied nature of this resource,
+ it is only natural to want to apply BioConductor tools to these data.
+ GEOquery is the bridge between GEO and BioConductor."""
+
+ homepage = "https://bioconductor.org/packages/GEOquery/"
+ url = "https://git.bioconductor.org/packages/GEOquery"
+ list_url = homepage
+
+ version('2.42.0', git='https://git.bioconductor.org/packages/GEOquery', commit='c26adef8d3ddbd6932a3170f2f84f6e4327641fb')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.42.0')
diff --git a/var/spack/repos/builtin/packages/r-geosphere/package.py b/var/spack/repos/builtin/packages/r-geosphere/package.py
index d90594a3e0..ee93217fb5 100644
--- a/var/spack/repos/builtin/packages/r-geosphere/package.py
+++ b/var/spack/repos/builtin/packages/r-geosphere/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-getoptlong/package.py b/var/spack/repos/builtin/packages/r-getoptlong/package.py
new file mode 100644
index 0000000000..5d6fe4f5dd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-getoptlong/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGetoptlong(RPackage):
+ """This is yet another command-line argument parser which wraps the
+ powerful Perl module Getopt::Long and with some adaptation for easier
+ use in R. It also provides a simple way for variable interpolation in
+ R."""
+
+ homepage = "https://cran.rstudio.com/web/packages/GetoptLong/index.html"
+ url = "https://cran.rstudio.com/src/contrib/GetoptLong_0.1.6.tar.gz"
+ list_url = homepage
+
+ version('0.1.6', 'e4b964d0817cb6c6a707297b21405749')
+
+ depends_on('r-rjson', type=('build', 'run'))
+ depends_on('r-globaloptions', type=('build', 'run'))
+ depends_on('perl')
diff --git a/var/spack/repos/builtin/packages/r-ggally/package.py b/var/spack/repos/builtin/packages/r-ggally/package.py
new file mode 100644
index 0000000000..f06d8257d3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggally/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgally(RPackage):
+ """The R package 'ggplot2' is a plotting system based on the grammar of
+ graphics. 'GGally' extends 'ggplot2' by adding several functions to
+ reduce the complexity of combining geometric objects with transformed
+ data. Some of these functions include a pairwise plot matrix, a two
+ group pairwise plot matrix, a parallel coordinates plot, a survival
+ plot, and several functions to plot networks."""
+
+ homepage = "https://cran.r-project.org/package=GGally"
+ url = "https://cran.r-project.org/src/contrib/GGally_1.3.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/GGally"
+
+ version('1.3.2', 'efe58133ba8431198af7afb6bcb76264')
+
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-progress', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-reshape', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggbio/package.py b/var/spack/repos/builtin/packages/r-ggbio/package.py
new file mode 100644
index 0000000000..8c5f27885a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggbio/package.py
@@ -0,0 +1,69 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgbio(RPackage):
+ """The ggbio package extends and specializes the grammar of graphics for
+ biological data. The graphics are designed to answer common scientific
+ questions, in particular those often asked of high throughput genomics
+ data. All core Bioconductor data structures are supported, where
+ appropriate. The package supports detailed views of particular genomic
+ regions, as well as genome-wide overviews. Supported overviews include
+ ideograms and grand linear views. High-level plots include sequence
+ fragment length, edge-linked interval to data view, mismatch pileup,
+ and several splicing summaries."""
+
+ homepage = "http://bioconductor.org/packages/ggbio/"
+ url = "https://git.bioconductor.org/packages/ggbio"
+ list_url = homepage
+
+ version('1.24.1', git='https://git.bioconductor.org/packages/ggbio', commit='ef04c1bca1330f37152bcc21080cbde94849a094')
+
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-hmisc', type=('build', 'run'))
+ depends_on('r-biovizbase', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-bsgenome', type=('build', 'run'))
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-organismdbi', type=('build', 'run'))
+ depends_on('r-ggally', type=('build', 'run'))
+ depends_on('r-ensembldb', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-annotationfilter', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.24.1')
diff --git a/var/spack/repos/builtin/packages/r-ggdendro/package.py b/var/spack/repos/builtin/packages/r-ggdendro/package.py
new file mode 100644
index 0000000000..e86180d4ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggdendro/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgdendro(RPackage):
+ """This is a set of tools for dendrograms and tree plots using
+ 'ggplot2'. The 'ggplot2' philosophy is to clearly separate data
+ from the presentation. Unfortunately the plot method for
+ dendrograms plots directly to a plot device without exposing
+ the data. The 'ggdendro' package resolves this by making
+ available functions that extract the dendrogram plot data.
+ The package provides implementations for tree, rpart, as well
+ as diana and agnes cluster diagrams."""
+
+ homepage = "https://cran.r-project.org/package=ggdendro"
+ url = "https://cran.rstudio.com/src/contrib/ggdendro_0.1-20.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/ggdendro"
+
+ version('0.1-20', '787552e346432c758633d8f4b2675eb6')
+
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggmap/package.py b/var/spack/repos/builtin/packages/r-ggmap/package.py
index 65a69553a1..a3c16f7a45 100644
--- a/var/spack/repos/builtin/packages/r-ggmap/package.py
+++ b/var/spack/repos/builtin/packages/r-ggmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-ggplot2/package.py b/var/spack/repos/builtin/packages/r-ggplot2/package.py
index 3b4c437f0c..c2c5e49832 100644
--- a/var/spack/repos/builtin/packages/r-ggplot2/package.py
+++ b/var/spack/repos/builtin/packages/r-ggplot2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,14 +35,19 @@ class RGgplot2(RPackage):
documentation and examples."""
homepage = "http://ggplot2.org/"
- url = "https://cran.r-project.org/src/contrib/ggplot2_2.1.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/ggplot2_2.2.1.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/ggplot2"
+ version('2.2.1', '14c5a3507bc123c6e7e9ad3bef7cee5c')
version('2.1.0', '771928cfb97c649c720423deb3ec7fd3')
+ depends_on('r@3.1:')
+
depends_on('r-digest', type=('build', 'run'))
- depends_on('r-gtable', type=('build', 'run'))
+ depends_on('r-gtable@0.1.1:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
- depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-plyr@1.7.1:', type=('build', 'run'))
depends_on('r-reshape2', type=('build', 'run'))
- depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-scales@0.4.1:', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-lazyeval', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggpubr/package.py b/var/spack/repos/builtin/packages/r-ggpubr/package.py
new file mode 100644
index 0000000000..ebc505bf5b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggpubr/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgpubr(RPackage):
+ """ggpubr: 'ggplot2' Based Publication Ready Plots"""
+
+ homepage = "http://www.sthda.com/english/rpkgs/ggpubr"
+ url = "https://cran.r-project.org/src/contrib/ggpubr_0.1.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ggpubr"
+
+ version('0.1.2', '42a5749ae44121597ef511a7424429d1')
+
+ depends_on('r@3.1.0:')
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-ggrepel', type=('build', 'run'))
+ depends_on('r-ggsci', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggrepel/package.py b/var/spack/repos/builtin/packages/r-ggrepel/package.py
new file mode 100644
index 0000000000..a44a22ee1e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggrepel/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgrepel(RPackage):
+ """ggrepel: Repulsive Text and Label Geoms for 'ggplot2'"""
+
+ homepage = "http://github.com/slowkow/ggrepel"
+ url = "https://cran.r-project.org/src/contrib/ggrepel_0.6.5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ggrepel"
+
+ version('0.6.5', '7e2732cd4840efe2dc9e4bc689cf1ee5')
+
+ depends_on('r@3.0.0:')
+ depends_on('r-ggplot2@2.0.0:', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-scales@0.3.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggsci/package.py b/var/spack/repos/builtin/packages/r-ggsci/package.py
new file mode 100644
index 0000000000..1fedf202ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ggsci/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGgsci(RPackage):
+ """ggsci: Scientific Journal and Sci-Fi Themed Color Palettes for
+ 'ggplot2'"""
+
+ homepage = "https://github.com/road2stat/ggsci"
+ url = "https://cran.r-project.org/src/contrib/ggsci_2.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ggsci"
+
+ version('2.4', '8e5dc2fcf84352cacbb91363e26c7175')
+
+ depends_on('r@3.0.2:')
+ depends_on('r-scales', type=('build', 'run'))
+ depends_on('r-ggplot2@2.0.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ggvis/package.py b/var/spack/repos/builtin/packages/r-ggvis/package.py
index 5acbff04b0..2f62ee23db 100644
--- a/var/spack/repos/builtin/packages/r-ggvis/package.py
+++ b/var/spack/repos/builtin/packages/r-ggvis/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,9 +31,10 @@ class RGgvis(RPackage):
and web graphics from 'vega'."""
homepage = "http://ggvis.rstudio.com/"
- url = "https://cran.r-project.org/src/contrib/ggvis_0.4.2.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/ggvis"
+ url = "https://cran.rstudio.com/src/contrib/ggvis_0.4.3.tar.gz"
+ list_url = homepage
+ version('0.4.3', '30297d464278a7974fb125bcc7d84e77')
version('0.4.2', '039f45e5c7f1e0652779163d7d99f922')
depends_on('r-assertthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gistr/package.py b/var/spack/repos/builtin/packages/r-gistr/package.py
index 67c34cfffc..7cbe2ecafe 100644
--- a/var/spack/repos/builtin/packages/r-gistr/package.py
+++ b/var/spack/repos/builtin/packages/r-gistr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-git2r/package.py b/var/spack/repos/builtin/packages/r-git2r/package.py
index 7c4ff3144b..3fa8baab7c 100644
--- a/var/spack/repos/builtin/packages/r-git2r/package.py
+++ b/var/spack/repos/builtin/packages/r-git2r/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,10 +31,13 @@ class RGit2r(RPackage):
data and running some basic 'Git' commands."""
homepage = "https://github.com/ropensci/git2r"
- url = "https://cran.r-project.org/src/contrib/git2r_0.15.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/git2r_0.18.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/git2r"
+ version('0.18.0', 'fb5741eb490c3d6e23a751a72336f24d')
version('0.15.0', '57658b3298f9b9aadc0dd77b4ef6a1e1')
+ depends_on('r@3.0.2:')
+
depends_on('zlib')
depends_on('openssl')
diff --git a/var/spack/repos/builtin/packages/r-glmnet/package.py b/var/spack/repos/builtin/packages/r-glmnet/package.py
index ac44d42c12..f34331b310 100644
--- a/var/spack/repos/builtin/packages/r-glmnet/package.py
+++ b/var/spack/repos/builtin/packages/r-glmnet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,10 +33,10 @@ class RGlmnet(RPackage):
multinomial. The algorithm uses cyclical coordinate descent in a path-wise
fashion, as described in the paper linked to via the URL below."""
- homepage = "http://www.jstatsoft.org/v33/i01/"
- url = "https://cran.r-project.org/src/contrib/glmnet_2.0-5.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/glmnet"
-
+ homepage = "https://cran.rstudio.com/web/packages/glmnet/index.html"
+ url = "https://cran.rstudio.com/src/contrib/glmnet_2.0-13.tar.gz"
+ list_url = homepage
+ version('2.0-13', '1dd5636388df5c3a29207d0bf1253343')
version('2.0-5', '049b18caa29529614cd684db3beaec2a')
depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-globaloptions/package.py b/var/spack/repos/builtin/packages/r-globaloptions/package.py
new file mode 100644
index 0000000000..7785d4f3a1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-globaloptions/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGlobaloptions(RPackage):
+ """It provides more controls on the option values such as validation and
+ filtering on the values, making options invisible or private."""
+
+ homepage = "https://cran.r-project.org/package=GlobalOptions"
+ url = "https://cran.rstudio.com/src/contrib/GlobalOptions_0.0.12.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/GlobalOptions"
+
+ version('0.0.12', '6c268b3b27874918ba62eb0f6aa0a3e5')
+
+ depends_on('r-testthat', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-markdown', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gmodels/package.py b/var/spack/repos/builtin/packages/r-gmodels/package.py
new file mode 100644
index 0000000000..ce4a8c9692
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gmodels/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGmodels(RPackage):
+ """Various R programming tools for model fitting."""
+
+ homepage = "http://www.sf.net/projects/r-gregmisc"
+ url = "https://cran.r-project.org/src/contrib/gmodels_2.16.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/gmodels"
+
+ version('2.16.2', 'f13e5feb2a8b9f0cd47fdf25ddc74228')
+
+ depends_on('r@1.9:')
+ depends_on('r-gdata', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gmp/package.py b/var/spack/repos/builtin/packages/r-gmp/package.py
new file mode 100644
index 0000000000..18e394f1ac
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gmp/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGmp(RPackage):
+ """Multiple Precision Arithmetic (big integers and rationals, prime
+ number tests, matrix computation), "arithmetic without limitations"
+ using the C library GMP (GNU Multiple Precision Arithmetic)."""
+
+ homepage = "http://mulcyber.toulouse.inra.fr/projects/gmp"
+ url = "https://cran.r-project.org/src/contrib/gmp_0.5-13.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/gmp"
+
+ version('0.5-13.1', '4a45d45e53bf7140720bd44f10b075ed')
+
+ depends_on('gmp@4.2.3:')
diff --git a/var/spack/repos/builtin/packages/r-go-db/package.py b/var/spack/repos/builtin/packages/r-go-db/package.py
new file mode 100644
index 0000000000..af5df1ce3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-go-db/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGoDb(RPackage):
+ """A set of annotation maps describing the entire Gene
+ Ontology assembled using data from GO."""
+
+ homepage = "https://www.bioconductor.org/packages/GO.db/"
+ url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/GO.db_3.4.1.tar.gz"
+
+ version('3.4.1', 'e16ee8921d8adc1ed3cbac2a3e35e386')
+ depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-googlevis/package.py b/var/spack/repos/builtin/packages/r-googlevis/package.py
index 29916965b4..4d7cfbd259 100644
--- a/var/spack/repos/builtin/packages/r-googlevis/package.py
+++ b/var/spack/repos/builtin/packages/r-googlevis/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-gostats/package.py b/var/spack/repos/builtin/packages/r-gostats/package.py
new file mode 100644
index 0000000000..ef4231fc7d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gostats/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGostats(RPackage):
+ """A set of tools for interacting with GO and microarray data.
+ A variety of basic manipulation tools for graphs, hypothesis
+ testing and other simple calculations."""
+
+ homepage = "https://www.bioconductor.org/packages/GOstats/"
+ url = "https://git.bioconductor.org/packages/GOstats"
+
+ version('2.42.0', git='https://git.bioconductor.org/packages/GOstats', commit='8b29709064a3b66cf1d963b2be0c996fb48c873e')
+
+ depends_on('r@3.4.1:3.4.9', when='@2.42.0')
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-category', type=('build', 'run'))
+ depends_on('r-go-db', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-rbgl', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-annotationforge', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gplots/package.py b/var/spack/repos/builtin/packages/r-gplots/package.py
new file mode 100644
index 0000000000..21c3738caa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gplots/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+#
+from spack import *
+
+
+class RGplots(RPackage):
+ """Various R Programming Tools for Plotting Data."""
+
+ homepage = "https://cran.r-project.org/package=gplots"
+ url = "https://cran.rstudio.com/src/contrib/gplots_3.0.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/gplots"
+ version('3.0.1', '6116822401d55add044beb120ca93d14')
+ depends_on('r-gtools', type=('build', 'run'))
+ depends_on('r-gdata', type=('build', 'run'))
+ depends_on('r-catools', type=('build', 'run'))
+ depends_on('r-kernsmooth', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-graph/package.py b/var/spack/repos/builtin/packages/r-graph/package.py
new file mode 100644
index 0000000000..a7b6140de8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-graph/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGraph(RPackage):
+ """A package that implements some simple graph handling capabilities."""
+
+ homepage = "https://www.bioconductor.org/packages/graph/"
+ url = "https://git.bioconductor.org/packages/graph"
+
+ version('1.54.0', git='https://git.bioconductor.org/packages/graph', commit='2a8b08520096241620421078fc1098f4569c7301')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.54.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gridbase/package.py b/var/spack/repos/builtin/packages/r-gridbase/package.py
index 73d87c7e49..4353f16819 100644
--- a/var/spack/repos/builtin/packages/r-gridbase/package.py
+++ b/var/spack/repos/builtin/packages/r-gridbase/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-gridextra/package.py b/var/spack/repos/builtin/packages/r-gridextra/package.py
index 304035dc06..2b64580c4e 100644
--- a/var/spack/repos/builtin/packages/r-gridextra/package.py
+++ b/var/spack/repos/builtin/packages/r-gridextra/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,10 +29,11 @@ class RGridextra(RPackage):
"""Provides a number of user-level functions to work with "grid" graphics,
notably to arrange multiple grid-based plots on a page, and draw tables."""
- homepage = "https://github.com/baptiste/gridextra"
+ homepage = "https://cran.r-project.org/package=gridExtra"
url = "https://cran.r-project.org/src/contrib/gridExtra_2.2.1.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/gridExtra"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/gridExtras"
+ version('2.3', '01e0ea88610756a0fd3b260e83c9bd43')
version('2.2.1', '7076c2122d387c7ef3add69a1c4fc1b2')
depends_on('r-gtable', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gseabase/package.py b/var/spack/repos/builtin/packages/r-gseabase/package.py
new file mode 100644
index 0000000000..b02b16289b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gseabase/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGseabase(RPackage):
+ """This package provides classes and methods to support Gene
+ Set Enrichment Analysis (GSEA)."""
+
+ homepage = "https://www.bioconductor.org/packages/GSEABase/"
+ url = "https://git.bioconductor.org/packages/GSEABase"
+
+ version('1.38.2', git='https://git.bioconductor.org/packages/GSEABase', commit='84c9f10c316163118ca990900a7a67555b96e75b')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.38.2')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gsubfn/package.py b/var/spack/repos/builtin/packages/r-gsubfn/package.py
new file mode 100644
index 0000000000..858f7f2e39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gsubfn/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGsubfn(RPackage):
+ """gsubfn is like gsub but can take a replacement function or
+ certain other objects instead of the replacement string. Matches
+ and back references are input to the replacement function and
+ replaced by the function output. gsubfn can be used to split
+ strings based on content rather than delimiters and for
+ quasi-perl-style string interpolation. The package also has
+ facilities for translating formulas to functions and allowing
+ such formulas in function calls instead of functions. This can
+ be used with R functions such as apply, sapply, lapply, optim,
+ integrate, xyplot, Filter and any other function that expects
+ another function as an input argument or functions like cat or
+ sql calls that may involve strings where substitution is
+ desirable."""
+
+ homepage = "https://cran.r-project.org/package=gsubfn"
+ url = "https://cran.r-project.org/src/contrib/gsubfn_0.6-6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/gsubfn"
+
+ version('0.6-6', '94195ff3502706c736d9c593c07252bc')
+
+ depends_on('r-proto', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-gtable/package.py b/var/spack/repos/builtin/packages/r-gtable/package.py
index 236416755b..498e5ba2c3 100644
--- a/var/spack/repos/builtin/packages/r-gtable/package.py
+++ b/var/spack/repos/builtin/packages/r-gtable/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-gtools/package.py b/var/spack/repos/builtin/packages/r-gtools/package.py
index 632187b49e..0c74d8449a 100644
--- a/var/spack/repos/builtin/packages/r-gtools/package.py
+++ b/var/spack/repos/builtin/packages/r-gtools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-gtrellis/package.py b/var/spack/repos/builtin/packages/r-gtrellis/package.py
new file mode 100644
index 0000000000..64526035db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gtrellis/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGtrellis(RPackage):
+ """Genome level Trellis graph visualizes genomic data conditioned by
+ genomic categories (e.g. chromosomes). For each genomic category,
+ multiple dimensional data which are represented as tracks describe
+ different features from different aspects. This package provides high
+ flexibility to arrange genomic categories and to add self-defined
+ graphics in the plot."""
+
+ homepage = "https://bioconductor.org/packages/gtrellis/"
+ url = "https://git.bioconductor.org/packages/gtrellis"
+ list_url = homepage
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/gtrellis', commit='f813b420a008c459f63a2a13e5e64c5507c4c472')
+
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-circlize', type=('build', 'run'))
+ depends_on('r-getoptlong', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
diff --git a/var/spack/repos/builtin/packages/r-gviz/package.py b/var/spack/repos/builtin/packages/r-gviz/package.py
new file mode 100644
index 0000000000..ddb56cc681
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-gviz/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RGviz(RPackage):
+ """Genomic data analyses requires integrated visualization
+ of known genomic information and new experimental data. Gviz
+ uses the biomaRt and the rtracklayer packages to perform live
+ annotation queries to Ensembl and UCSC and translates this to
+ e.g. gene/transcript structures in viewports of the grid
+ graphics package. This results in genomic information plotted
+ together with your data."""
+
+ homepage = "http://bioconductor.org/packages/Gviz/"
+ url = "https://git.bioconductor.org/packages/Gviz"
+
+ version('1.20.0', git='https://git.bioconductor.org/packages/Gviz', commit='299b8255e1b03932cebe287c3690d58c88f5ba5c')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.20.0')
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-biomart', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-bsgenome', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-biovizbase', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-latticeextra', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hexbin/package.py b/var/spack/repos/builtin/packages/r-hexbin/package.py
index 0a5c66c1a3..179914fca3 100644
--- a/var/spack/repos/builtin/packages/r-hexbin/package.py
+++ b/var/spack/repos/builtin/packages/r-hexbin/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,6 +34,6 @@ class RHexbin(RPackage):
url = "https://cran.r-project.org/src/contrib/hexbin_1.27.1.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/hexbin"
- version('1.27.1', '7f380390c6511e97df10a810a3b3bb7c')
+ version('1.27.1', '7590ed158f8a57a71901bf6ca26f81be')
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-highr/package.py b/var/spack/repos/builtin/packages/r-highr/package.py
index 13164f9c60..cc89cfd80b 100644
--- a/var/spack/repos/builtin/packages/r-highr/package.py
+++ b/var/spack/repos/builtin/packages/r-highr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-hmisc/package.py b/var/spack/repos/builtin/packages/r-hmisc/package.py
new file mode 100644
index 0000000000..436c3279ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-hmisc/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RHmisc(RPackage):
+ """Contains many functions useful for data analysis, high-level
+ graphics, utility operations, functions for computing sample size
+ and power, importing and annotating datasets, imputing missing
+ values, advanced table making, variable clustering, character
+ string manipulation, conversion of R objects to LaTeX and html
+ code, and recoding variables."""
+
+ homepage = "http://biostat.mc.vanderbilt.edu/Hmisc"
+ url = "https://cran.rstudio.com/src/contrib/Hmisc_4.0-3.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/Hmisc"
+
+ version('4.0-3', '7091924db1e473419d8116c3335f82da')
+
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-formula', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-latticeextra', type=('build', 'run'))
+ depends_on('r-acepack', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-data-table', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-base64enc', type=('build', 'run'))
+ depends_on('r-htmltable', type=('build', 'run'))
+ depends_on('r-viridis', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hms/package.py b/var/spack/repos/builtin/packages/r-hms/package.py
new file mode 100644
index 0000000000..ec1cd6dd39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-hms/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RHms(RPackage):
+ """Implements an S3 class for storing and formatting time-of-day values,
+ based on the 'difftime' class."""
+
+ homepage = "https://cran.rstudio.com/web/packages/hms/index.html"
+ url = "https://cran.rstudio.com/src/contrib/hms_0.3.tar.gz"
+
+ version('0.3', '92c4a0cf0c402a35145b5bb57212873e')
diff --git a/var/spack/repos/builtin/packages/r-htmltable/package.py b/var/spack/repos/builtin/packages/r-htmltable/package.py
new file mode 100644
index 0000000000..f142a5221a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-htmltable/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RHtmltable(RPackage):
+ """Tables with state-of-the-art layout elements such as row
+ spanners, column spanners, table spanners, zebra striping, and
+ more. While allowing advanced layout, the underlying css-structure
+ is simple in order to maximize compatibility with word processors
+ such as 'MS Word' or 'LibreOffice'. The package also contains a
+ few text formatting functions that help outputting text
+ compatible with HTML/'LaTeX'."""
+
+ homepage = "https://CRAN.R-project.org/package=htmlTable"
+ url = "https://cran.rstudio.com/src/contrib/htmlTable_1.9.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/htmlTable"
+
+ version('1.9', '08c62c19e1ffe570e7d8fa57db5094b9')
+
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-checkmate', type=('build', 'run'))
+ depends_on('r-htmlwidgets', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-htmltools/package.py b/var/spack/repos/builtin/packages/r-htmltools/package.py
index 9374e1f9cc..3ed8a19f22 100644
--- a/var/spack/repos/builtin/packages/r-htmltools/package.py
+++ b/var/spack/repos/builtin/packages/r-htmltools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,10 @@ class RHtmltools(RPackage):
"""Tools for HTML generation and output."""
homepage = "https://github.com/rstudio/htmltools"
- url = "https://cran.r-project.org/src/contrib/htmltools_0.3.5.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/htmltools"
+ url = "https://cran.rstudio.com/src/contrib/htmltools_0.3.6.tar.gz"
+ list_url = homepage
+ version('0.3.6', '336419c2143f958862e01ef1bbc9c253')
version('0.3.5', '5f001aff4a39e329f7342dcec5139724')
depends_on('r-digest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-htmlwidgets/package.py b/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
index 85ab593245..1dcbbe5062 100644
--- a/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
+++ b/var/spack/repos/builtin/packages/r-htmlwidgets/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,12 @@ class RHtmlwidgets(RPackage):
including the R console, 'R Markdown' documents, and 'Shiny' web
applications."""
- homepage = "https://github.com/ramnathv/htmlwidgets"
- url = "https://cran.r-project.org/src/contrib/htmlwidgets_0.6.tar.gz"
+ homepage = "https://cran.r-project.org/package=htmlTable"
+ url = "https://cran.rstudio.com/src/contrib/htmlwidgets_0.9.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/htmlwidgets"
+ version('0.9', 'b42730691eca8fc9a28903c272d11605')
+ version('0.8', '06b0404a00e25736946607a36ee5351d')
version('0.6', '7fa522d2eda97593978021bda9670c0e')
depends_on('r-htmltools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-httpuv/package.py b/var/spack/repos/builtin/packages/r-httpuv/package.py
index e4b60893b6..1b5f45961f 100644
--- a/var/spack/repos/builtin/packages/r-httpuv/package.py
+++ b/var/spack/repos/builtin/packages/r-httpuv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,9 +35,12 @@ class RHttpuv(RPackage):
information.)"""
homepage = "https://github.com/rstudio/httpuv"
- url = "https://cran.r-project.org/src/contrib/httpuv_1.3.3.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/httpuv"
+ url = "https://cran.rstudio.com/src/contrib/httpuv_1.3.5.tar.gz"
+ list_url = homepage
+ version('1.3.5', '48d894ff0067148f41a651634fbb2012')
version('1.3.3', 'c78ae068cf59e949b9791be987bb4489')
- depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r@2.15.1:')
+
+ depends_on('r-rcpp@0.11.0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-httr/package.py b/var/spack/repos/builtin/packages/r-httr/package.py
index 55a5b0efab..a533f6cbd9 100644
--- a/var/spack/repos/builtin/packages/r-httr/package.py
+++ b/var/spack/repos/builtin/packages/r-httr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,13 +31,17 @@ class RHttr(RPackage):
request components (authenticate(), add_headers() and so on)."""
homepage = "https://github.com/hadley/httr"
- url = "https://cran.r-project.org/src/contrib/httr_1.1.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/httr_1.2.1.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/httr"
+ version('1.3.1', '5acfb6b2a6f2f26cd6dfad0458fe3351')
+ version('1.2.1', 'c469948dedac9ab3926f23cf484b33d9')
version('1.1.0', '5ffbbc5c2529e49f00aaa521a2b35600')
+ depends_on('r@3.0.0:')
+
depends_on('r-jsonlite', type=('build', 'run'))
depends_on('r-mime', type=('build', 'run'))
- depends_on('r-curl', type=('build', 'run'))
+ depends_on('r-curl@0.9.1:', type=('build', 'run'))
depends_on('r-openssl', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-hwriter/package.py b/var/spack/repos/builtin/packages/r-hwriter/package.py
new file mode 100644
index 0000000000..8c67f4bb1a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-hwriter/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RHwriter(RPackage):
+ """Easy-to-use and versatile functions to
+ output R objects in HTML format."""
+
+ homepage = "https://cran.rstudio.com/web/packages/hwriter/index.html"
+ url = "https://cran.rstudio.com/src/contrib/hwriter_1.3.2.tar.gz"
+ list_url = homepage
+ version('1.3.2', '9eef49df2eb68bbf3a16b5860d933517')
diff --git a/var/spack/repos/builtin/packages/r-hypergraph/package.py b/var/spack/repos/builtin/packages/r-hypergraph/package.py
new file mode 100644
index 0000000000..b6fc0df172
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-hypergraph/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RHypergraph(RPackage):
+ """A package that implements some simple capabilities for
+ representing and manipulating hypergraphs."""
+
+ homepage = "https://www.bioconductor.org/packages/hypergraph/"
+ url = "https://git.bioconductor.org/packages/hypergraph"
+
+ version('1.48.0', git='https://git.bioconductor.org/packages/hypergraph', commit='a4c19ea0b5f15204f706a7bfdea5363706382820')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.48.0')
+ depends_on('r-graph', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-igraph/package.py b/var/spack/repos/builtin/packages/r-igraph/package.py
index 993a80ae1c..b8a715b9ae 100644
--- a/var/spack/repos/builtin/packages/r-igraph/package.py
+++ b/var/spack/repos/builtin/packages/r-igraph/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-illuminaio/package.py b/var/spack/repos/builtin/packages/r-illuminaio/package.py
new file mode 100644
index 0000000000..9d0993fb8f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-illuminaio/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RIlluminaio(RPackage):
+ """Tools for parsing Illumina's microarray output files, including
+ IDAT."""
+
+ homepage = "http://bioconductor.org/packages/illuminaio/"
+ url = "https://git.bioconductor.org/packages/illuminaio"
+ list_url = homepage
+
+ version('0.18.0', git='https://git.bioconductor.org/packages/illuminaio', commit='e6b8ab1f8eacb760aebdb4828e9cfbf07da06eda')
+
+ depends_on('r-base64', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@0.18.0')
diff --git a/var/spack/repos/builtin/packages/r-impute/package.py b/var/spack/repos/builtin/packages/r-impute/package.py
new file mode 100644
index 0000000000..b8bf956ac1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-impute/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RImpute(RPackage):
+ """Imputation for microarray data (currently KNN only)."""
+
+ homepage = "https://www.bioconductor.org/packages/impute/"
+ url = "https://git.bioconductor.org/packages/impute"
+
+ version('1.50.1', git='https://git.bioconductor.org/packages/impute', commit='31d1cc141797afdc83743e1d95aab8a90ee19b71')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.50.1')
diff --git a/var/spack/repos/builtin/packages/r-influencer/package.py b/var/spack/repos/builtin/packages/r-influencer/package.py
index bbfed54e25..53f1ba67a7 100644
--- a/var/spack/repos/builtin/packages/r-influencer/package.py
+++ b/var/spack/repos/builtin/packages/r-influencer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,6 +37,7 @@ class RInfluencer(RPackage):
homepage = "https://github.com/rcc-uchicago/influenceR"
url = "https://cran.r-project.org/src/contrib/influenceR_0.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/influenceR"
version('0.1.0', '6c8b6decd78c341364b5811fb3050ba5')
diff --git a/var/spack/repos/builtin/packages/r-inline/package.py b/var/spack/repos/builtin/packages/r-inline/package.py
index f30c87dc9b..235aacfe19 100644
--- a/var/spack/repos/builtin/packages/r-inline/package.py
+++ b/var/spack/repos/builtin/packages/r-inline/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py b/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py
new file mode 100644
index 0000000000..8b64962096
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-interactivedisplaybase/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RInteractivedisplaybase(RPackage):
+ """The interactiveDisplayBase package contains the the basic methods
+ needed to generate interactive Shiny based display methods for
+ Bioconductor objects."""
+
+ homepage = "https://bioconductor.org/packages/interactiveDisplayBase/"
+ url = "https://git.bioconductor.org/packages/interactiveDisplayBase"
+ list_url = homepage
+
+ version('1.14.0', git='https://git.bioconductor.org/packages/interactiveDisplayBase', commit='e2ccc7eefdd904e3b1032dc6b3f4a28d08c1cd40')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.14.0')
diff --git a/var/spack/repos/builtin/packages/r-ipred/package.py b/var/spack/repos/builtin/packages/r-ipred/package.py
new file mode 100644
index 0000000000..97d84f5361
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ipred/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RIpred(RPackage):
+ """Improved predictive models by indirect classification and bagging for
+ classification, regression and survival problems as well as resampling
+ based estimators of prediction error."""
+
+ homepage = "https://cran.r-project.org/package=ipred"
+ url = "https://cran.r-project.org/src/contrib/ipred_0.9-5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ipred"
+
+ version('0.9-5', 'ce8768547a7aa9554ad3650b18ea3cbd')
+
+ depends_on('r@2.10:')
+
+ depends_on('r-rpart@3.1-8:', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-nnet', type=('build', 'run'))
+ depends_on('r-class', type=('build', 'run'))
+ depends_on('r-prodlim', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-iranges/package.py b/var/spack/repos/builtin/packages/r-iranges/package.py
new file mode 100644
index 0000000000..c53b2773a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-iranges/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RIranges(RPackage):
+ """Provides efficient low-level and highly
+ reusable S4 classes for storing,
+ manipulating and aggregating over annotated ranges of
+ integers. Implements an
+ algebra of range operations, including efficient
+ algorithms for finding overlaps
+ and nearest neighbors. Defines efficient list-like
+ classes for storing, transforming
+ and aggregating large grouped data,
+ i.e., collections of atomic vectors and DataFrames."""
+
+ homepage = "https://www.bioconductor.org/packages/IRanges/"
+ url = "https://git.bioconductor.org/packages/IRanges"
+ list_url = homepage
+ version('2.10.5', git='https://git.bioconductor.org/packages/IRanges', commit='b00d1d5025e3c480d17c13100f0da5a0132b1614')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.10.5')
diff --git a/var/spack/repos/builtin/packages/r-irdisplay/package.py b/var/spack/repos/builtin/packages/r-irdisplay/package.py
index f02c00d8ba..1edbf40c1a 100644
--- a/var/spack/repos/builtin/packages/r-irdisplay/package.py
+++ b/var/spack/repos/builtin/packages/r-irdisplay/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-irkernel/package.py b/var/spack/repos/builtin/packages/r-irkernel/package.py
index e69b77f9f0..62daf2e0ca 100644
--- a/var/spack/repos/builtin/packages/r-irkernel/package.py
+++ b/var/spack/repos/builtin/packages/r-irkernel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-irlba/package.py b/var/spack/repos/builtin/packages/r-irlba/package.py
index e0d1b32565..21e3df5e9f 100644
--- a/var/spack/repos/builtin/packages/r-irlba/package.py
+++ b/var/spack/repos/builtin/packages/r-irlba/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,9 +31,10 @@ class RIrlba(RPackage):
matrices."""
homepage = "https://cran.r-project.org/web/packages/irlba/index.html"
- url = "https://cran.r-project.org/src/contrib/irlba_2.0.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/irlba_2.1.2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/irlba"
+ version('2.1.2', '290940abf6662ed10c0c5a8db1bc6e88')
version('2.0.0', '557674cf8b68fea5b9f231058c324d26')
depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-iso/package.py b/var/spack/repos/builtin/packages/r-iso/package.py
new file mode 100644
index 0000000000..f4be39ee6e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-iso/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RIso(RPackage):
+ """Linear order and unimodal order (univariate) isotonic regression;
+ bivariate isotonic regression with linear order on both variables."""
+
+ homepage = "https://cran.r-project.org/package=Iso"
+ url = "https://cran.rstudio.com/src/contrib/Iso_0.0-17.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/Iso"
+
+ version('0.0-17', 'bf99821efb6a44fa75fdbf5e5c4c91e4')
diff --git a/var/spack/repos/builtin/packages/r-iterators/package.py b/var/spack/repos/builtin/packages/r-iterators/package.py
index 38dff8f9ac..1e864864e3 100644
--- a/var/spack/repos/builtin/packages/r-iterators/package.py
+++ b/var/spack/repos/builtin/packages/r-iterators/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-jpeg/package.py b/var/spack/repos/builtin/packages/r-jpeg/package.py
index 02c42b5ff1..5a11610fc9 100644
--- a/var/spack/repos/builtin/packages/r-jpeg/package.py
+++ b/var/spack/repos/builtin/packages/r-jpeg/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-jsonlite/package.py b/var/spack/repos/builtin/packages/r-jsonlite/package.py
index 7368187af5..5ed0d42616 100644
--- a/var/spack/repos/builtin/packages/r-jsonlite/package.py
+++ b/var/spack/repos/builtin/packages/r-jsonlite/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,8 +38,10 @@ class RJsonlite(RPackage):
use with dynamic data in systems and applications."""
homepage = "https://github.com/jeroenooms/jsonlite"
- url = "https://cran.r-project.org/src/contrib/jsonlite_1.0.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/jsonlite"
+ url = "https://cran.rstudio.com/src/contrib/jsonlite_1.5.tar.gz"
+ list_url = homepage
+ version('1.5', '2a81c261a702fccbbd5d2b32df108f76')
+ version('1.2', '80cd2678ae77254be470f5931db71c51')
version('1.0', 'c8524e086de22ab39b8ac8000220cc87')
version('0.9.21', '4fc382747f88a79ff0718a0d06bed45d')
diff --git a/var/spack/repos/builtin/packages/r-kegg-db/package.py b/var/spack/repos/builtin/packages/r-kegg-db/package.py
new file mode 100644
index 0000000000..e205b1d42a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-kegg-db/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RKeggDb(RPackage):
+ """A set of annotation maps for KEGG assembled using data from KEGG."""
+
+ homepage = "https://www.bioconductor.org/packages/KEGG.db/"
+ url = "https://www.bioconductor.org/packages/release/data/annotation/src/contrib/KEGG.db_3.2.3.tar.gz"
+
+ version('3.2.3', '023ac22f57063627c2e62d1ae5e011b0')
+ depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-keggrest/package.py b/var/spack/repos/builtin/packages/r-keggrest/package.py
new file mode 100644
index 0000000000..b9a6e6a291
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-keggrest/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RKeggrest(RPackage):
+ """This package provides functions and routines useful in the analysis
+ of somatic signatures (cf. L. Alexandrov et al., Nature 2013). In
+ particular, functions to perform a signature analysis with known
+ signatures (LCD = linear combination decomposition) and a signature
+ analysis on stratified mutational catalogue (SMC = stratify mutational
+ catalogue) are provided."""
+
+ homepage = "http://bioconductor.org/packages/KEGGREST"
+ url = "https://git.bioconductor.org/packages/KEGGREST"
+ list_url = homepage
+
+ version('1.2.0', git='https://git.bioconductor.org/packages/KEGGREST', commit='ed48de0def57a909894e237fa4731c4a052d8849')
+
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-png', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-kernlab/package.py b/var/spack/repos/builtin/packages/r-kernlab/package.py
new file mode 100644
index 0000000000..9ff25832be
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-kernlab/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RKernlab(RPackage):
+ """Kernel-based machine learning methods for classification, regression,
+ clustering, novelty detection, quantile regression and dimensionality
+ reduction. Among other methods 'kernlab' includes Support Vector Machines,
+ Spectral Clustering, Kernel PCA, Gaussian Processes and a QP solver."""
+
+ homepage = "https://cran.r-project.org/package=kernlab"
+ url = "https://cran.r-project.org/src/contrib/kernlab_0.9-25.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/kernlab"
+
+ version('0.9-25', '1182a2a336a79fd2cf70b4bc5a35353f')
+
+ depends_on('r@2.10:')
diff --git a/var/spack/repos/builtin/packages/r-kernsmooth/package.py b/var/spack/repos/builtin/packages/r-kernsmooth/package.py
new file mode 100644
index 0000000000..e6fd8512c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-kernsmooth/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RKernsmooth(RPackage):
+ """Functions for kernel smoothing (and density estimation)."""
+
+ homepage = "https://cran.r-project.org/package=KernSmooth"
+ url = "https://cran.r-project.org/src/contrib/KernSmooth_2.23-15.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/KernSmooth"
+
+ version('2.23-15', '746cdf26dec72004cf19978e87dcc982')
+
+ depends_on('r@2.5.0:')
diff --git a/var/spack/repos/builtin/packages/r-kknn/package.py b/var/spack/repos/builtin/packages/r-kknn/package.py
new file mode 100644
index 0000000000..86d67fb4d4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-kknn/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RKknn(RPackage):
+ """Weighted k-Nearest Neighbors for Classification, Regression and
+ Clustering."""
+
+ homepage = "https://cran.r-project.org/package=kknn"
+ url = "https://cran.r-project.org/src/contrib/kknn_1.3.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/kknn"
+
+ version('1.3.1', '372cd84f618cd5005f8c4c5721755117')
+
+ depends_on('r@2.10:')
+
+ depends_on('r-igraph@1.0:', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-knitr/package.py b/var/spack/repos/builtin/packages/r-knitr/package.py
index dd92474944..1e0e51a3f1 100644
--- a/var/spack/repos/builtin/packages/r-knitr/package.py
+++ b/var/spack/repos/builtin/packages/r-knitr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,11 @@ class RKnitr(RPackage):
"""Provides a general-purpose tool for dynamic report generation in R using
Literate Programming techniques."""
- homepage = "http://yihui.name/knitr/"
+ homepage = "https://cran.r-project.org/package=knitr"
url = "https://cran.rstudio.com/src/contrib/knitr_1.14.tar.gz"
- list_url = "https://cran.rstudio.com/src/contrib/Archive/knitr"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/knitr"
+ version('1.17', '4407ccf8f2a51629800d6d5243cf3e70')
version('1.14', 'ef0fbeaa9372f99ffbc57212a7781511')
version('0.6', 'c67d6db84cd55594a9e870c90651a3db')
diff --git a/var/spack/repos/builtin/packages/r-labeling/package.py b/var/spack/repos/builtin/packages/r-labeling/package.py
index 7c288c63a4..02790fe88d 100644
--- a/var/spack/repos/builtin/packages/r-labeling/package.py
+++ b/var/spack/repos/builtin/packages/r-labeling/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-lambda-r/package.py b/var/spack/repos/builtin/packages/r-lambda-r/package.py
new file mode 100644
index 0000000000..914826af97
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lambda-r/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLambdaR(RPackage):
+ """A language extension to efficiently write functional programs in R.
+ Syntax extensions include multi-part function definitions, pattern
+ matching, guard statements, built-in (optional) type safety."""
+
+ homepage = "https://cran.rstudio.com/web/packages/lambda.r/index.html"
+ url = "https://cran.rstudio.com/src/contrib/lambda.r_1.2.tar.gz"
+
+ version('1.2', 'bda49898b85ad5902880a31f43b432e2')
diff --git a/var/spack/repos/builtin/packages/r-laplacesdemon/package.py b/var/spack/repos/builtin/packages/r-laplacesdemon/package.py
new file mode 100644
index 0000000000..3af2665c3e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-laplacesdemon/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLaplacesdemon(RPackage):
+ """Provides a complete environment for Bayesian inference using a variety
+ of different samplers (see ?LaplacesDemon for an overview). The README
+ describes the history of the package development process."""
+
+ homepage = "https://github.com/LaplacesDemonR/LaplacesDemon"
+ url = "https://cran.r-project.org/src/contrib/LaplacesDemon_16.0.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/LaplacesDemon"
+
+ version('16.0.1', '1e4dab2dd0e27251734d68b0bfdbe911')
diff --git a/var/spack/repos/builtin/packages/r-lattice/package.py b/var/spack/repos/builtin/packages/r-lattice/package.py
index ed3c19f2e6..49714423a1 100644
--- a/var/spack/repos/builtin/packages/r-lattice/package.py
+++ b/var/spack/repos/builtin/packages/r-lattice/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,8 @@ class RLattice(RPackage):
handle most nonstandard requirements. See ?Lattice for an introduction."""
homepage = "http://lattice.r-forge.r-project.org/"
- url = "https://cran.r-project.org/src/contrib/lattice_0.20-34.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/lattice"
+ url = "https://cran.rstudio.com/src/contrib/lattice_0.20-35.tar.gz"
+ list_url = homepage
+ version('0.20-35', '07f1814623b3da6278ca61554ff7bfe6')
version('0.20-34', 'c2a648b22d4206ae7526fb70b8e90fed')
diff --git a/var/spack/repos/builtin/packages/r-latticeextra/package.py b/var/spack/repos/builtin/packages/r-latticeextra/package.py
new file mode 100644
index 0000000000..86c9d93ed7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-latticeextra/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLatticeextra(RPackage):
+ """Building on the infrastructure provided by the lattice package,
+ this package provides several new high-level functions and methods,
+ as well as additional utilities such as panel and axis annotation
+ functions."""
+
+ homepage = "http://latticeextra.r-forge.r-project.org/"
+ url = "https://cran.rstudio.com/src/contrib/latticeExtra_0.6-28.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/latticeExtra"
+
+ version('0.6-28', '771938f25d0983763369b48a1153b26c')
+
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lava/package.py b/var/spack/repos/builtin/packages/r-lava/package.py
new file mode 100644
index 0000000000..ae4218e1db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lava/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLava(RPackage):
+ """Estimation and simulation of latent variable models."""
+
+ homepage = "https://cran.r-project.org/package=lava"
+ url = "https://cran.r-project.org/src/contrib/lava_1.4.7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/lava"
+
+ version('1.4.7', '28039248a7039ba9281d172e4dbf9543')
+
+ depends_on('r@3.0:')
+
+ depends_on('r-numderiv', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lazyeval/package.py b/var/spack/repos/builtin/packages/r-lazyeval/package.py
index ab41a39675..3746851d00 100644
--- a/var/spack/repos/builtin/packages/r-lazyeval/package.py
+++ b/var/spack/repos/builtin/packages/r-lazyeval/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-leaflet/package.py b/var/spack/repos/builtin/packages/r-leaflet/package.py
index 62c2cf3c7c..ef6debbdbb 100644
--- a/var/spack/repos/builtin/packages/r-leaflet/package.py
+++ b/var/spack/repos/builtin/packages/r-leaflet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-leaps/package.py b/var/spack/repos/builtin/packages/r-leaps/package.py
new file mode 100644
index 0000000000..e27874ec27
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-leaps/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLeaps(RPackage):
+ """leaps: Regression Subset Selection"""
+
+ homepage = "https://CRAN.R-project.org/package=leaps"
+ url = "https://cran.r-project.org/src/contrib/leaps_3.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/leaps"
+
+ version('3.0', '30823138890680e0493d1491c8f43edc')
diff --git a/var/spack/repos/builtin/packages/r-learnbayes/package.py b/var/spack/repos/builtin/packages/r-learnbayes/package.py
new file mode 100644
index 0000000000..71904b3d24
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-learnbayes/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLearnbayes(RPackage):
+ """LearnBayes contains a collection of functions helpful in learning the
+ basic tenets of Bayesian statistical inference. It contains functions for
+ summarizing basic one and two parameter posterior distributions and
+ predictive distributions. It contains MCMC algorithms for summarizing
+ posterior distributions defined by the user. It also contains functions
+ for regression models, hierarchical models, Bayesian tests, and
+ illustrations of Gibbs sampling."""
+
+ homepage = "https://CRAN.R-project.org/package=LearnBayes"
+ url = "https://cran.r-project.org/src/contrib/LearnBayes_2.15.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/LearnBayes"
+
+ version('2.15', '213713664707bc79fd6d3a109555ef76')
diff --git a/var/spack/repos/builtin/packages/r-limma/package.py b/var/spack/repos/builtin/packages/r-limma/package.py
new file mode 100644
index 0000000000..8c4df2b059
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-limma/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLimma(RPackage):
+ """Data analysis, linear models and differential expression
+ for microarray data."""
+
+ homepage = "https://www.bioconductor.org/packages/limma/"
+ url = "https://git.bioconductor.org/packages/limma"
+ list_url = homepage
+
+ version('3.32.10', git='https://git.bioconductor.org/packages/limma', commit='593edf28e21fe054d64137ae271b8a52ab05bc60')
+ version('3.32.6', 'df5dc2b85189a24e939efa3a8e6abc41')
+
+ depends_on('r@3.4.0:3.4.9', when='@3.32.10')
diff --git a/var/spack/repos/builtin/packages/r-lme4/package.py b/var/spack/repos/builtin/packages/r-lme4/package.py
index 0ca545ced9..c7565e381e 100644
--- a/var/spack/repos/builtin/packages/r-lme4/package.py
+++ b/var/spack/repos/builtin/packages/r-lme4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-lmtest/package.py b/var/spack/repos/builtin/packages/r-lmtest/package.py
index 3d17dd2a7e..160fd3669b 100644
--- a/var/spack/repos/builtin/packages/r-lmtest/package.py
+++ b/var/spack/repos/builtin/packages/r-lmtest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-locfit/package.py b/var/spack/repos/builtin/packages/r-locfit/package.py
new file mode 100644
index 0000000000..5153b3450f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-locfit/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLocfit(RPackage):
+ """Local regression, likelihood and density estimation."""
+
+ homepage = "https://cran.rstudio.com/web/packages/locfit/index.html"
+ url = "https://cran.rstudio.com/src/contrib/locfit_1.5-9.1.tar.gz"
+ list_url = homepage
+
+ version('1.5-9.1', '38af7791c9cda78e2804020e65ac7fb4')
+
+ depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-log4r/package.py b/var/spack/repos/builtin/packages/r-log4r/package.py
new file mode 100644
index 0000000000..c6719cbe30
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-log4r/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLog4r(RPackage):
+ """logr4 provides an object-oriented logging system that uses an
+ API roughly equivalent to log4j and its related variants."""
+
+ homepage = "https://cran.r-project.org/package=log4r"
+ url = "https://cran.rstudio.com/src/contrib/log4r_0.2.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/log4r"
+
+ version('0.2', 'f3fcb7b1f48526c6543b2e00e278ff65')
+
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-lpsolve/package.py b/var/spack/repos/builtin/packages/r-lpsolve/package.py
new file mode 100644
index 0000000000..996725f129
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lpsolve/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLpsolve(RPackage):
+ """Lp_solve is freely available (under LGPL 2) software for solving
+ linear, integer and mixed integer programs. In this
+ implementation we supply a "wrapper" function in C and some R
+ functions that solve general linear/integer problems, assignment
+ problems, and transportation problems. This version calls
+ lp_solve"""
+
+ homepage = "https://cran.r-project.org/web/packages/lpSolve/index.html"
+ url = "https://cran.r-project.org/src/contrib/lpSolve_5.6.13.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/lpSolve"
+
+ version('5.6.13', '8471654d9ae76e0f85ff3449433d4bc1')
diff --git a/var/spack/repos/builtin/packages/r-lsei/package.py b/var/spack/repos/builtin/packages/r-lsei/package.py
new file mode 100644
index 0000000000..a2de608256
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-lsei/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RLsei(RPackage):
+ """It contains functions that solve least squares linear regression
+ problems under linear equality/inequality constraints. Functions for
+ solving quadratic programming problems are also available, which
+ transform such problems into least squares ones first. It is developed
+ based on the 'Fortran' program of Lawson and Hanson (1974, 1995), which
+ is public domain and available at
+ <http://www.netlib.org/lawson-hanson>."""
+
+ homepage = "https://cran.r-project.org/package=lsei"
+ url = "https://cran.rstudio.com/src/contrib/lsei_1.2-0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/lsei"
+
+ version('1.2-0', '18a9322d7a79ecb86b8788645c4b7e3c')
diff --git a/var/spack/repos/builtin/packages/r-lubridate/package.py b/var/spack/repos/builtin/packages/r-lubridate/package.py
index 159e84e292..bdb314e673 100644
--- a/var/spack/repos/builtin/packages/r-lubridate/package.py
+++ b/var/spack/repos/builtin/packages/r-lubridate/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-magic/package.py b/var/spack/repos/builtin/packages/r-magic/package.py
index b0987adcd7..b6cd78be63 100644
--- a/var/spack/repos/builtin/packages/r-magic/package.py
+++ b/var/spack/repos/builtin/packages/r-magic/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-magrittr/package.py b/var/spack/repos/builtin/packages/r-magrittr/package.py
index 915797e11d..528fb7ff67 100644
--- a/var/spack/repos/builtin/packages/r-magrittr/package.py
+++ b/var/spack/repos/builtin/packages/r-magrittr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-makecdfenv/package.py b/var/spack/repos/builtin/packages/r-makecdfenv/package.py
new file mode 100644
index 0000000000..8c74fc532b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-makecdfenv/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMakecdfenv(RPackage):
+ """This package has two functions. One reads a Affymetrix
+ chip description file (CDF) and creates a hash table environment
+ containing the location/probe set membership mapping.
+ The other creates a package that automatically loads
+ that environment."""
+
+ homepage = "https://www.bioconductor.org/packages/makecdfenv/"
+ url = "https://git.bioconductor.org/packages/makecdfenv"
+
+ version('1.52.0', git='https://git.bioconductor.org/packages/makecdfenv', commit='b88a3e93e3b7feeeca69eda7c1fc5a0826c81120')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.52.0')
+ depends_on('r-affyio', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-maldiquant/package.py b/var/spack/repos/builtin/packages/r-maldiquant/package.py
new file mode 100644
index 0000000000..ad1e1bb95f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-maldiquant/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMaldiquant(RPackage):
+ """A complete analysis pipeline for matrix-assisted laser
+ desorption/ionization-time-of-flight (MALDI-TOF) and other
+ two-dimensional mass spectrometry data. In addition to commonly used
+ plotting and processing methods it includes distinctive features,
+ namely baseline subtraction methods such as morphological filters
+ (TopHat) or the statistics-sensitive non-linear iterative peak-clipping
+ algorithm (SNIP), peak alignment using warping functions, handling of
+ replicated measurements as well as allowing spectra with different
+ resolutions."""
+
+ homepage = "https://cran.r-project.org/package=MALDIquant"
+ url = "https://cran.r-project.org/src/contrib/MALDIquant_1.16.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/MALDIquant"
+
+ version('1.16.4', '83200e7496d05c5a99292e45d2b11c67')
+
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mapproj/package.py b/var/spack/repos/builtin/packages/r-mapproj/package.py
index 3475868abd..d17ba5a8b3 100644
--- a/var/spack/repos/builtin/packages/r-mapproj/package.py
+++ b/var/spack/repos/builtin/packages/r-mapproj/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-maps/package.py b/var/spack/repos/builtin/packages/r-maps/package.py
index c399bc52f3..f9d6a487df 100644
--- a/var/spack/repos/builtin/packages/r-maps/package.py
+++ b/var/spack/repos/builtin/packages/r-maps/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-maptools/package.py b/var/spack/repos/builtin/packages/r-maptools/package.py
index 74d0673aea..e84fc2ef70 100644
--- a/var/spack/repos/builtin/packages/r-maptools/package.py
+++ b/var/spack/repos/builtin/packages/r-maptools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-markdown/package.py b/var/spack/repos/builtin/packages/r-markdown/package.py
index c0e03fef0a..d58e56548c 100644
--- a/var/spack/repos/builtin/packages/r-markdown/package.py
+++ b/var/spack/repos/builtin/packages/r-markdown/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,10 +32,11 @@ class RMarkdown(RPackage):
http://en.wikipedia.org/wiki/Markdown for more information about
'Markdown'."""
- homepage = "https://github.com/rstudio/markdown"
+ homepage = "https://cran.r-project.org/package=markdown"
url = "https://cran.r-project.org/src/contrib/markdown_0.7.7.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/markdown"
+ version('0.8', '5dde829a865ad65bab37a2b9d243b071')
version('0.7.7', '72deca9c675c7cc9343048edbc29f7ff')
depends_on('r-mime', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mass/package.py b/var/spack/repos/builtin/packages/r-mass/package.py
index 25d3b5869b..5767b10be1 100644
--- a/var/spack/repos/builtin/packages/r-mass/package.py
+++ b/var/spack/repos/builtin/packages/r-mass/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,8 +29,9 @@ class RMass(RPackage):
"""Functions and datasets to support Venables and Ripley, "Modern Applied
Statistics with S" (4th edition, 2002)."""
- homepage = "http://www.stats.ox.ac.uk/pub/MASS4/"
- url = "https://cran.r-project.org/src/contrib/MASS_7.3-45.tar.gz"
+ homepage = "https://cran.r-project.org/web/packages/MASS/index.html"
+ url = "https://cran.r-project.org/src/contrib/MASS_7.3-47.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/MASS"
+ version('7.3-47', '2ef69aa9e25c0a445661a9877e117594')
version('7.3-45', 'aba3d12fab30f1793bee168a1efea88b')
diff --git a/var/spack/repos/builtin/packages/r-matrix/package.py b/var/spack/repos/builtin/packages/r-matrix/package.py
index 07c2eaf9da..cf9a8649dd 100644
--- a/var/spack/repos/builtin/packages/r-matrix/package.py
+++ b/var/spack/repos/builtin/packages/r-matrix/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,10 @@ class RMatrix(RPackage):
using 'LAPACK' and 'SuiteSparse'."""
homepage = "http://matrix.r-forge.r-project.org/"
- url = "https://cran.r-project.org/src/contrib/Matrix_1.2-6.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/Matrix"
-
+ url = "https://cran.rstudio.com/src/contrib/Matrix_1.2-11.tar.gz"
+ list_url = homepage
+ version('1.2-11', 'a8c1a893f36d7ea918ddbf8cb8d10b43')
+ version('1.2-8', '4a6406666bf97d3ec6b698eea5d9c0f5')
version('1.2-6', 'f545307fb1284861e9266c4e9712c55e')
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-matrixmodels/package.py b/var/spack/repos/builtin/packages/r-matrixmodels/package.py
index 0958de49a3..de309edbdd 100644
--- a/var/spack/repos/builtin/packages/r-matrixmodels/package.py
+++ b/var/spack/repos/builtin/packages/r-matrixmodels/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-matrixstats/package.py b/var/spack/repos/builtin/packages/r-matrixstats/package.py
new file mode 100644
index 0000000000..a04eaf6d47
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-matrixstats/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMatrixstats(RPackage):
+ """High-performing functions operating on rows and columns of matrices,
+ e.g. col / rowMedians(), col / rowRanks(), and col / rowSds(). Functions
+ optimized per data type and for subsetted calculations such that both
+ memory usage and processing time is minimized. There are also optimized
+ vector-based methods, e.g. binMeans(), madDiff() and
+ weightedMedian()."""
+
+ homepage = "https://cran.rstudio.com/web/packages/matrixStats/index.html"
+ url = "https://cran.rstudio.com/src/contrib/matrixStats_0.52.2.tar.gz"
+ list_url = homepage
+
+ version('0.52.2', '41b987d3ae96ee6895875c413adcba3c')
diff --git a/var/spack/repos/builtin/packages/r-mclust/package.py b/var/spack/repos/builtin/packages/r-mclust/package.py
new file mode 100644
index 0000000000..30e1200da0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mclust/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMclust(RPackage):
+ """mclust: Gaussian Mixture Modelling for Model-Based Clustering,
+ Classification, and Density Estimation"""
+
+ homepage = "http://www.stat.washington.edu/mclust"
+ url = "https://cran.r-project.org/src/contrib/mclust_5.3.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/mclust"
+
+ version('5.3', '74aac9fccdfc78373ce733c1a09176ef')
+
+ depends_on('r@3.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-mcmcglmm/package.py b/var/spack/repos/builtin/packages/r-mcmcglmm/package.py
new file mode 100644
index 0000000000..19bd61f746
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mcmcglmm/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMcmcglmm(RPackage):
+ """MCMC Generalised Linear Mixed Models."""
+
+ homepage = "https://cran.r-project.org/web/packages/MCMCglmm/index.html"
+ url = "https://cran.r-project.org/src/contrib/MCMCglmm_2.25.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/MCMCglmm"
+
+ version('2.25', '260527ef6fecdd87f762fd07406d674a')
+
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-ape', type=('build', 'run'))
+ depends_on('r-corpcor', type=('build', 'run'))
+ depends_on('r-tensora', type=('build', 'run'))
+ depends_on('r-cubature', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mda/package.py b/var/spack/repos/builtin/packages/r-mda/package.py
new file mode 100644
index 0000000000..492cc4fe13
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mda/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMda(RPackage):
+ """Mixture and flexible discriminant analysis, multivariate adaptive
+ regression splines (MARS), BRUTO."""
+
+ homepage = "https://cran.r-project.org/package=mda"
+ url = "https://cran.r-project.org/src/contrib/mda_0.4-9.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/mda"
+
+ version('0.4-9', '2ce1446c4a013e0ebcc1099a00269ad9')
+
+ depends_on('r@1.9.0:')
+
+ depends_on('r-class', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-memoise/package.py b/var/spack/repos/builtin/packages/r-memoise/package.py
index 76c207dc04..867ee78a39 100644
--- a/var/spack/repos/builtin/packages/r-memoise/package.py
+++ b/var/spack/repos/builtin/packages/r-memoise/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,9 @@ class RMemoise(RPackage):
same arguments it returns the pre-computed value."""
homepage = "https://github.com/hadley/memoise"
- url = "https://cran.r-project.org/src/contrib/memoise_1.0.0.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/memoise"
-
+ url = "https://cran.rstudio.com/src/contrib/memoise_1.1.0.tar.gz"
+ list_url = homepage
+ version('1.1.0', '493209ee04673f0fcab473c3dd80fb8c')
version('1.0.0', 'd31145292e2a88ae9a504cab1602e4ac')
depends_on('r-digest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mergemaid/package.py b/var/spack/repos/builtin/packages/r-mergemaid/package.py
new file mode 100644
index 0000000000..ae6ef977c5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mergemaid/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMergemaid(RPackage):
+ """The functions in this R extension are intended for cross-study
+ comparison of gene expression array data. Required from the user is
+ gene expression matrices, their corresponding gene-id vectors and
+ other useful information, and they could be 'list','matrix', or
+ 'ExpressionSet'. The main function is 'mergeExprs' which transforms
+ the input objects into data in the merged format, such that common
+ genes in different datasets can be easily found. And the function
+ 'intcor' calculate the correlation coefficients. Other functions use
+ the output from 'modelOutcome' to graphically display the results and
+ cross-validate associations of gene expression data with survival."""
+
+ homepage = "https://www.bioconductor.org/packages/MergeMaid/"
+ url = "https://git.bioconductor.org/packages/MergeMaid"
+
+ version('2.48.0', git='https://git.bioconductor.org/packages/MergeMaid', commit='aee89c523fcafff4c166ff3db4fff90df16a1ed4')
+
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.48.0')
diff --git a/var/spack/repos/builtin/packages/r-methodss3/package.py b/var/spack/repos/builtin/packages/r-methodss3/package.py
new file mode 100644
index 0000000000..2c1768a1b1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-methodss3/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMethodss3(RPackage):
+ """Methods that simplify the setup of S3 generic functions and
+ S3 methods. Major effort has been made in making definition of
+ methods as simple as possible with a minimum of maintenance for
+ package developers. For example, generic functions are created
+ automatically, if missing, and naming conflict are automatically
+ solved, if possible. The method setMethodS3() is a good start
+ for those who in the future may want to migrate to S4. This is
+ a cross-platform package implemented in pure R that generates
+ standard S3 methods."""
+
+ homepage = "https://cran.r-project.org/package=R.methodsS3"
+ url = "https://cran.r-project.org/src/contrib/R.methodsS3_1.7.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/R.methodsS3"
+
+ version('1.7.1', 'c88e815837f268affd4f2a39c737d969')
diff --git a/var/spack/repos/builtin/packages/r-mgcv/package.py b/var/spack/repos/builtin/packages/r-mgcv/package.py
index c8cb067275..0bf7563df1 100644
--- a/var/spack/repos/builtin/packages/r-mgcv/package.py
+++ b/var/spack/repos/builtin/packages/r-mgcv/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,9 +32,10 @@ class RMgcv(RPackage):
beyond the exponential family."""
homepage = "https://cran.r-project.org/package=mgcv"
- url = "https://cran.r-project.org/src/contrib/mgcv_1.8-13.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/mgcv_1.8-16.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/mgcv"
+ version('1.8-16', '4c1d85e0f80b017bccb4b63395842911')
version('1.8-13', '30607be3aaf44b13bd8c81fc32e8c984')
depends_on('r-nlme', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mime/package.py b/var/spack/repos/builtin/packages/r-mime/package.py
index c4d2eb2b3e..bb235270d7 100644
--- a/var/spack/repos/builtin/packages/r-mime/package.py
+++ b/var/spack/repos/builtin/packages/r-mime/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-minfi/package.py b/var/spack/repos/builtin/packages/r-minfi/package.py
new file mode 100644
index 0000000000..3621743aaa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-minfi/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMinfi(RPackage):
+ """Tools to analyze & visualize Illumina Infinium methylation arrays."""
+
+ homepage = "https://bioconductor.org/packages/minfi/"
+ url = "https://git.bioconductor.org/packages/minfi"
+ list_url = homepage
+
+ version('1.22.1', git='https://git.bioconductor.org/packages/minfi', commit='b2faf84bcbb291e32d470a0e029450093527545b')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-bumphunter', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-beanplot', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-nor1mix', type=('build', 'run'))
+ depends_on('r-siggenes', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-illuminaio', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-mclust', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-nlme', type=('build', 'run'))
+ depends_on('r-reshape', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-quadprog', type=('build', 'run'))
+ depends_on('r-data-table', type=('build', 'run'))
+ depends_on('r-geoquery', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.22.1')
diff --git a/var/spack/repos/builtin/packages/r-minqa/package.py b/var/spack/repos/builtin/packages/r-minqa/package.py
index 7a9032a546..23fe7b5b5c 100644
--- a/var/spack/repos/builtin/packages/r-minqa/package.py
+++ b/var/spack/repos/builtin/packages/r-minqa/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-mlbench/package.py b/var/spack/repos/builtin/packages/r-mlbench/package.py
new file mode 100644
index 0000000000..9d450ced9e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mlbench/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMlbench(RPackage):
+ """A collection of artificial and real-world machine learning benchmark
+ problems, including, e.g., several data sets from the UCI repository."""
+
+ homepage = "https://cran.r-project.org/web/packages/mlbench/index.html"
+ url = "https://cran.r-project.org/src/contrib/mlbench_2.1-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/mlbench"
+
+ version('2.1-1', '9f06848b8e137b8a37417c92d8e57f3b')
+
+ depends_on('r@2.10:')
+
+ depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-mlinterfaces/package.py b/var/spack/repos/builtin/packages/r-mlinterfaces/package.py
new file mode 100644
index 0000000000..9c83563b8f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mlinterfaces/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMlinterfaces(RPackage):
+ """This package provides uniform interfaces to machine learning
+ code for data in R and Bioconductor containers."""
+
+ homepage = "https://www.bioconductor.org/packages/MLInterfaces/"
+ url = "https://git.bioconductor.org/packages/MLInterfaces"
+
+ version('1.56.0', git='https://git.bioconductor.org/packages/MLInterfaces', commit='31fe6fb20d859fcb01d5552f42bca6bab16cc67f')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.56.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-gdata', type=('build', 'run'))
+ depends_on('r-pls', type=('build', 'run'))
+ depends_on('r-sfsmisc', type=('build', 'run'))
+ depends_on('r-rda', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-fpc', type=('build', 'run'))
+ depends_on('r-ggvis', type=('build', 'run'))
+ depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r-gbm', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-hwriter', type=('build', 'run'))
+ depends_on('r-threejs', type=('build', 'run'))
+ depends_on('r-mlbench', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-modelmetrics/package.py b/var/spack/repos/builtin/packages/r-modelmetrics/package.py
new file mode 100644
index 0000000000..c3625e1e37
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-modelmetrics/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RModelmetrics(RPackage):
+ """Collection of metrics for evaluating models written in C++ using
+ 'Rcpp'."""
+
+ homepage = "https://cran.r-project.org/package=ModelMetrics"
+ url = "https://cran.r-project.org/src/contrib/ModelMetrics_1.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ModelMetrics"
+
+ version('1.1.0', 'd43175001f0531b8810d2802d76b7b44')
+
+ depends_on('r@3.2.2:')
+
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-modeltools/package.py b/var/spack/repos/builtin/packages/r-modeltools/package.py
new file mode 100644
index 0000000000..1c0873dfae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-modeltools/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RModeltools(RPackage):
+ """A collection of tools to deal with statistical models."""
+
+ homepage = "https://cran.r-project.org/package=modeltools"
+ url = "https://cran.r-project.org/src/contrib/modeltools_0.2-21.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/modeltools"
+
+ version('0.2-21', '3bf56b2e7bf78981444385d87eeccdd7')
diff --git a/var/spack/repos/builtin/packages/r-mpm/package.py b/var/spack/repos/builtin/packages/r-mpm/package.py
new file mode 100644
index 0000000000..e2f59227a0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mpm/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMpm(RPackage):
+ """Exploratory graphical analysis of multivariate data, specifically
+ gene expression data with different projection methods: principal
+ component analysis, correspondence analysis, spectral map analysis."""
+
+ homepage = "https://cran.rstudio.com/web/packages/mpm/index.html"
+ url = "https://cran.rstudio.com/src/contrib/mpm_1.0-22.tar.gz"
+ list_url = homepage
+ version('1.0-22', '91885c421cafd89ce8893ccf827165a2')
+
+ depends_on('r-kernsmooth', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-msnbase/package.py b/var/spack/repos/builtin/packages/r-msnbase/package.py
new file mode 100644
index 0000000000..fddbffdcec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-msnbase/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMsnbase(RPackage):
+ """Manipulation, processing and visualisation of mass spectrometry and
+ proteomics data."""
+
+ homepage = "https://www.bioconductor.org/packages/MSnbase/"
+ url = "https://git.bioconductor.org/packages/MSnbase"
+
+ version('2.2.0', git='https://git.bioconductor.org/packages/MSnbase', commit='d6e8fb7f106d05096fa9074da0f829ac8f02c197')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-mzr', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r-protgenerics', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-vsn', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-impute', type=('build', 'run'))
+ depends_on('r-pcamethods', type=('build', 'run'))
+ depends_on('r-mzid', type=('build', 'run'))
+ depends_on('r-maldiquant', type=('build', 'run'))
+ depends_on('r-digest', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.2.0')
diff --git a/var/spack/repos/builtin/packages/r-multcomp/package.py b/var/spack/repos/builtin/packages/r-multcomp/package.py
index 70704a9c61..8b5b6deff7 100644
--- a/var/spack/repos/builtin/packages/r-multcomp/package.py
+++ b/var/spack/repos/builtin/packages/r-multcomp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,8 +38,8 @@ class RMultcomp(RPackage):
version('1.4-6', 'f1353ede2ed78b23859a7f1f1f9ebe88')
- depends_on('r-mvtnorm', type=('build', 'run'))
- depends_on('r-survival', type=('build', 'run'))
- depends_on('r-thdata', type=('build', 'run'))
- depends_on('r-sandwich', type=('build', 'run'))
+ depends_on('r-mvtnorm@1.0-3:', type=('build', 'run'))
+ depends_on('r-survival@2.39-4:', type=('build', 'run'))
+ depends_on('r-th-data@1.0-2:', type=('build', 'run'))
+ depends_on('r-sandwich@2.3-0:', type=('build', 'run'))
depends_on('r-codetools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-multtest/package.py b/var/spack/repos/builtin/packages/r-multtest/package.py
new file mode 100644
index 0000000000..04030423ee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-multtest/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMulttest(RPackage):
+ """Resampling-based multiple hypothesis testing"""
+
+ homepage = "https://www.bioconductor.org/packages/multtest/"
+ url = "https://git.bioconductor.org/packages/multtest"
+
+ version('2.32.0', git='https://git.bioconductor.org/packages/multtest', commit='c5e890dfbffcc3a3f107303a24b6085614312f4a')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.32.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-munsell/package.py b/var/spack/repos/builtin/packages/r-munsell/package.py
index 670fed41e2..de729c84ef 100644
--- a/var/spack/repos/builtin/packages/r-munsell/package.py
+++ b/var/spack/repos/builtin/packages/r-munsell/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-mvtnorm/package.py b/var/spack/repos/builtin/packages/r-mvtnorm/package.py
index 01e3aea91d..9806c21cb5 100644
--- a/var/spack/repos/builtin/packages/r-mvtnorm/package.py
+++ b/var/spack/repos/builtin/packages/r-mvtnorm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,8 @@ class RMvtnorm(RPackage):
deviates and densities."""
homepage = "http://mvtnorm.r-forge.r-project.org/"
- url = "https://cran.r-project.org/src/contrib/mvtnorm_1.0-5.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/mvtnorm_1.0-6.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/mvtnorm"
+ version('1.0-6', 'cb69426868fd3e330412b8491901d9d4')
version('1.0-5', '5894dd3969bbfa26f4862c45f9a48a52')
diff --git a/var/spack/repos/builtin/packages/r-mzid/package.py b/var/spack/repos/builtin/packages/r-mzid/package.py
new file mode 100644
index 0000000000..cb23814ea8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mzid/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMzid(RPackage):
+ """A parser for mzIdentML files implemented using the XML package. The
+ parser tries to be general and able to handle all types of mzIdentML
+ files with the drawback of having less 'pretty' output than a vendor
+ specific parser. Please contact the maintainer with any problems and
+ supply an mzIdentML file so the problems can be fixed quickly."""
+
+ homepage = "https://www.bioconductor.org/packages/mzID/"
+ url = "https://git.bioconductor.org/packages/mzID"
+
+ version('1.14.0', git='https://git.bioconductor.org/packages/mzID', commit='1c53aa6523ae61d3ebb13381381fc119d6cc6115')
+
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-plyr', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-iterators', type=('build', 'run'))
+ depends_on('r-protgenerics', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.14.0')
diff --git a/var/spack/repos/builtin/packages/r-mzr/package.py b/var/spack/repos/builtin/packages/r-mzr/package.py
new file mode 100644
index 0000000000..282962153b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-mzr/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RMzr(RPackage):
+ """mzR provides a unified API to the common file formats and parsers
+ available for mass spectrometry data. It comes with a wrapper for the
+ ISB random access parser for mass spectrometry mzXML, mzData and mzML
+ files. The package contains the original code written by the ISB, and a
+ subset of the proteowizard library for mzML and mzIdentML. The netCDF
+ reading code has previously been used in XCMS."""
+
+ homepage = "https://www.bioconductor.org/packages/mzR/"
+ url = "https://git.bioconductor.org/packages/mzR"
+
+ version('2.10.0', git='https://git.bioconductor.org/packages/mzR', commit='a6168b68e48c281e88de9647254a8db1e21df388')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-protgenerics', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('netcdf')
+ depends_on('r@3.4.0:3.4.9', when='@2.10.0')
diff --git a/var/spack/repos/builtin/packages/r-ncbit/package.py b/var/spack/repos/builtin/packages/r-ncbit/package.py
new file mode 100644
index 0000000000..c9bc90654c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ncbit/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RNcbit(RPackage):
+ """Making NCBI taxonomic data locally available and searchable as an R
+ object."""
+
+ homepage = "https://cran.r-project.org/package=ncbit"
+ url = "https://cran.r-project.org/src/contrib/ncbit_2013.03.29.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ncbit"
+
+ version('2013.03.29', '29582d7e5c8bbf9683c57c4f6ac3e891')
diff --git a/var/spack/repos/builtin/packages/r-ncdf4/package.py b/var/spack/repos/builtin/packages/r-ncdf4/package.py
index 597f4d903f..8e24a0eba1 100644
--- a/var/spack/repos/builtin/packages/r-ncdf4/package.py
+++ b/var/spack/repos/builtin/packages/r-ncdf4/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-network/package.py b/var/spack/repos/builtin/packages/r-network/package.py
new file mode 100644
index 0000000000..867fbf41f6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-network/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RNetwork(RPackage):
+ """Tools to create and modify network objects. The network class can
+ represent a range of relational data types, and supports
+ arbitrary vertex/edge/graph attributes."""
+
+ homepage = "https://statnet.org"
+ url = "https://cran.r-project.org/src/contrib/network_1.13.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/network"
+
+ version('1.13.0', 'd0b967d6f1aad43b6479d72f29b705de')
diff --git a/var/spack/repos/builtin/packages/r-networkd3/package.py b/var/spack/repos/builtin/packages/r-networkd3/package.py
index e881394538..4102dbefe4 100644
--- a/var/spack/repos/builtin/packages/r-networkd3/package.py
+++ b/var/spack/repos/builtin/packages/r-networkd3/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-nlme/package.py b/var/spack/repos/builtin/packages/r-nlme/package.py
index 869e03ab51..b50fa42c10 100644
--- a/var/spack/repos/builtin/packages/r-nlme/package.py
+++ b/var/spack/repos/builtin/packages/r-nlme/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,11 @@ class RNlme(RPackage):
"""Fit and compare Gaussian linear and nonlinear mixed-effects models."""
homepage = "https://cran.r-project.org/package=nlme"
- url = "https://cran.r-project.org/src/contrib/nlme_3.1-128.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/nlme_3.1-130.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/nlme"
+ version('3.1-131', '0f1215ec4d4e3bca939282d122f4d1fa')
+ version('3.1-130', '1935d6e308a8018ed8e45d25c8731288')
version('3.1-128', '3d75ae7380bf123761b95a073eb55008')
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nloptr/package.py b/var/spack/repos/builtin/packages/r-nloptr/package.py
index 8da84c5814..613900c799 100644
--- a/var/spack/repos/builtin/packages/r-nloptr/package.py
+++ b/var/spack/repos/builtin/packages/r-nloptr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,16 +26,19 @@ from spack import *
class RNloptr(RPackage):
- """nloptr is an R interface to NLopt. NLopt is a free/open-source library
- for nonlinear optimization, providing a common interface for a number of
- different free optimization routines available online as well as original
- implementations of various other algorithms. See
- http://ab-initio.mit.edu/wiki/index.php/NLopt_Introduction for more
- information on the available algorithms. During installation on Unix the
- NLopt code is downloaded and compiled from the NLopt website."""
+ """nloptr is an R interface to NLopt. NLopt is a free/open-source
+ library for nonlinear optimization, providing a common interface
+ for a number of different free optimization routines available
+ online as well as original implementations of various other
+ algorithms. See http://ab-initio.mit.edu/wiki/index.php/NLopt
+ _Introduction for more information on the available algorithms.
+ During installation on Unix the NLopt code is downloaded and
+ compiled from the NLopt website."""
homepage = "https://cran.r-project.org/package=nloptr"
- url = "https://cran.r-project.org/src/contrib/nloptr_1.0.4.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/nloptr"
+ url = "https://cran.rstudio.com/src/contrib/nloptr_1.0.4.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/nloptr"
- version('1.0.4', '9af69a613349b236fd377d0a107f484c')
+ version('1.0.4', 'f2775dfb4f7f5552d46937a04c062b0d')
+
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-nmf/package.py b/var/spack/repos/builtin/packages/r-nmf/package.py
index 78347ea615..8e2806efed 100644
--- a/var/spack/repos/builtin/packages/r-nmf/package.py
+++ b/var/spack/repos/builtin/packages/r-nmf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-nnet/package.py b/var/spack/repos/builtin/packages/r-nnet/package.py
index eeb6f91034..5298b38abe 100644
--- a/var/spack/repos/builtin/packages/r-nnet/package.py
+++ b/var/spack/repos/builtin/packages/r-nnet/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-nnls/package.py b/var/spack/repos/builtin/packages/r-nnls/package.py
new file mode 100644
index 0000000000..44ea8174c2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-nnls/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RNnls(RPackage):
+ """An R interface to the Lawson-Hanson implementation of an
+ algorithm for non-negative least squares (NNLS). Also allows
+ the combination of non-negative and non-positive constraints."""
+
+ homepage = "https://cran.r-project.org/package=nnls"
+ url = "https://cran.rstudio.com/src/contrib/nnls_1.4.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/nnls"
+
+ version('1.4', 'cdb3640120f73e0ccb6079108e0ef361')
diff --git a/var/spack/repos/builtin/packages/r-nor1mix/package.py b/var/spack/repos/builtin/packages/r-nor1mix/package.py
new file mode 100644
index 0000000000..ceb9852d7e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-nor1mix/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RNor1mix(RPackage):
+ """Onedimensional Normal Mixture Models Classes, for, e.g., density
+ estimation or clustering algorithms research and teaching; providing
+ the widely used Marron-Wand densities. Efficient random number
+ generation and graphics; now fitting to data by ML (Maximum Likelihood)
+ or EM estimation."""
+
+ homepage = "https://CRAN.R-project.org/package=nor1mix"
+ url = "https://cran.rstudio.com/src/contrib/nor1mix_1.2-3.tar.gz"
+ list_url = homepage
+
+ version('1.2-3', '60eb5cc1ea6b366f53042087a080b105')
diff --git a/var/spack/repos/builtin/packages/r-np/package.py b/var/spack/repos/builtin/packages/r-np/package.py
index e15cb7efcb..6bb788e38d 100644
--- a/var/spack/repos/builtin/packages/r-np/package.py
+++ b/var/spack/repos/builtin/packages/r-np/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-numderiv/package.py b/var/spack/repos/builtin/packages/r-numderiv/package.py
new file mode 100644
index 0000000000..86887bb1a5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-numderiv/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RNumderiv(RPackage):
+ """Methods for calculating (usually) accurate numerical first and
+ second order derivatives."""
+
+ homepage = "https://cran.r-project.org/package=numDeriv"
+ url = "https://cran.r-project.org/src/contrib/numDeriv_2016.8-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/numDeriv"
+
+ version('2016.8-1', '30e486298d5126d86560095be8e8aac1')
+
+ depends_on('r@2.11.1:')
diff --git a/var/spack/repos/builtin/packages/r-oligoclasses/package.py b/var/spack/repos/builtin/packages/r-oligoclasses/package.py
new file mode 100644
index 0000000000..85e221e275
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-oligoclasses/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ROligoclasses(RPackage):
+ """This package contains class definitions, validity checks,
+ and initialization methods for classes used by the oligo and
+ crlmm packages."""
+
+ homepage = "https://www.bioconductor.org/packages/oligoClasses/"
+ url = "https://git.bioconductor.org/packages/oligoClasses"
+
+ version('1.38.0', git='https://git.bioconductor.org/packages/oligoClasses', commit='fe2bb7f02c7ed3cbd338254c27ceba6ff829a962')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.38.0')
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-affyio', type=('build', 'run'))
+ depends_on('r-ff', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-oo/package.py b/var/spack/repos/builtin/packages/r-oo/package.py
new file mode 100644
index 0000000000..7f4a3e39d9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-oo/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ROo(RPackage):
+ """Methods and classes for object-oriented programming in R with
+ or without references. Large effort has been made on making
+ definition of methods as simple as possible with a minimum of
+ maintenance for package developers. The package has been developed
+ since 2001 and is now considered very stable. This is a
+ cross-platform package implemented in pure R that defines
+ standard S3 classes without any tricks."""
+
+ homepage = "https://github.com/HenrikBengtsson/R.oo"
+ url = "https://cran.rstudio.com/src/contrib/R.oo_1.21.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/R.oo"
+
+ version('1.21.0', 'f0062095c763faaeba30558303f68bc3')
+
+ depends_on('r-methodss3', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-openssl/package.py b/var/spack/repos/builtin/packages/r-openssl/package.py
index bf9f38be72..4c038f29c9 100644
--- a/var/spack/repos/builtin/packages/r-openssl/package.py
+++ b/var/spack/repos/builtin/packages/r-openssl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,10 +37,12 @@ class ROpenssl(RPackage):
generator, and 'bignum' math methods for manually performing crypto
calculations on large multibyte integers."""
- homepage = "https://github.com/jeroenooms/openssl#readme"
- url = "https://cran.r-project.org/src/contrib/openssl_0.9.4.tar.gz"
+ homepage = "https://CRAN.R-project.org/package=openssl"
+ url = "https://cran.r-project.org/src/contrib/openssl_0.9.6.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/openssl"
+ version('0.9.7', '86773824dce7d3d79abfef574ce2531a')
+ version('0.9.6', '7ef137929d9dd07db690d35db242ba4b')
version('0.9.4', '82a890e71ed0e74499878bedacfb8ccb')
- depends_on('openssl')
+ depends_on('openssl@1.0.1:')
diff --git a/var/spack/repos/builtin/packages/r-organismdbi/package.py b/var/spack/repos/builtin/packages/r-organismdbi/package.py
new file mode 100644
index 0000000000..b299c5919b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-organismdbi/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ROrganismdbi(RPackage):
+ """The package enables a simple unified interface to several annotation
+ packages each of which has its own schema by taking advantage of the
+ fact that each of these packages implements a select methods."""
+
+ homepage = "https://bioconductor.org/packages/OrganismDbi/"
+ url = "https://git.bioconductor.org/packages/OrganismDbi"
+ list_url = homepage
+
+ version('1.18.1', git='https://git.bioconductor.org/packages/OrganismDbi', commit='ba2d1237256805e935d9534a0c6f1ded07b42e95')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocinstaller', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-graph', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-rbgl', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.18.1')
diff --git a/var/spack/repos/builtin/packages/r-packrat/package.py b/var/spack/repos/builtin/packages/r-packrat/package.py
index 726a6640e8..c87326cacb 100644
--- a/var/spack/repos/builtin/packages/r-packrat/package.py
+++ b/var/spack/repos/builtin/packages/r-packrat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,4 +33,5 @@ class RPackrat(RPackage):
url = "https://cran.r-project.org/src/contrib/packrat_0.4.7-1.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/packrat"
+ version('0.4.8-1', '14e82feba55fcda923396282fc490038')
version('0.4.7-1', '80c2413269b292ade163a70ba5053e84')
diff --git a/var/spack/repos/builtin/packages/r-pacman/package.py b/var/spack/repos/builtin/packages/r-pacman/package.py
new file mode 100644
index 0000000000..c272904a2e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pacman/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPacman(RPackage):
+ """Tools to more conveniently perform tasks associated with add-on
+ packages. pacman conveniently wraps library and package related functions
+ and names them in an intuitive and consistent fashion. It seeks to combine
+ functionality from lower level functions which can speed up workflow."""
+
+ homepage = "https://cran.r-project.org/package=pacman"
+ url = "https://cran.r-project.org/src/contrib/pacman_0.4.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/pacman"
+
+ version('0.4.1', 'bf18fe6d1407d31e00b337d9b07fb648')
+
+ depends_on('r@3.0.2:')
+
+ depends_on('r-devtools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pamr/package.py b/var/spack/repos/builtin/packages/r-pamr/package.py
new file mode 100644
index 0000000000..9e3de93ad6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pamr/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPamr(RPackage):
+ """Some functions for sample classification in microarrays."""
+
+ homepage = "https://cran.r-project.org/package=pamr"
+ url = "https://cran.rstudio.com/src/contrib/pamr_1.55.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/pamr"
+
+ version('1.55', '108932d006a4de3a178b6f57f5d1a006')
diff --git a/var/spack/repos/builtin/packages/r-party/package.py b/var/spack/repos/builtin/packages/r-party/package.py
new file mode 100644
index 0000000000..de9be7d79d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-party/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RParty(RPackage):
+ """A computational toolbox for recursive partitioning."""
+
+ homepage = "https://cran.r-project.org/web/packages/party/index.html"
+ url = "https://cran.r-project.org/src/contrib/party_1.1-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/party"
+
+ version('1.1-2', '40a00336cf8418042d2ab616675c8ddf')
+
+ depends_on('r@2.14.0:')
+
+ depends_on('r-mvtnorm@1.0-2:', type=('build', 'run'))
+ depends_on('r-modeltools@0.1-21:', type=('build', 'run'))
+ depends_on('r-strucchange', type=('build', 'run'))
+ depends_on('r-survival@2.37-7:', type=('build', 'run'))
+ depends_on('r-coin@1.1-0:', type=('build', 'run'))
+ depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-sandwich@1.1-1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-partykit/package.py b/var/spack/repos/builtin/packages/r-partykit/package.py
index 8773dace22..45ce019cad 100644
--- a/var/spack/repos/builtin/packages/r-partykit/package.py
+++ b/var/spack/repos/builtin/packages/r-partykit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-pbdzmq/package.py b/var/spack/repos/builtin/packages/r-pbdzmq/package.py
index f602e50723..82adce3430 100644
--- a/var/spack/repos/builtin/packages/r-pbdzmq/package.py
+++ b/var/spack/repos/builtin/packages/r-pbdzmq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-pbkrtest/package.py b/var/spack/repos/builtin/packages/r-pbkrtest/package.py
index 2d51d2b958..4d6ae727cc 100644
--- a/var/spack/repos/builtin/packages/r-pbkrtest/package.py
+++ b/var/spack/repos/builtin/packages/r-pbkrtest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,7 +37,10 @@ class RPbkrtest(RPackage):
list_url = "https://cran.r-project.org/src/contrib/Archive/pbkrtest"
version('0.4-6', '0a7d9ff83b8d131af9b2335f35781ef9')
+ version('0.4-4', '5e54b1b1b35413dd1d24ef15735ec645')
- depends_on('r-lme4', type=('build', 'run'))
- depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r@3.2.3:')
+
+ depends_on('r-lme4@1.1.10:', type=('build', 'run'))
+ depends_on('r-matrix@1.2.3:', type=('build', 'run'))
depends_on('r-mass', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pcamethods/package.py b/var/spack/repos/builtin/packages/r-pcamethods/package.py
new file mode 100644
index 0000000000..b43fac79d0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pcamethods/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPcamethods(RPackage):
+ """Provides Bayesian PCA, Probabilistic PCA, Nipals PCA, Inverse
+ Non-Linear PCA and the conventional SVD PCA. A cluster based method for
+ missing value estimation is included for comparison. BPCA, PPCA and
+ NipalsPCA may be used to perform PCA on incomplete data as well as for
+ accurate missing value estimation. A set of methods for printing and
+ plotting the results is also provided. All PCA methods make use of the
+ same data structure (pcaRes) to provide a common interface to the PCA
+ results. Initiated at the Max-Planck Institute for Molecular Plant
+ Physiology, Golm, Germany."""
+
+ homepage = "http://bioconductor.org/packages/pcaMethods/"
+ url = "https://git.bioconductor.org/packages/pcaMethods"
+ list_url = homepage
+ version('1.68.0', git='https://git.bioconductor.org/packages/pcaMethods', commit='c8d7c93dcaf7ef728f3d089ae5d55771b320bdab')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.68.0')
diff --git a/var/spack/repos/builtin/packages/r-permute/package.py b/var/spack/repos/builtin/packages/r-permute/package.py
new file mode 100644
index 0000000000..846028e0da
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-permute/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPermute(RPackage):
+ """A set of restricted permutation designs for freely exchangeable, line
+ transects (time series), and spatial grid designs plus permutation of
+ blocks (groups of samples) is provided. 'permute' also allows split-plot
+ designs, in which the whole-plots or split-plots or both can be
+ freely-exchangeable or one of the restricted designs. The 'permute'
+ package is modelled after the permutation schemes of 'Canoco 3.1'
+ (and later) by Cajo ter Braak."""
+
+ homepage = "https://github.com/gavinsimpson/permute"
+ url = "https://cran.r-project.org/src/contrib/permute_0.9-4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/permute"
+
+ version('0.9-4', '569fc2442d72a1e3b7e2d456019674c9')
+
+ depends_on('r@2.14:')
diff --git a/var/spack/repos/builtin/packages/r-pfam-db/package.py b/var/spack/repos/builtin/packages/r-pfam-db/package.py
new file mode 100644
index 0000000000..ef580a84bb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pfam-db/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPfamDb(RPackage):
+ """A set of protein ID mappings for PFAM assembled using data from
+ public repositories."""
+
+ homepage = "https://www.bioconductor.org/packages/PFAM.db/"
+ url = "https://www.bioconductor.org/packages/3.5/data/annotation/src/contrib/PFAM.db_3.4.1.tar.gz"
+
+ version('3.4.1', '65ed35887ecc44f5ac9f9c8563e03f44')
+
+ depends_on('r@3.4.0:3.4.9', when='@3.4.1')
+ depends_on('r-annotationdbi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-pkgconfig/package.py b/var/spack/repos/builtin/packages/r-pkgconfig/package.py
new file mode 100644
index 0000000000..d5045721a9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pkgconfig/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPkgconfig(RPackage):
+ """Set configuration options on a per-package basis. Options set by a
+ given package only apply to that package,
+ other packages are unaffected."""
+
+ homepage = "https://cran.rstudio.com/web/packages/pkgconfig/index.html"
+ url = "https://cran.rstudio.com/src/contrib/pkgconfig_2.0.1.tar.gz"
+ list_url = homepage
+ version('2.0.1', 'a20fd9588e37995995fa62dc4828002e')
diff --git a/var/spack/repos/builtin/packages/r-pkgmaker/package.py b/var/spack/repos/builtin/packages/r-pkgmaker/package.py
index 099cabd954..efb91262a4 100644
--- a/var/spack/repos/builtin/packages/r-pkgmaker/package.py
+++ b/var/spack/repos/builtin/packages/r-pkgmaker/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-plogr/package.py b/var/spack/repos/builtin/packages/r-plogr/package.py
new file mode 100644
index 0000000000..0f5e1319b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-plogr/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPlogr(RPackage):
+ """A simple header-only logging library for C++. Add
+ 'LinkingTo: plogr' to 'DESCRIPTION', and '#include <plogr.h>'
+ in your C++ modules to use it."""
+
+ homepage = "https://cran.r-project.org/web/packages/plogr/index.html"
+ url = "https://cran.r-project.org/src/contrib/plogr_0.1-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/plogr"
+ version('0.1-1', '5ee46ed21b5c571d02900219098517c0')
diff --git a/var/spack/repos/builtin/packages/r-plotrix/package.py b/var/spack/repos/builtin/packages/r-plotrix/package.py
index 8a17c72f91..018d68c498 100644
--- a/var/spack/repos/builtin/packages/r-plotrix/package.py
+++ b/var/spack/repos/builtin/packages/r-plotrix/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,8 @@ class RPlotrix(RPackage):
"""Lots of plots, various labeling, axis and color scaling functions."""
homepage = "https://cran.r-project.org/package=plotrix"
- url = "https://cran.r-project.org/src/contrib/plotrix_3.6-3.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/plotrix_3.6-4.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/plotrix"
+ version('3.6-4', 'efe9b9b093d8903228a9b56c46d943fa')
version('3.6-3', '23e3e022a13a596e9b77b40afcb4a2ef')
diff --git a/var/spack/repos/builtin/packages/r-pls/package.py b/var/spack/repos/builtin/packages/r-pls/package.py
new file mode 100644
index 0000000000..b4d5c5c493
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pls/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPls(RPackage):
+ """Multivariate regression methods Partial Least Squares Regression (PLSR),
+ Principal Component Regression (PCR) and Canonical Powered Partial Least
+ Squares (CPPLS)."""
+
+ homepage = "https://cran.r-project.org/package=pls"
+ url = "https://cran.r-project.org/src/contrib/pls_2.6-0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/pls"
+
+ version('2.6-0', '04e02e8e46d983c5ed53c1f952b329df')
+
+ depends_on('r@2.10:')
diff --git a/var/spack/repos/builtin/packages/r-plyr/package.py b/var/spack/repos/builtin/packages/r-plyr/package.py
index 6f48f5c38e..70a2659f95 100644
--- a/var/spack/repos/builtin/packages/r-plyr/package.py
+++ b/var/spack/repos/builtin/packages/r-plyr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-pmcmr/package.py b/var/spack/repos/builtin/packages/r-pmcmr/package.py
new file mode 100644
index 0000000000..11d8d3edfb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-pmcmr/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPmcmr(RPackage):
+ """The Kruskal and Wallis one-way analysis of variance by ranks or van
+ der Waerden's normal score test can be employed, if the data do not
+ meet the assumptions for one-way ANOVA. Provided that significant
+ differences were detected by the omnibus test, one may be interested
+ in applying post-hoc tests for pairwise multiple comparisons (such as
+ Nemenyi's test, Dunn's test, Conover's test, van der Waerden's test).
+ Similarly, one-way ANOVA with repeated measures that is also referred
+ to as ANOVA with unreplicated block design can also be conducted via
+ the Friedman-Test or the Quade-test. The consequent post-hoc pairwise
+ multiple comparison tests according to Nemenyi, Conover and Quade are
+ also provided in this package. Finally Durbin's test for a two-way
+ balanced incomplete block design (BIBD) is also given in this
+ package."""
+
+ homepage = "https://cran.r-project.org/package=PMCMR"
+ url = "https://cran.rstudio.com/src/contrib/PMCMR_4.1.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/PMCMR"
+
+ version('4.1', 'b9c0c4e4cb4f73ae36f45a47abae986a')
diff --git a/var/spack/repos/builtin/packages/r-png/package.py b/var/spack/repos/builtin/packages/r-png/package.py
index 38b7ae5138..6d65cc6476 100644
--- a/var/spack/repos/builtin/packages/r-png/package.py
+++ b/var/spack/repos/builtin/packages/r-png/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-prabclus/package.py b/var/spack/repos/builtin/packages/r-prabclus/package.py
new file mode 100644
index 0000000000..de5b5b7db9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-prabclus/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPrabclus(RPackage):
+ """prabclus: Functions for Clustering of Presence-Absence, Abundance and
+ Multilocus Genetic Data"""
+
+ homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
+ url = "https://cran.r-project.org/src/contrib/prabclus_2.2-6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/prabclus"
+
+ version('2.2-6', '7f835dcc113243e1db74aad28ce93d11')
+
+ depends_on('r@2.1.0:')
+ # depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-mclust', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-praise/package.py b/var/spack/repos/builtin/packages/r-praise/package.py
index ff23594af9..f58ba04b06 100644
--- a/var/spack/repos/builtin/packages/r-praise/package.py
+++ b/var/spack/repos/builtin/packages/r-praise/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,5 +31,6 @@ class RPraise(RPackage):
homepage = "https://github.com/gaborcsardi/praise"
url = "https://cran.r-project.org/src/contrib/praise_1.0.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/praise"
version('1.0.0', '9318724cec0454884b5f762bee2da6a1')
diff --git a/var/spack/repos/builtin/packages/r-preprocesscore/package.py b/var/spack/repos/builtin/packages/r-preprocesscore/package.py
new file mode 100644
index 0000000000..95ce33d8c3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-preprocesscore/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPreprocesscore(RPackage):
+ """A library of core preprocessing routines"""
+
+ homepage = "https://bioconductor.org/packages/preprocessCore/"
+ url = "https://git.bioconductor.org/packages/preprocessCore"
+ list_url = homepage
+
+ version('1.38.1', git='https://git.bioconductor.org/packages/preprocessCore', commit='c58cb4c720eda0f1c733b989b14912093a7c5fbc')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.38.1')
diff --git a/var/spack/repos/builtin/packages/r-prettyunits/package.py b/var/spack/repos/builtin/packages/r-prettyunits/package.py
new file mode 100644
index 0000000000..0741d17411
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-prettyunits/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPrettyunits(RPackage):
+ """Pretty, human readable formatting of quantities. Time intervals:
+ 1337000 -> 15d 11h 23m 20s. Vague time intervals: 2674000 -> about
+ a month ago. Bytes: 1337 -> 1.34 kB."""
+
+ homepage = "https://cran.r-project.org/package=prettyunits"
+ url = "https://cran.r-project.org/src/contrib/prettyunits_1.0.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/prettyunits"
+
+ version('1.0.2', '0a091a297e8b37df54e7fcf28697ee50')
+
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-assertthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-prodlim/package.py b/var/spack/repos/builtin/packages/r-prodlim/package.py
new file mode 100644
index 0000000000..b9721174d6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-prodlim/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RProdlim(RPackage):
+ """Product-Limit Estimation for Censored Event History Analysis. Fast and
+ user friendly implementation of nonparametric estimators for censored event
+ history (survival) analysis. Kaplan-Meier and Aalen-Johansen method."""
+
+ homepage = "https://cran.r-project.org/package=prodlim"
+ url = "https://cran.r-project.org/src/contrib/prodlim_1.5.9.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/prodlim"
+
+ version('1.5.9', 'e0843053c9270e41b657a733d6675dc9')
+
+ depends_on('r@2.9.0:')
+
+ depends_on('r-rcpp@0.11.5:', type=('build', 'run'))
+ depends_on('r-survival', type=('build', 'run'))
+ depends_on('r-kernsmooth', type=('build', 'run'))
+ depends_on('r-lava', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-progress/package.py b/var/spack/repos/builtin/packages/r-progress/package.py
new file mode 100644
index 0000000000..b5a909a73d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-progress/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RProgress(RPackage):
+ """Configurable Progress bars, they may include percentage, elapsed time,
+ and/or the estimated completion time. They work in terminals, in
+ 'Emacs' 'ESS', 'RStudio', 'Windows' 'Rgui' and the 'macOS' 'R.app'.
+ The package also provides a 'C++' 'API', that works with or without
+ 'Rcpp'."""
+
+ homepage = "https://cran.r-project.org/package=progress"
+ url = "https://cran.r-project.org/src/contrib/progress_1.1.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/progress"
+
+ version('1.1.2', 'b3698672896125137e0077bc97132428')
+ depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-prettyunits', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-protgenerics/package.py b/var/spack/repos/builtin/packages/r-protgenerics/package.py
new file mode 100644
index 0000000000..7ec8fa8537
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-protgenerics/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RProtgenerics(RPackage):
+ """S4 generic functions needed by Bioconductor proteomics packages."""
+
+ homepage = "https://bioconductor.org/packages/ProtGenerics/"
+ url = "https://git.bioconductor.org/packages/ProtGenerics"
+ list_url = homepage
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/ProtGenerics', commit='b2b3bb0938e20f58fca905f6870de7dbc9dfd7a3')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
diff --git a/var/spack/repos/builtin/packages/r-proto/package.py b/var/spack/repos/builtin/packages/r-proto/package.py
index 2553e325f3..412ad956e3 100644
--- a/var/spack/repos/builtin/packages/r-proto/package.py
+++ b/var/spack/repos/builtin/packages/r-proto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-proxy/package.py b/var/spack/repos/builtin/packages/r-proxy/package.py
new file mode 100644
index 0000000000..5f6057c769
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-proxy/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RProxy(RPackage):
+ """Provides an extensible framework for the efficient calculation of
+ auto- and cross-proximities, along with implementations of the most
+ popular ones."""
+
+ homepage = "https://cran.r-project.org/package=proxy"
+ url = "https://cran.rstudio.com/src/contrib/proxy_0.4-19.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/proxy"
+ version('0.4-19', '279a01a1cc12ed50208c98196d78a5d7')
diff --git a/var/spack/repos/builtin/packages/r-pryr/package.py b/var/spack/repos/builtin/packages/r-pryr/package.py
index 3a103e9855..b1e9ad4e9b 100644
--- a/var/spack/repos/builtin/packages/r-pryr/package.py
+++ b/var/spack/repos/builtin/packages/r-pryr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-ptw/package.py b/var/spack/repos/builtin/packages/r-ptw/package.py
new file mode 100644
index 0000000000..38048bc2a7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ptw/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPtw(RPackage):
+ """Parametric Time Warping aligns patterns, i.e. it aims to put
+ corresponding features at the same locations. The algorithm
+ searches for an optimal polynomial describing the warping. It is
+ possible to align one sample to a reference, several samples to
+ the same reference, or several samples to several references.
+ One can choose between calculating individual warpings, or one
+ global warping for a set of samples and one reference. Two
+ optimization criteria are implemented: RMS (Root Mean Square
+ error) and WCC (Weighted Cross Correlation). Both warping of
+ peak profiles and of peak lists are supported."""
+
+ homepage = "https://cran.r-project.org/package=ptw"
+ url = "https://cran.rstudio.com/src/contrib/ptw_1.9-12.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/ptw"
+
+ version('1.9-12', 'ddff887752d789ea72db3ee235ae7c67')
+
+ depends_on('r-nloptr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-purrr/package.py b/var/spack/repos/builtin/packages/r-purrr/package.py
new file mode 100644
index 0000000000..4ef40d9480
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-purrr/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RPurrr(RPackage):
+ """A complete and consistent functional programming toolkit for R."""
+
+ homepage = "http://purrr.tidyverse.org/"
+ url = "https://cran.r-project.org/src/contrib/purrr_0.2.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/purrr"
+
+ version('0.2.4', 'd9a11e6c14771beb3ebe8f4771a552f3')
+
+ depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quadprog/package.py b/var/spack/repos/builtin/packages/r-quadprog/package.py
new file mode 100644
index 0000000000..dc35139a65
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-quadprog/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RQuadprog(RPackage):
+ """This package contains routines and documentation for solving
+ quadratic programming problems."""
+
+ homepage = "https://cran.r-project.org/web/packages/quadprog/index.html"
+ url = "https://cran.r-project.org/src/contrib/quadprog_1.5-5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/quadprog"
+
+ version('1.5-5', '8442f37afd8d0b19b12e77d63e6515ad')
diff --git a/var/spack/repos/builtin/packages/r-quantmod/package.py b/var/spack/repos/builtin/packages/r-quantmod/package.py
index 4cc53fcf69..749558f894 100644
--- a/var/spack/repos/builtin/packages/r-quantmod/package.py
+++ b/var/spack/repos/builtin/packages/r-quantmod/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,8 +33,10 @@ class RQuantmod(RPackage):
url = "https://cran.r-project.org/src/contrib/quantmod_0.4-5.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/quantmod"
+ version('0.4-10', 'e4119c673567801eee16dcbbd0265de8')
version('0.4-5', 'cab3c409e4de3df98a20f1ded60f3631')
depends_on('r-xts', type=('build', 'run'))
depends_on('r-zoo', type=('build', 'run'))
depends_on('r-ttr', type=('build', 'run'))
+ depends_on('r-curl', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quantreg/package.py b/var/spack/repos/builtin/packages/r-quantreg/package.py
index 2d5091ccaf..6b33827526 100644
--- a/var/spack/repos/builtin/packages/r-quantreg/package.py
+++ b/var/spack/repos/builtin/packages/r-quantreg/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,9 +34,10 @@ class RQuantreg(RPackage):
included."""
homepage = "https://cran.r-project.org/package=quantreg"
- url = "https://cran.r-project.org/src/contrib/quantreg_5.26.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/quantreg_5.29.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/quantreg"
+ version('5.29', '643ca728200d13f8c2e62365204e9907')
version('5.26', '1d89ed932fb4d67ae2d5da0eb8c2989f')
depends_on('r-sparsem', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-quantro/package.py b/var/spack/repos/builtin/packages/r-quantro/package.py
new file mode 100644
index 0000000000..05185abe8b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-quantro/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RQuantro(RPackage):
+ """A data-driven test for the assumptions of quantile normalization using
+ raw data such as objects that inherit eSets (e.g. ExpressionSet,
+ MethylSet). Group level information about each sample (such as
+ Tumor / Normal status) must also be provided because the test assesses
+ if there are global differences in the distributions between the
+ user-defined groups."""
+
+ homepage = "https://www.bioconductor.org/packages/quantro/"
+ url = "https://git.bioconductor.org/packages/quantro"
+ list_url = homepage
+
+ version('1.10.0', git='https://git.bioconductor.org/packages/quantro', commit='111337c0aba052aa49c3d2e2d3042794b28858c9')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-minfi', type=('build', 'run'))
+ depends_on('r-doparallel', type=('build', 'run'))
+ depends_on('r-foreach', type=('build', 'run'))
+ depends_on('r-iterators', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.10.0')
diff --git a/var/spack/repos/builtin/packages/r-qvalue/package.py b/var/spack/repos/builtin/packages/r-qvalue/package.py
new file mode 100644
index 0000000000..f34f00c7e4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-qvalue/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RQvalue(RPackage):
+ """This package takes a list of p-values resulting from the
+ simultaneous testing of many hypotheses and estimates their
+ q-values and local FDR values. The q-value of a test measures
+ the proportion of false positives incurred (called the false
+ discovery rate) when that particular test is called significant.
+ The local FDR measures the posterior probability the null
+ hypothesis is true given the test's p-value. Various plots are
+ automatically generated, allowing one to make sensible
+ significance cut-offs. Several mathematical results have
+ recently been shown on the conservative accuracy of the
+ estimated q-values from this software. The software can be
+ applied to problems in genomics, brain imaging, astrophysics,
+ and data mining."""
+
+ homepage = "https://www.bioconductor.org/packages/qvalue/"
+ url = "https://git.bioconductor.org/packages/qvalue"
+
+ version('2.8.0', git='https://git.bioconductor.org/packages/qvalue', commit='c7bf3315619d42d800f57a36670c25a7495ded72')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.8.0')
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-r6/package.py b/var/spack/repos/builtin/packages/r-r6/package.py
index e64a8a6532..627c09ee4b 100644
--- a/var/spack/repos/builtin/packages/r-r6/package.py
+++ b/var/spack/repos/builtin/packages/r-r6/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,11 @@ class RR6(RPackage):
classes are defined in different packages."""
homepage = "https://github.com/wch/R6/"
- url = "https://cran.r-project.org/src/contrib/R6_2.1.2.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/R6"
+ url = "https://cran.rstudio.com/src/contrib/R6_2.2.2.tar.gz"
+ list_url = homepage
+ version('2.2.2', '635b58c65bff624a1fab69c6b1989801')
+ version('2.2.0', '659d83b2d3f7a308a48332b4cfbdab49')
version('2.1.2', 'b6afb9430e48707be87638675390e457')
+
+ depends_on('r@3.0:')
diff --git a/var/spack/repos/builtin/packages/r-randomforest/package.py b/var/spack/repos/builtin/packages/r-randomforest/package.py
index bc7798695d..3fbb2a3d1e 100644
--- a/var/spack/repos/builtin/packages/r-randomforest/package.py
+++ b/var/spack/repos/builtin/packages/r-randomforest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-raster/package.py b/var/spack/repos/builtin/packages/r-raster/package.py
index daa42793ee..917adfb7d6 100644
--- a/var/spack/repos/builtin/packages/r-raster/package.py
+++ b/var/spack/repos/builtin/packages/r-raster/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rbgl/package.py b/var/spack/repos/builtin/packages/r-rbgl/package.py
new file mode 100644
index 0000000000..13cd4fb68e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rbgl/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRbgl(RPackage):
+ """A fairly extensive and comprehensive interface to the graph
+ algorithms contained in the BOOST library."""
+
+ homepage = "https://www.bioconductor.org/packages/RBGL/"
+ url = "https://git.bioconductor.org/packages/RBGL"
+
+ version('1.52.0', git='https://git.bioconductor.org/packages/RBGL', commit='93e8fcfafec8f1cd5638fe30dc0f9506d15b49c0')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.52.0')
+ depends_on('r-graph', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rbokeh/package.py b/var/spack/repos/builtin/packages/r-rbokeh/package.py
index 00f15891b2..ee254db179 100644
--- a/var/spack/repos/builtin/packages/r-rbokeh/package.py
+++ b/var/spack/repos/builtin/packages/r-rbokeh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py b/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
index 59f134caad..6092e34163 100644
--- a/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
+++ b/var/spack/repos/builtin/packages/r-rcolorbrewer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rcpp/package.py b/var/spack/repos/builtin/packages/r-rcpp/package.py
index b447dea8bd..9e6df80506 100644
--- a/var/spack/repos/builtin/packages/r-rcpp/package.py
+++ b/var/spack/repos/builtin/packages/r-rcpp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,8 +37,12 @@ class RRcpp(RPackage):
last two."""
homepage = "http://dirk.eddelbuettel.com/code/rcpp.html"
- url = "https://cran.r-project.org/src/contrib/Rcpp_0.12.6.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/Rcpp"
+ url = "https://cran.rstudio.com/src/contrib/Rcpp_0.12.13.tar.gz"
+ list_url = homepage
+ version('0.12.13', '5186d119132bfe07f66da74c50b190a4')
+ version('0.12.12', '97b36a3b567e3438067c4a7d0075fd90')
+ version('0.12.11', 'ea1710213cbb1d91b1d0318e6fa9aa37')
+ version('0.12.9', '691c49b12794507288b728ede03668a5')
version('0.12.6', 'db4280fb0a79cd19be73a662c33b0a8b')
version('0.12.5', 'f03ec05b4e391cc46e7ce330e82ff5e2')
diff --git a/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py b/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py
new file mode 100644
index 0000000000..dba1dfe93d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rcpparmadillo/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRcpparmadillo(RPackage):
+ """'Rcpp' Integration for the 'Armadillo' Templated Linear
+ Algebra Library."""
+
+ homepage = "https://cran.r-project.org/package=RcppArmadillo"
+ url = "https://cran.r-project.org/src/contrib/RcppArmadillo_0.8.100.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/RcppArmadillo"
+
+ version('0.8.100.1.0', 'a79c0ee967f502702414bc3c80c88f56')
+
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcppeigen/package.py b/var/spack/repos/builtin/packages/r-rcppeigen/package.py
index 23ec0bc27b..47ce27e3f5 100644
--- a/var/spack/repos/builtin/packages/r-rcppeigen/package.py
+++ b/var/spack/repos/builtin/packages/r-rcppeigen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -41,9 +41,10 @@ class RRcppeigen(RPackage):
GNU GPL version 2 or later, as is the rest of 'Rcpp'."""
homepage = "http://eigen.tuxfamily.org/"
- url = "https://cran.r-project.org/src/contrib/RcppEigen_0.3.2.8.1.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/RcppEigen_0.3.2.9.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/RcppEigen"
+ version('0.3.2.9.0', '14a7786882a5d9862d53c4b2217df318')
version('0.3.2.8.1', '4146e06e4fdf7f4d08db7839069d479f')
depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rcurl/package.py b/var/spack/repos/builtin/packages/r-rcurl/package.py
new file mode 100644
index 0000000000..75a1b3ab17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rcurl/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+# This is a template package file for Spack. We've put "FIXME"
+# next to all the things you'll want to change. Once you've handled
+# them, you can save this file and test your package like this:
+#
+# spack install r-rcurl
+#
+# You can edit this file again by typing:
+#
+# spack edit r-rcurl
+#
+# See the Spack documentation for more information on packaging.
+# If you submit this package back to Spack as a pull request,
+# please first remove this boilerplate and all FIXME comments.
+#
+from spack import *
+
+
+class RRcurl(RPackage):
+ """A wrapper for 'libcurl' <http://curl.haxx.se/libcurl/> Provides
+ functions to allow one to compose general HTTP requests and provides
+ convenient functions to fetch URIs, get & post forms, etc. and process
+ the results returned by the Web server. This provides a great deal of
+ control over the HTTP/FTP/... connection and the form of the request
+ while providing a higher-level interface than is available just using
+ R socket connections. Additionally, the underlying implementation is
+ robust and extensive, supporting FTP/FTPS/TFTP (uploads and downloads),
+ SSL/HTTPS, telnet, dict, ldap, and also supports cookies, redirects,
+ authentication, etc."""
+
+ homepage = "https://cran.rstudio.com/web/packages/RCurl/index.html"
+ url = "https://cran.rstudio.com/src/contrib/RCurl_1.95-4.8.tar.gz"
+ list_url = homepage
+
+ version('1.95-4.8', '9c8aaff986eb2792c89dd3ae54d21580')
+
+ depends_on('r-bitops', type=('build', 'run'))
+ depends_on('curl')
diff --git a/var/spack/repos/builtin/packages/r-rda/package.py b/var/spack/repos/builtin/packages/r-rda/package.py
new file mode 100644
index 0000000000..614f6756ce
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rda/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRda(RPackage):
+ """Shrunken Centroids Regularized Discriminant Analysis for the
+ classification purpose in high dimensional data."""
+
+ homepage = "https://cran.r-project.org/web/packages/rda/index.html"
+ url = "https://cran.r-project.org/src/contrib/rda_1.0.2-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rda"
+ version('1.0.2-1', '78060c5e054a63a2df4ae4002d7247bc')
diff --git a/var/spack/repos/builtin/packages/r-readr/package.py b/var/spack/repos/builtin/packages/r-readr/package.py
new file mode 100644
index 0000000000..bec64a6ebd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-readr/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReadr(RPackage):
+ """The goal of 'readr' is to provide a fast and friendly way to read
+ rectangular data (like 'csv', 'tsv', and 'fwf'). It is designed to
+ flexibly parse many types of data found in the wild, while still cleanly
+ failing when data unexpectedly changes."""
+
+ homepage = "https://cran.rstudio.com/web/packages/readr/index.html"
+ url = "https://cran.rstudio.com/src/contrib/readr_1.1.1.tar.gz"
+
+ version('1.1.1', 'cffb6669664f6a0f6fe172542e64cb47')
+
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-hms', type=('build', 'run'))
+ depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-bh', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-readxl/package.py b/var/spack/repos/builtin/packages/r-readxl/package.py
new file mode 100644
index 0000000000..c70750ea69
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-readxl/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReadxl(RPackage):
+ """Import excel files into R. Supports '.xls' via the embedded
+ 'libxls' C library <https://sourceforge.net/projects/libxls/> and
+ '.xlsx' via the embedded 'RapidXML' C++ library
+ <https://rapidxml.sourceforge.net>. Works on Windows, Mac and Linux
+ without external dependencies."""
+
+ homepage = "http://readxl.tidyverse.org/"
+ url = "https://cran.r-project.org/src/contrib/readxl_1.0.0.tar.gz"
+
+ version('1.0.0', '030c47ae1af5dd4168087160c29131e4')
+
+ depends_on('r-tibble', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-cellranger', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-registry/package.py b/var/spack/repos/builtin/packages/r-registry/package.py
index 479250cac6..da252a9681 100644
--- a/var/spack/repos/builtin/packages/r-registry/package.py
+++ b/var/spack/repos/builtin/packages/r-registry/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rematch/package.py b/var/spack/repos/builtin/packages/r-rematch/package.py
new file mode 100644
index 0000000000..931f979c60
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rematch/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRematch(RPackage):
+ """A small wrapper on 'regexpr' to extract the matches and
+ captured groups from the match of a regular expression to a
+ character vector."""
+
+ homepage = "https://cran.r-project.org/package=rematch"
+ url = "https://cran.r-project.org/src/contrib/rematch_1.0.1.tar.gz"
+
+ version('1.0.1', '5271666295e232931f21499522489dd3')
+
+ depends_on('r-covr', type=('build', 'run'))
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reordercluster/package.py b/var/spack/repos/builtin/packages/r-reordercluster/package.py
new file mode 100644
index 0000000000..49ab521967
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-reordercluster/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReordercluster(RPackage):
+ """Tools for performing the leaf reordering for the dendrogram
+ that preserves the hierarchical clustering result and at the
+ same time tries to group instances from the same class together."""
+
+ homepage = "https://cran.r-project.org/package=ReorderCluster"
+ url = "https://cran.rstudio.com/src/contrib/ReorderCluster_1.0.tar.gz"
+
+ version('1.0', '67ba34acb15dda75389a822bd2fdd31a')
+
+ depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reportingtools/package.py b/var/spack/repos/builtin/packages/r-reportingtools/package.py
new file mode 100644
index 0000000000..db5978248c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-reportingtools/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReportingtools(RPackage):
+ """The ReportingTools software package enables users to easily
+ display reports of analysis results generated from sources such
+ as microarray and sequencing data. The package allows users to
+ create HTML pages that may be viewed on a web browser such as
+ Safari, or in other formats readable by programs such as Excel.
+ Users can generate tables with sortable and filterable columns,
+ make and display plots, and link table entries to other data
+ sources such as NCBI or larger plots within the HTML page. Using
+ the package, users can also produce a table of contents page to
+ link various reports together for a particular project that can
+ be viewed in a web browser. For more examples, please visit our
+ site: http:// research-pub.gene.com/ReportingTools."""
+
+ homepage = "https://bioconductor.org/packages/ReportingTools/"
+ url = "https://git.bioconductor.org/packages/ReportingTools"
+
+ version('2.16.0', git='https://git.bioconductor.org/packages/ReportingTools', commit='b1aa0ea302da7f2993ce8087b1d09c11ddf03663')
+
+ depends_on('r@3.4.0:3.4.9', when='@2.16.0')
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-hwriter', type=('build', 'run'))
+ depends_on('r-category', type=('build', 'run'))
+ depends_on('r-gostats', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-annotate', type=('build', 'run'))
+ depends_on('r-pfam-db', type=('build', 'run'))
+ depends_on('r-gseabase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-utils', type=('build', 'run'))
+ depends_on('r-deseq2', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-ggbio', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-repr/package.py b/var/spack/repos/builtin/packages/r-repr/package.py
index 47720327de..056e19aedc 100644
--- a/var/spack/repos/builtin/packages/r-repr/package.py
+++ b/var/spack/repos/builtin/packages/r-repr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-reprex/package.py b/var/spack/repos/builtin/packages/r-reprex/package.py
new file mode 100644
index 0000000000..a4fa82ed16
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-reprex/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReprex(RPackage):
+ """Convenience wrapper that uses the 'rmarkdown' package to render small
+ snippets of code to target formats that include both code and output.
+ The goal is to encourage the sharing of small, reproducible, and
+ runnable examples on code-oriented websites, such as
+ <http://stackoverflow.com> and <https://github.com>, or in email.
+ 'reprex' also extracts clean, runnable R code from various common
+ formats, such as copy/paste from an R session."""
+
+ homepage = "https://github.com/jennybc/reprex"
+ url = "https://cran.r-project.org/src/contrib/reprex_0.1.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/reprex"
+
+ version('0.1.1', 'fcd89995d7b35a2ddd4269973937bde3')
+
+ depends_on('r-callr', type=('build', 'run'))
+ depends_on('r-clipr', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-rmarkdown', type=('build', 'run'))
+ depends_on('r-whisker', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reshape/package.py b/var/spack/repos/builtin/packages/r-reshape/package.py
new file mode 100644
index 0000000000..a4da7286ca
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-reshape/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RReshape(RPackage):
+ """Flexibly restructure and aggregate data using just two functions: melt
+ and cast."""
+
+ homepage = "https://cran.r-project.org/package=reshape"
+ url = "https://cran.r-project.org/src/contrib/reshape_0.8.7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/reshape"
+
+ version('0.8.7', '0b0eececc5eb74dea9d59a985bce6211')
+
+ depends_on('r-plyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-reshape2/package.py b/var/spack/repos/builtin/packages/r-reshape2/package.py
index d27231e139..204ccdee8a 100644
--- a/var/spack/repos/builtin/packages/r-reshape2/package.py
+++ b/var/spack/repos/builtin/packages/r-reshape2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,10 @@ class RReshape2(RPackage):
and dcast (or acast)."""
homepage = "https://github.com/hadley/reshape"
- url = "https://cran.r-project.org/src/contrib/reshape2_1.4.1.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/reshape2_1.4.2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/reshape2"
+ version('1.4.2', 'c851a0312191b8c5bab956445df7cf5f')
version('1.4.1', '41e9dffdf5c6fa830321ac9c8ebffe00')
depends_on('r-plyr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rex/package.py b/var/spack/repos/builtin/packages/r-rex/package.py
new file mode 100644
index 0000000000..e39976644c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rex/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRex(RPackage):
+ """A friendly interface for the construction of regular expressions."""
+
+ homepage = "https://cran.r-project.org/package=rex"
+ url = "https://cran.r-project.org/src/contrib/rex_1.1.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rex"
+
+ version('1.1.2', '8820b4d4fe3718f275847b6f2cf83689')
+
+ depends_on('r-lazyeval', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rgl/package.py b/var/spack/repos/builtin/packages/r-rgl/package.py
new file mode 100644
index 0000000000..97f89ed092
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rgl/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRgl(RPackage):
+ """Provides medium to high level functions for 3D interactive graphics,
+ including functions modelled on base graphics (plot3d(), etc.) as well as
+ functions for constructing representations of geometric objects (cube3d(),
+ etc.). Output may be on screen using OpenGL, or to various standard
+ 3D file formats including WebGL, PLY, OBJ, STL as well as 2D image formats,
+ including PNG, Postscript, SVG, PGF."""
+
+ homepage = "https://r-forge.r-project.org/projects/rgl"
+ url = "https://cloud.r-project.org/src/contrib/rgl_0.98.1.tar.gz"
+
+ version('0.98.1', 'bd69e1d33f1590feb4b6dc080b133e5b')
+
+ depends_on('r@3.2:3.9')
+ depends_on('zlib', type=('link'))
+ depends_on('libpng', type=('link'))
+ depends_on('libx11')
+ depends_on('freetype', type=('link'))
+ depends_on('mesa', type=('link'))
+ depends_on('mesa-glu', type=('link'))
+ depends_on('r-htmlwidgets', type=('build', 'run'))
+ depends_on('r-htmltools', type=('build', 'run'))
+ depends_on('r-knitr', type=('build', 'run'))
+ depends_on('r-jsonlite', type=('build', 'run'))
+ depends_on('r-shiny', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
+
+ def configure_args(self):
+ args = ['--x-includes=%s' % self.spec['libx11'].prefix.include,
+ '--x-libraries=%s' % self.spec['libx11'].prefix.lib,
+ '--with-gl-includes=%s' % self.spec['mesa'].prefix.include,
+ '--with-gl-libraries=%s' % self.spec['mesa'].prefix.lib,
+ '--with-gl-prefix=%s' % self.spec['mesa'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/r-rgooglemaps/package.py b/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
index 87672a35e2..e1665fd991 100644
--- a/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
+++ b/var/spack/repos/builtin/packages/r-rgooglemaps/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rhtslib/package.py b/var/spack/repos/builtin/packages/r-rhtslib/package.py
new file mode 100644
index 0000000000..4af0093830
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rhtslib/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRhtslib(RPackage):
+ """This package provides version 1.1 of the 'HTSlib' C library
+ for high-throughput sequence analysis. The package is primarily
+ useful to developers of other R packages who wish to make use
+ of HTSlib. Motivation and instructions for use of this package
+ are in the vignette, vignette(package="Rhtslib", "Rhtslib")."""
+
+ homepage = "https://www.bioconductor.org/packages/Rhtslib/"
+ url = "https://git.bioconductor.org/packages/Rhtslib"
+
+ version('1.8.0', git='https://git.bioconductor.org/packages/Rhtslib', commit='3b5493473bed42958614091c58c739932ffcfa79')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.8.0')
+ depends_on('r-zlibbioc', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rinside/package.py b/var/spack/repos/builtin/packages/r-rinside/package.py
index d8e7c28e23..1d744db01d 100644
--- a/var/spack/repos/builtin/packages/r-rinside/package.py
+++ b/var/spack/repos/builtin/packages/r-rinside/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rjava/package.py b/var/spack/repos/builtin/packages/r-rjava/package.py
index 440b93ff1f..a1e8003343 100644
--- a/var/spack/repos/builtin/packages/r-rjava/package.py
+++ b/var/spack/repos/builtin/packages/r-rjava/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,4 +35,4 @@ class RRjava(RPackage):
version('0.9-8', '51ae0d690ceed056ebe7c4be71fc6c7a')
- depends_on('jdk')
+ depends_on('java')
diff --git a/var/spack/repos/builtin/packages/r-rjson/package.py b/var/spack/repos/builtin/packages/r-rjson/package.py
index f37b574323..d22b7c780f 100644
--- a/var/spack/repos/builtin/packages/r-rjson/package.py
+++ b/var/spack/repos/builtin/packages/r-rjson/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rjsonio/package.py b/var/spack/repos/builtin/packages/r-rjsonio/package.py
index 4d5ffa6ddf..064a50aea8 100644
--- a/var/spack/repos/builtin/packages/r-rjsonio/package.py
+++ b/var/spack/repos/builtin/packages/r-rjsonio/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rlang/package.py b/var/spack/repos/builtin/packages/r-rlang/package.py
new file mode 100644
index 0000000000..86eb205b7c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rlang/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRlang(RPackage):
+ """A toolbox for working with base types, core R features like the
+ condition system, and core 'Tidyverse' features like tidy evaluation."""
+
+ homepage = "https://cran.r-project.org/web/packages/rlang/index.html"
+ url = "https://cran.r-project.org/src/contrib/rlang_0.1.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rlang"
+
+ version('0.1.2', '170f8cf7b61898040643515a1746a53a')
+ version('0.1.1', '38a51a0b8f8487eb52b4f3d986313682')
diff --git a/var/spack/repos/builtin/packages/r-rmarkdown/package.py b/var/spack/repos/builtin/packages/r-rmarkdown/package.py
index 31a7695923..1910aa043a 100644
--- a/var/spack/repos/builtin/packages/r-rmarkdown/package.py
+++ b/var/spack/repos/builtin/packages/r-rmarkdown/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rminer/package.py b/var/spack/repos/builtin/packages/r-rminer/package.py
new file mode 100644
index 0000000000..2bd9147afb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rminer/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRminer(RPackage):
+ """Facilitates the use of data mining algorithms in classification and
+ regression (including time series forecasting) tasks by presenting a short
+ and coherent set of functions."""
+
+ homepage = "http://www3.dsi.uminho.pt/pcortez/rminer.html"
+ url = "https://cran.r-project.org/src/contrib/rminer_1.4.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rminer"
+
+ version('1.4.2', '7d5d90f4ae030cf647d67aa962412c05')
+
+ depends_on('r-plotrix', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-nnet', type=('build', 'run'))
+ depends_on('r-kknn', type=('build', 'run'))
+ depends_on('r-pls', type=('build', 'run'))
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-mda', type=('build', 'run'))
+ depends_on('r-rpart', type=('build', 'run'))
+ depends_on('r-randomforest', type=('build', 'run'))
+ depends_on('r-adabag', type=('build', 'run'))
+ depends_on('r-party', type=('build', 'run'))
+ depends_on('r-cubist', type=('build', 'run'))
+ depends_on('r-kernlab', type=('build', 'run'))
+ depends_on('r-e1071', type=('build', 'run'))
+ depends_on('r-glmnet', type=('build', 'run'))
+ depends_on('r-xgboost', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rmpfr/package.py b/var/spack/repos/builtin/packages/r-rmpfr/package.py
new file mode 100644
index 0000000000..1c2e5aafe3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rmpfr/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRmpfr(RPackage):
+ """Arithmetic (via S4 classes and methods) for arbitrary precision
+ floating point numbers, including transcendental ("special")
+ functions. To this end, Rmpfr interfaces to the LGPL'ed MPFR
+ (Multiple Precision Floating-Point Reliable) Library which itself
+ is based on the GMP (GNU Multiple Precision) Library."""
+
+ homepage = "http://rmpfr.r-forge.r-project.org"
+ url = "https://cran.r-project.org/src/contrib/Rmpfr_0.6-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/Rmpfr"
+
+ version('0.6-1', '55d4ec257bd2a9233bafee9e444d0265')
+
+ depends_on('r-gmp@0.5-8:', type=('build', 'run'))
+ depends_on('mpfr@3.0.0:')
diff --git a/var/spack/repos/builtin/packages/r-rmpi/package.py b/var/spack/repos/builtin/packages/r-rmpi/package.py
new file mode 100644
index 0000000000..e7e2870975
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rmpi/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRmpi(RPackage):
+ """An interface (wrapper) to MPI APIs. It also provides interactive R
+ manager and worker environment."""
+
+ homepage = "http://www.stats.uwo.ca/faculty/yu/Rmpi"
+ url = "https://cran.r-project.org/src/contrib/Rmpi_0.6-6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/Rmpi"
+
+ version('0.6-6', 'a6fa2ff5e1cd513334b4e9e9e7a2286f')
+ depends_on('mpi')
+ depends_on('r@2.15.1:')
+
+ # The following MPI types are not supported
+ conflicts('^intel-mpi')
+ conflicts('^intel-parallel-studio')
+ conflicts('^mvapich2')
+ conflicts('^spectrum-mpi')
+
+ def configure_args(self):
+ spec = self.spec
+
+ mpi_name = spec['mpi'].name
+
+ # The type of MPI. Supported values are:
+ # OPENMPI, LAM, MPICH, MPICH2, or CRAY
+ if mpi_name == 'openmpi':
+ Rmpi_type = 'OPENMPI'
+ elif mpi_name == 'mpich':
+ Rmpi_type = 'MPICH2'
+ else:
+ raise InstallError('Unsupported MPI type')
+
+ return [
+ '--with-Rmpi-type={0}'.format(Rmpi_type),
+ '--with-mpi={0}'.format(spec['mpi'].prefix),
+ ]
diff --git a/var/spack/repos/builtin/packages/r-rmysql/package.py b/var/spack/repos/builtin/packages/r-rmysql/package.py
index 4946b071fa..e34677652c 100644
--- a/var/spack/repos/builtin/packages/r-rmysql/package.py
+++ b/var/spack/repos/builtin/packages/r-rmysql/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rngtools/package.py b/var/spack/repos/builtin/packages/r-rngtools/package.py
index f9edc93a2c..a9b06161d7 100644
--- a/var/spack/repos/builtin/packages/r-rngtools/package.py
+++ b/var/spack/repos/builtin/packages/r-rngtools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-robustbase/package.py b/var/spack/repos/builtin/packages/r-robustbase/package.py
new file mode 100644
index 0000000000..1361e289fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-robustbase/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRobustbase(RPackage):
+ """"Essential" Robust Statistics. Tools allowing to analyze data
+ with robust methods. This includes regression methodology
+ including model selections and multivariate statistics where we
+ strive to cover the book "Robust Statistics, Theory and Methods"
+ by 'Maronna, Martin and Yohai'; Wiley 2006."""
+
+ homepage = "https://robustbase.r-forge.r-project.org"
+ url = "https://cran.r-project.org/src/contrib/robustbase_0.92-7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/robustbase"
+
+ version('0.92-7', 'db3c8d12f9729b35bad17abf09e80b72')
+
+ depends_on('r-deoptimr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rocr/package.py b/var/spack/repos/builtin/packages/r-rocr/package.py
new file mode 100644
index 0000000000..9936d99dbf
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rocr/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRocr(RPackage):
+ """ROC graphs, sensitivity/specificity curves, lift charts,
+ and precision/recall plots are popular examples of trade-off
+ visualizations for specific pairs of performance measures. ROCR
+ is a flexible tool for creating cutoff-parameterized 2D performance
+ curves by freely combining two from over 25 performance measures
+ (new performance measures can be added using a standard interface).
+ Curves from different cross-validation or bootstrapping runs can
+ be averaged by different methods, and standard deviations, standard
+ errors or box plots can be used to visualize the variability across
+ the runs. The parameterization can be visualized by printing cutoff
+ values at the corresponding curve positions, or by coloring the
+ curve according to cutoff. All components of a performance plot
+ can be quickly adjusted using a flexible parameter dispatching
+ mechanism. Despite its flexibility, ROCR is easy to use, with only
+ three commands and reasonable default values for all optional
+ parameters."""
+ homepage = "https://cran.r-project.org/package=ROCR"
+ url = "https://cran.rstudio.com/src/contrib/ROCR_1.0-7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/ROCR"
+
+ version('1.0-7', '46cbd43ae87fc4e1eff2109529a4820e')
+ depends_on('r-gplots', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rodbc/package.py b/var/spack/repos/builtin/packages/r-rodbc/package.py
index 70e477bcb1..f7364b16fc 100644
--- a/var/spack/repos/builtin/packages/r-rodbc/package.py
+++ b/var/spack/repos/builtin/packages/r-rodbc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,6 @@ class RRodbc(RPackage):
homepage = "https://cran.rstudio.com/web/packages/RODBC/"
url = "https://cran.rstudio.com/src/contrib/RODBC_1.3-13.tar.gz"
- list_url = "https://cran.rstudio.com/src/contrib/Archive/RODBC"
version('1.3-13', 'c52ef9139c2ed85adc53ad6effa7d68e')
diff --git a/var/spack/repos/builtin/packages/r-roxygen2/package.py b/var/spack/repos/builtin/packages/r-roxygen2/package.py
index 1bbfeb2e87..30e295fbad 100644
--- a/var/spack/repos/builtin/packages/r-roxygen2/package.py
+++ b/var/spack/repos/builtin/packages/r-roxygen2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rpart-plot/package.py b/var/spack/repos/builtin/packages/r-rpart-plot/package.py
new file mode 100644
index 0000000000..e7c1a09519
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rpart-plot/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRpartPlot(RPackage):
+ """Plot 'rpart' models. Extends plot.rpart() and text.rpart() in the
+ 'rpart' package."""
+
+ homepage = "https://cran.r-project.org/package=rpart.plot"
+ url = "https://cran.r-project.org/src/contrib/rpart.plot_2.1.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rpart.plot"
+
+ version('2.1.0', 'fb0f8edfe22c464683ee82aa429136f9')
+
+ depends_on('r-rpart@4.1-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rpart/package.py b/var/spack/repos/builtin/packages/r-rpart/package.py
new file mode 100644
index 0000000000..adfbf3fdef
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rpart/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRpart(RPackage):
+ """Recursive partitioning for classification, regression and
+ survival trees."""
+
+ homepage = "https://cran.r-project.org/package=rpart"
+ url = "https://cran.r-project.org/src/contrib/rpart_4.1-10.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rpart"
+
+ version('4.1-11', 'f77b37cddf7e9a7b5993a52a750b8817')
+ version('4.1-10', '15873cded4feb3ef44d63580ba3ca46e')
+
+ depends_on('r@2.15.0:')
diff --git a/var/spack/repos/builtin/packages/r-rpostgresql/package.py b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
index b204c53828..3c8d9f0798 100644
--- a/var/spack/repos/builtin/packages/r-rpostgresql/package.py
+++ b/var/spack/repos/builtin/packages/r-rpostgresql/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rsamtools/package.py b/var/spack/repos/builtin/packages/r-rsamtools/package.py
new file mode 100644
index 0000000000..41b08a95c7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rsamtools/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRsamtools(RPackage):
+ """This package provides an interface to the 'samtools', 'bcftools', and
+ 'tabix' utilities (see 'LICENCE') for manipulating SAM (Sequence
+ Alignment / Map), FASTA, binary variant call (BCF) and compressed
+ indexed tab-delimited (tabix) files."""
+
+ homepage = "https://bioconductor.org/packages/Rsamtools/"
+ url = "https://git.bioconductor.org/packages/Rsamtools"
+ list_url = homepage
+
+ version('1.28.0', git='https://git.bioconductor.org/packages/Rsamtools', commit='dfa5b6abef68175586f21add7927174786412472')
+
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r-bitops', type=('build', 'run'))
+ depends_on('r-biocparallel', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.28.0')
diff --git a/var/spack/repos/builtin/packages/r-rsnns/package.py b/var/spack/repos/builtin/packages/r-rsnns/package.py
index 1a0978363a..92b891bf1a 100644
--- a/var/spack/repos/builtin/packages/r-rsnns/package.py
+++ b/var/spack/repos/builtin/packages/r-rsnns/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rsqlite/package.py b/var/spack/repos/builtin/packages/r-rsqlite/package.py
index c08fcac20c..50cd4df05d 100644
--- a/var/spack/repos/builtin/packages/r-rsqlite/package.py
+++ b/var/spack/repos/builtin/packages/r-rsqlite/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,16 @@ class RRsqlite(RPackage):
interface compliant with the DBI package. The source for the SQLite engine
(version 3.8.6) is included."""
- homepage = "https://github.com/rstats-db/RSQLite"
+ homepage = "https://cran.rstudio.com/web/packages/RSQLite/index.html"
url = "https://cran.r-project.org/src/contrib/RSQLite_1.0.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/RSQLite"
-
- version('1.0.0', 'e6cbe2709612b687c13a10d30c7bad45')
+ version('2.0', '63842410e78ccdfc52d4ee97992521d5')
depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-bit64', type=('build', 'run'))
+ depends_on('r-blob', type=('build', 'run'))
+ depends_on('r-memoise', type=('build', 'run'))
+ depends_on('r-pkgconfig', type=('build', 'run'))
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-bh', type=('build', 'run'))
+ depends_on('r-plogr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rstan/package.py b/var/spack/repos/builtin/packages/r-rstan/package.py
index e616f0a7dd..50c9dbb205 100644
--- a/var/spack/repos/builtin/packages/r-rstan/package.py
+++ b/var/spack/repos/builtin/packages/r-rstan/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rstudioapi/package.py b/var/spack/repos/builtin/packages/r-rstudioapi/package.py
index 2558a5c3f6..a9d977f62e 100644
--- a/var/spack/repos/builtin/packages/r-rstudioapi/package.py
+++ b/var/spack/repos/builtin/packages/r-rstudioapi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-rtracklayer/package.py b/var/spack/repos/builtin/packages/r-rtracklayer/package.py
new file mode 100644
index 0000000000..11f604b72f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rtracklayer/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRtracklayer(RPackage):
+ """Extensible framework for interacting with multiple genome browsers
+ (currently UCSC built-in) and manipulating annotation tracks in various
+ formats (currently GFF, BED, bedGraph, BED15, WIG, BigWig and 2bit
+ built-in). The user may export/import tracks to/from the supported
+ browsers, as well as query and modify the browser state, such as the
+ current viewport."""
+
+ homepage = "http://bioconductor.org/packages/rtracklayer/"
+ url = "https://git.bioconductor.org/packages/rtracklayer"
+ list_url = homepage
+
+ version('1.36.6', git='https://git.bioconductor.org/packages/rtracklayer', commit='8c0ac7230f94e0c5a981acbb178c8de70e968131')
+
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r-rcurl', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-genomicalignments', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.36.6')
diff --git a/var/spack/repos/builtin/packages/r-rvest/package.py b/var/spack/repos/builtin/packages/r-rvest/package.py
new file mode 100644
index 0000000000..d35e14ace7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-rvest/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RRvest(RPackage):
+ """Wrappers around the 'xml2' and 'httr' packages to make it easy to
+ download, then manipulate, HTML and XML."""
+
+ homepage = "https://github.com/hadley/rvest"
+ url = "https://cran.r-project.org/src/contrib/rvest_0.3.2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/rvest"
+
+ version('0.3.2', '78c88740850e375fc5da50d37734d1b2')
+
+ depends_on('r-xml2', type=('build', 'run'))
+ depends_on('r-httr', type=('build', 'run'))
+ depends_on('r-selectr', type=('build', 'run'))
+ depends_on('r-magrittr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-rzmq/package.py b/var/spack/repos/builtin/packages/r-rzmq/package.py
index f385a13901..18ef9e04f2 100644
--- a/var/spack/repos/builtin/packages/r-rzmq/package.py
+++ b/var/spack/repos/builtin/packages/r-rzmq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-s4vectors/package.py b/var/spack/repos/builtin/packages/r-s4vectors/package.py
new file mode 100644
index 0000000000..84ee43cdfe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-s4vectors/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RS4vectors(RPackage):
+ """The S4Vectors package defines the Vector and List virtual classes and
+ a set of generic functions that extend the semantic of ordinary
+ vectors and lists in R. Package developers can easily implement
+ vector-like or list-like objects as concrete subclasses of Vector or
+ List. In addition, a few low-level concrete subclasses of general
+ interest (e.g. DataFrame, Rle, and Hits) are implemented in the
+ S4Vectors package itself (many more are implemented in the IRanges
+ package and in other Bioconductor infrastructure packages)."""
+
+ homepage = "https://bioconductor.org/packages/S4Vectors/"
+ url = "https://git.bioconductor.org/packages/S4Vectors"
+ list_url = homepage
+
+ version('0.14.7', git='https://git.bioconductor.org/packages/S4Vectors', commit='40af17fe0b8e93b6a72fc787540d2961773b8e23')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@0.14.7')
diff --git a/var/spack/repos/builtin/packages/r-samr/package.py b/var/spack/repos/builtin/packages/r-samr/package.py
new file mode 100644
index 0000000000..da575143e8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-samr/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSamr(RPackage):
+ """Significance Analysis of Microarrays."""
+
+ homepage = "https://cran.r-project.org/package=samr"
+ url = "https://cran.rstudio.com/src/contrib/samr_2.0.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/samr"
+ version('2.0', 'e8f50b8b25069d03d42c2c61c72b0da0')
+
+ depends_on('r-impute', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sandwich/package.py b/var/spack/repos/builtin/packages/r-sandwich/package.py
index 62bd2880e5..5f7d66dd7a 100644
--- a/var/spack/repos/builtin/packages/r-sandwich/package.py
+++ b/var/spack/repos/builtin/packages/r-sandwich/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,4 +35,6 @@ class RSandwich(RPackage):
version('2.3-4', 'a621dbd8a57b6e1e036496642aadc2e5')
+ depends_on('r@2.0.0:')
+
depends_on('r-zoo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scales/package.py b/var/spack/repos/builtin/packages/r-scales/package.py
index e3832f78e0..ebe9798e86 100644
--- a/var/spack/repos/builtin/packages/r-scales/package.py
+++ b/var/spack/repos/builtin/packages/r-scales/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,9 +30,11 @@ class RScales(RPackage):
automatically determining breaks and labels for axes and legends."""
homepage = "https://github.com/hadley/scales"
- url = "https://cran.r-project.org/src/contrib/scales_0.4.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/scales_0.5.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/scales"
+ version('0.5.0', '435f6bd826c5cf8df703ffb8a6750fd1')
+ version('0.4.1', '3fb2218866a7fe4c1f6e66790876f85a')
version('0.4.0', '7b5602d9c55595901192248bca25c099')
depends_on('r-rcolorbrewer', type=('build', 'run'))
@@ -41,3 +43,5 @@ class RScales(RPackage):
depends_on('r-munsell', type=('build', 'run'))
depends_on('r-labeling', type=('build', 'run'))
depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-viridislite', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-scatterplot3d/package.py b/var/spack/repos/builtin/packages/r-scatterplot3d/package.py
new file mode 100644
index 0000000000..eedd61cc6e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-scatterplot3d/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RScatterplot3d(RPackage):
+ """scatterplot3d: 3D Scatter Plot"""
+
+ homepage = "https://CRAN.R-project.org/package=scatterplot3d"
+ url = "https://cran.r-project.org/src/contrib/scatterplot3d_0.3-40.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/scatterplot3d"
+
+ version('0.3-40', '67b9ab6131d244d7fc1db39dcc911dfe')
+
+ depends_on('r@2.7.0:')
diff --git a/var/spack/repos/builtin/packages/r-segmented/package.py b/var/spack/repos/builtin/packages/r-segmented/package.py
new file mode 100644
index 0000000000..784a9d55d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-segmented/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSegmented(RPackage):
+ """Given a regression model, segmented 'updates' the model by adding
+ one or more segmented (i.e., piecewise-linear) relationships. Several
+ variables with multiple breakpoints are allowed."""
+
+ homepage = "https://CRAN.R-project.org/package=segmented"
+ url = "https://cran.r-project.org/src/contrib/segmented_0.5-1.4.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/segmented"
+
+ version('0.5-2.2', '1511ec365aea289d5f0a574f6d10d2d6')
+ version('0.5-1.4', 'f9d76ea9e22ef5f40aa126b697351cae')
diff --git a/var/spack/repos/builtin/packages/r-selectr/package.py b/var/spack/repos/builtin/packages/r-selectr/package.py
new file mode 100644
index 0000000000..321a7da099
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-selectr/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSelectr(RPackage):
+ """Translates a CSS3 selector into an equivalent XPath expression. This
+ allows us to use CSS selectors when working with the XML package as it
+ can only evaluate XPath expressions. Also provided are convenience
+ functions useful for using CSS selectors on XML nodes. This package
+ is a port of the Python package 'cssselect'
+ (<https://pythonhosted.org/cssselect/>)."""
+
+ homepage = "https://sjp.co.nz/projects/selectr"
+ url = "https://cran.r-project.org/src/contrib/selectr_0.3-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/selectr"
+
+ version('0.3-1', '7190fcdea1823ad7ef429cab6938e960')
+
+ depends_on('r-testthat', type=('build', 'run'))
+ depends_on('r-stringr', type=('build', 'run'))
+ depends_on('r-xml', type=('build', 'run'))
+ depends_on('r-xml2', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-seqinr/package.py b/var/spack/repos/builtin/packages/r-seqinr/package.py
new file mode 100644
index 0000000000..a78e36ef74
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-seqinr/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSeqinr(RPackage):
+ """Exploratory data analysis and data visualization for biological
+ sequence (DNA and protein) data. Includes also utilities for sequence
+ data management under the ACNUC system."""
+
+ homepage = "http://seqinr.r-forge.r-project.org"
+ url = "https://cran.r-project.org/src/contrib/seqinr_3.3-6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/seginr"
+
+ version('3.4-5', 'd550525dcea754bbd5b83cb46b4124cc')
+ version('3.3-6', '73023d627e72021b723245665e1ad055')
+
+ depends_on('r@2.10:')
+ depends_on('r-ade4', type=('build', 'run'))
+ depends_on('r-segmented', type=('build', 'run'))
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/r-sfsmisc/package.py b/var/spack/repos/builtin/packages/r-sfsmisc/package.py
new file mode 100644
index 0000000000..d07abd3b44
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-sfsmisc/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSfsmisc(RPackage):
+ """Useful utilities ['goodies'] from Seminar fuer Statistik
+ ETH Zurich, quite a few related to graphics;
+ some were ported from S-plus."""
+
+ homepage = "https://cran.r-project.org/web/packages/sfsmisc/index.html"
+ url = "https://cran.r-project.org/src/contrib/sfsmisc_1.1-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/sfsmisc"
+ version('1.1-0', '1ba4303076e2bbf018f7eecc7d04e178')
diff --git a/var/spack/repos/builtin/packages/r-shape/package.py b/var/spack/repos/builtin/packages/r-shape/package.py
new file mode 100644
index 0000000000..8f07f842e0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-shape/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RShape(RPackage):
+ """Functions for plotting graphical shapes such as ellipses, circles,
+ cylinders, arrows, ..."""
+
+ homepage = "https://cran.r-project.org/package=shape"
+ url = "https://cran.r-project.org/src/contrib/shape_1.4.3.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/shape"
+
+ version('1.4.3', '2a807bf95e7decc71478f805221852da')
+ version('1.4.2', '75557c43a385b9cc0c4dff361af6e06c')
diff --git a/var/spack/repos/builtin/packages/r-shiny/package.py b/var/spack/repos/builtin/packages/r-shiny/package.py
index b1d21c7e7c..c75e22ea31 100644
--- a/var/spack/repos/builtin/packages/r-shiny/package.py
+++ b/var/spack/repos/builtin/packages/r-shiny/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,9 +32,10 @@ class RShiny(RPackage):
powerful applications with minimal effort."""
homepage = "http://shiny.rstudio.com/"
- url = "https://cran.r-project.org/src/contrib/shiny_0.13.2.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/shiny"
+ url = "https://cran.rstudio.com/src/contrib/shiny_1.0.5.tar.gz"
+ list_url = homepage
+ version('1.0.5', '419dd5d3ea0bd87a07f8f0b1ef14fc13')
version('0.13.2', 'cb5bff7a28ad59ec2883cd0912ca9611')
depends_on('r-httpuv', type=('build', 'run'))
@@ -44,3 +45,4 @@ class RShiny(RPackage):
depends_on('r-digest', type=('build', 'run'))
depends_on('r-htmltools', type=('build', 'run'))
depends_on('r-r6', type=('build', 'run'))
+ depends_on('r-sourcetools', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-siggenes/package.py b/var/spack/repos/builtin/packages/r-siggenes/package.py
new file mode 100644
index 0000000000..ec0809c9da
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-siggenes/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSiggenes(RPackage):
+ """Identification of differentially expressed genes and estimation of the
+ False Discovery Rate (FDR) using both the Significance Analysis of
+ Microarrays (SAM) and the Empirical Bayes Analyses of Microarrays
+ (EBAM)."""
+
+ homepage = "http://bioconductor.org/packages/siggenes/"
+ url = "https://git.bioconductor.org/packages/siggenes"
+ list_url = homepage
+
+ version('1.50.0', git='https://git.bioconductor.org/packages/siggenes', commit='b1818f26e1449005ffd971df6bda8da0303080bc')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-multtest', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.50.0')
diff --git a/var/spack/repos/builtin/packages/r-simpleaffy/package.py b/var/spack/repos/builtin/packages/r-simpleaffy/package.py
new file mode 100644
index 0000000000..36d616fa8c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-simpleaffy/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSimpleaffy(RPackage):
+ """Provides high level functions for reading Affy .CEL files,
+ phenotypic data, and then computing simple things with it, such as
+ t-tests, fold changes and the like. Makes heavy use of the affy
+ library. Also has some basic scatter plot functions and mechanisms
+ for generating high resolution journal figures..."""
+
+ homepage = "http://bioconductor.org/packages/simpleaffy/"
+ url = "https://git.bioconductor.org/packages/simpleaffy"
+ list_url = homepage
+
+ version('2.52.0', git='https://git.bioconductor.org/packages/simpleaffy', commit='f2b43fb9b8e6fa4c03fe28b4efb3144a0a42a385')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-gcrma', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.52.0')
diff --git a/var/spack/repos/builtin/packages/r-snow/package.py b/var/spack/repos/builtin/packages/r-snow/package.py
new file mode 100644
index 0000000000..7be7d36018
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-snow/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSnow(RPackage):
+ """Support for simple parallel computing in R."""
+
+ homepage = "https://cran.r-project.org/web/packages/snow/index.html"
+ url = "https://cran.r-project.org/src/contrib/snow_0.4-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/snow"
+
+ version('0.4-2', 'afc7b0dfd4518aedb6fc81712fd2ac70')
+
+ depends_on('r-rmpi', type='run')
+ depends_on('r@2.13.1:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-somaticsignatures/package.py b/var/spack/repos/builtin/packages/r-somaticsignatures/package.py
new file mode 100644
index 0000000000..004023fd25
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-somaticsignatures/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSomaticsignatures(RPackage):
+ """The SomaticSignatures package identifies mutational signatures of
+ single nucleotide variants (SNVs). It provides a infrastructure related
+ to the methodology described in Nik-Zainal (2012, Cell), with
+ flexibility in the matrix decomposition algorithms."""
+
+ homepage = "https://bioconductor.org/packages/SomaticSignatures/"
+ url = "https://git.bioconductor.org/packages/SomaticSignatures"
+ list_url = homepage
+
+ version('2.12.1', git='https://git.bioconductor.org/packages/SomaticSignatures', commit='932298c6877d076004de5541cec85a14e819517a')
+
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-nmf', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-ggbio', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-pcamethods', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-proxy', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.12.1')
diff --git a/var/spack/repos/builtin/packages/r-sourcetools/package.py b/var/spack/repos/builtin/packages/r-sourcetools/package.py
new file mode 100644
index 0000000000..87f9dfc2c9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-sourcetools/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSourcetools(RPackage):
+ """Tools for Reading, Tokenizing and Parsing R Code."""
+
+ homepage = "https://cran.r-project.org/package=sourcetools"
+ url = "https://cran.r-project.org/src/contrib/sourcetools_0.1.6.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/sourcetools"
+
+ version('0.1.6', 'c78a816384b168d04af41bd7ff4d909d')
+ version('0.1.5', 'b4d7902ffafd9802e8fbff5ce824bb28')
+
+ depends_on('r-testthat', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sp/package.py b/var/spack/repos/builtin/packages/r-sp/package.py
index 2917f0b6b6..c085aa1521 100644
--- a/var/spack/repos/builtin/packages/r-sp/package.py
+++ b/var/spack/repos/builtin/packages/r-sp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-sparsem/package.py b/var/spack/repos/builtin/packages/r-sparsem/package.py
index 370497e395..3aac221fd1 100644
--- a/var/spack/repos/builtin/packages/r-sparsem/package.py
+++ b/var/spack/repos/builtin/packages/r-sparsem/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,8 @@ class RSparsem(RPackage):
subsetting and Kronecker products."""
homepage = "http://www.econ.uiuc.edu/~roger/research/sparse/sparse.html"
- url = "https://cran.r-project.org/src/contrib/SparseM_1.7.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/SparseM_1.74.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/SparseM"
- version('1.7', '7b5b0ab166a0929ef6dcfe1d97643601')
+ version('1.74', 'a16c9b7db172dfd2b7b6508c48e81a5d')
+ version('1.7', '7b5b0ab166a0929ef6dcfe1d97643601')
diff --git a/var/spack/repos/builtin/packages/r-spdep/package.py b/var/spack/repos/builtin/packages/r-spdep/package.py
new file mode 100644
index 0000000000..f7b7a4671e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-spdep/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSpdep(RPackage):
+ """A collection of functions to create spatial weights matrix objects from
+ polygon contiguities, from point patterns by distance and tessellations,
+ for summarizing these objects, and for permitting their use in spatial
+ data analysis, including regional aggregation by minimum spanning tree;
+ a collection of tests for spatial autocorrelation, including global
+ Moran's I, APLE, Geary's C, Hubert/Mantel general cross product statistic,
+ Empirical Bayes estimates and AssunasReis Index, Getis/Ord G and
+ multicoloured join count statistics, local Moran's I and Getis/Ord G,
+ saddlepoint approximations and exact tests for global and local Moran's I;
+ and functions for estimating spatial simultaneous autoregressive (SAR) lag
+ and error models, impact measures for lag models, weighted and unweighted
+ SAR and CAR spatial regression models, semi-parametric and Moran
+ eigenvector spatial filtering, GM SAR error models, and generalized spatial
+ two stage least squares models."""
+
+ homepage = "https://r-forge.r-project.org/projects/spdep"
+ url = "https://cran.r-project.org/src/contrib/spdep_0.6-13.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/spdep"
+
+ version('0.6-13', 'bfc68b3016b4894b152ecec4b86f85d1')
+
+ depends_on('r@3.0:')
+ depends_on('r-sp@1.0:', type=('build', 'run'))
+ depends_on('r-learnbayes', type=('build', 'run'))
+ depends_on('r-deldir', type=('build', 'run'))
+ depends_on('r-coda', type=('build', 'run'))
+ depends_on('r-gmodels', type=('build', 'run'))
+ depends_on('r-expm', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-speedglm/package.py b/var/spack/repos/builtin/packages/r-speedglm/package.py
new file mode 100644
index 0000000000..f520965da5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-speedglm/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSpeedglm(RPackage):
+ """Fitting linear models and generalized linear models to
+ large data sets by updating algorithms."""
+
+ homepage = "https://cran.r-project.org/package=speedglm"
+ url = "https://cran.rstudio.com/src/contrib/speedglm_0.3-2.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/speedglm"
+
+ version('0.3-2', 'c4874d4c2a677d657a335186ebb63131')
+
+ depends_on('r-mass', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-sqldf/package.py b/var/spack/repos/builtin/packages/r-sqldf/package.py
new file mode 100644
index 0000000000..c891891221
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-sqldf/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSqldf(RPackage):
+ """The sqldf() function is typically passed a single argument
+ which is an SQL select statement where the table names are
+ ordinary R data frame names. sqldf() transparently sets up a
+ database, imports the data frames into that database, performs the
+ SQL select or other statement and returns the result using a
+ heuristic to determine which class to assign to each column of the
+ returned data frame. The sqldf() or read.csv.sql() functions can
+ also be used to read filtered files into R even if the original
+ files are larger than R itself can handle. 'RSQLite', 'RH2',
+ 'RMySQL' and 'RPostgreSQL' backends are supported."""
+
+ homepage = "https://cran.r-project.org/package=sqldf"
+ url = "https://cran.r-project.org/src/contrib/sqldf_0.4-11.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/sqldf"
+
+ version('0.4-11', '85def6fe2418569370c24e53522d2c2d')
+
+ depends_on('r-gsubfn', type=('build', 'run'))
+ depends_on('r-proto', type=('build', 'run'))
+ depends_on('r-rsqlite', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-chron', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-stanheaders/package.py b/var/spack/repos/builtin/packages/r-stanheaders/package.py
index 322356e347..383eb82580 100644
--- a/var/spack/repos/builtin/packages/r-stanheaders/package.py
+++ b/var/spack/repos/builtin/packages/r-stanheaders/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-statmod/package.py b/var/spack/repos/builtin/packages/r-statmod/package.py
new file mode 100644
index 0000000000..7eb095aa92
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-statmod/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RStatmod(RPackage):
+ """A collection of algorithms and functions to aid statistical
+ modeling. Includes growth curve comparisons, limiting dilution
+ analysis (aka ELDA), mixed linear models, heteroscedastic
+ regression, inverse-Gaussian probability calculations, Gauss
+ quadrature and a secure convergence algorithm for nonlinear
+ models. Includes advanced generalized linear model functions
+ that implement secure convergence, dispersion modeling and
+ Tweedie power-law families."""
+
+ homepage = "https://cran.r-project.org/package=statmod"
+ url = "https://cran.rstudio.com/src/contrib/statmod_1.4.30.tar.gz"
+ list_url = "https://cran.rstudio.com/src/contrib/Archive/statmod"
+
+ version('1.4.30', '34e60132ce3df38208f9dc0db0479151')
diff --git a/var/spack/repos/builtin/packages/r-statnet-common/package.py b/var/spack/repos/builtin/packages/r-statnet-common/package.py
new file mode 100644
index 0000000000..2c61f23f2e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-statnet-common/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RStatnetCommon(RPackage):
+ """Non-statistical utilities used by the software developed by the
+ Statnet Project. They may also be of use to others."""
+
+ homepage = "http://www.statnet.org"
+ url = "https://cran.r-project.org/src/contrib/statnet.common_3.3.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/statnet.common"
+
+ version('3.3.0', '36bc11098dcd3652a4beb05c156ad6c8')
diff --git a/var/spack/repos/builtin/packages/r-stringi/package.py b/var/spack/repos/builtin/packages/r-stringi/package.py
index d89238f3d7..55dd10e378 100644
--- a/var/spack/repos/builtin/packages/r-stringi/package.py
+++ b/var/spack/repos/builtin/packages/r-stringi/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,9 +37,12 @@ class RStringi(RPackage):
etc."""
homepage = "http://www.gagolewski.com/software/stringi/"
- url = "https://cran.r-project.org/src/contrib/stringi_1.1.1.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/stringi_1.1.2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/stringi"
+ version('1.1.5', '0d5ec30ae368ab1b87a36fee3e228e7b')
+ version('1.1.3', '3b89cee3b5ef7c031077cd7707718e07')
+ version('1.1.2', '0ec2faa62643e1900734c0eaf5096648')
version('1.1.1', '32b919ee3fa8474530c4942962a6d8d9')
depends_on('icu4c')
diff --git a/var/spack/repos/builtin/packages/r-stringr/package.py b/var/spack/repos/builtin/packages/r-stringr/package.py
index de8d83b500..64b291adc5 100644
--- a/var/spack/repos/builtin/packages/r-stringr/package.py
+++ b/var/spack/repos/builtin/packages/r-stringr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,9 +33,11 @@ class RStringr(RPackage):
into the input of another."""
homepage = "https://cran.r-project.org/web/packages/stringr/index.html"
- url = "https://cran.r-project.org/src/contrib/stringr_1.0.0.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/stringr_1.1.0.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/stringr"
+ version('1.2.0', '9054b1de91c578cc5cf454d656e9c697')
+ version('1.1.0', '47973a33944c6d5db9524b1e835b8a5d')
version('1.0.0', '5ca977c90351f78b1b888b379114a7b4')
depends_on('r-stringi', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-strucchange/package.py b/var/spack/repos/builtin/packages/r-strucchange/package.py
new file mode 100644
index 0000000000..4f0a2bf28a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-strucchange/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RStrucchange(RPackage):
+ """Testing, monitoring and dating structural changes in (linear)
+ regression models."""
+
+ homepage = "https://cran.r-project.org/package=strucchange"
+ url = "https://cran.r-project.org/src/contrib/strucchange_1.5-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/strucchange"
+
+ version('1.5-1', 'fc751fc011df9c8df82d577298cb8395')
+
+ depends_on('r@2.10.0:')
+
+ depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-sandwich', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-subplex/package.py b/var/spack/repos/builtin/packages/r-subplex/package.py
new file mode 100644
index 0000000000..66df912a5f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-subplex/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSubplex(RPackage):
+ """Unconstrained Optimization using the Subplex Algorithm"""
+
+ homepage = "https://cran.r-project.org/package=subplex"
+ url = "https://cran.r-project.org/src/contrib/subplex_1.4-1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/subplex"
+
+ version('1.4-1', '2ed963dbbb1dbef47ebec7003f39a117')
diff --git a/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py b/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py
new file mode 100644
index 0000000000..104a61cb8c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-summarizedexperiment/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RSummarizedexperiment(RPackage):
+ """The SummarizedExperiment container contains one or more assays, each
+ represented by a matrix-like object of numeric or other mode. The rows
+ typically represent genomic ranges of interest and the columns
+ represent samples."""
+
+ homepage = "https://bioconductor.org/packages/SummarizedExperiment/"
+ url = "https://git.bioconductor.org/packages/SummarizedExperiment"
+ list_url = homepage
+
+ version('1.6.5', git='https://git.bioconductor.org/packages/SummarizedExperiment', commit='ec69cd5cfbccaef148a9f6abdfb3e22e888695d0')
+
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-delayedarray', type=('build', 'run'))
+ depends_on('r-matrix', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.6.5')
diff --git a/var/spack/repos/builtin/packages/r-survey/package.py b/var/spack/repos/builtin/packages/r-survey/package.py
index 249cad8178..62d21bb00b 100644
--- a/var/spack/repos/builtin/packages/r-survey/package.py
+++ b/var/spack/repos/builtin/packages/r-survey/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-survival/package.py b/var/spack/repos/builtin/packages/r-survival/package.py
index 1df00f0c93..c63c2eb864 100644
--- a/var/spack/repos/builtin/packages/r-survival/package.py
+++ b/var/spack/repos/builtin/packages/r-survival/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,9 +31,11 @@ class RSurvival(RPackage):
models, and parametric accelerated failure time models."""
homepage = "https://cran.r-project.org/package=survival"
- url = "https://cran.r-project.org/src/contrib/survival_2.39-5.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/survival_2.41-3.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/survival"
+ version('2.41-3', '6edb8093d1177775685dc26f3ce78d73')
+ version('2.40-1', 'a2474b656cd723791268e3114481b8a7')
version('2.39-5', 'a3cc6b5762e8c5c0bb9e64a276710be2')
depends_on('r-matrix', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tarifx/package.py b/var/spack/repos/builtin/packages/r-tarifx/package.py
index 1fb2d35b1d..b58eb5194e 100644
--- a/var/spack/repos/builtin/packages/r-tarifx/package.py
+++ b/var/spack/repos/builtin/packages/r-tarifx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-tensora/package.py b/var/spack/repos/builtin/packages/r-tensora/package.py
new file mode 100644
index 0000000000..c19e3604fc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tensora/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTensora(RPackage):
+ """The package provides convenience functions for advance linear algebra
+ with tensors and computation with datasets of tensors on a higher level
+ abstraction."""
+
+ homepage = "https://cran.r-project.org/web/packages/tensorA/index.html"
+ url = "https://cran.r-project.org/src/contrib/tensorA_0.36.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/tensorA"
+
+ version('0.36', '01c0613491d9b46600bf403d7e3bdd80')
diff --git a/var/spack/repos/builtin/packages/r-testit/package.py b/var/spack/repos/builtin/packages/r-testit/package.py
index 4d99c388e6..7a5fb607e8 100644
--- a/var/spack/repos/builtin/packages/r-testit/package.py
+++ b/var/spack/repos/builtin/packages/r-testit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,8 +30,9 @@ class RTestit(RPackage):
"""Provides two convenience functions assert() and test_pkg() to facilitate
testing R packages."""
- homepage = "https://github.com/yihui/testit"
+ homepage = "https://cran.r-project.org/package=testit"
url = "https://cran.r-project.org/src/contrib/testit_0.5.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/testit"
+ version('0.7', 'cfc5f5c66aa644fbf53efc4b29d18e8c')
version('0.5', 'f206d3cbdc5174e353d2d05ba6a12e59')
diff --git a/var/spack/repos/builtin/packages/r-testthat/package.py b/var/spack/repos/builtin/packages/r-testthat/package.py
index 62409912f7..045f447df1 100644
--- a/var/spack/repos/builtin/packages/r-testthat/package.py
+++ b/var/spack/repos/builtin/packages/r-testthat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-thdata/package.py b/var/spack/repos/builtin/packages/r-th-data/package.py
index cf2b01e6e8..e5713ee9fc 100644
--- a/var/spack/repos/builtin/packages/r-thdata/package.py
+++ b/var/spack/repos/builtin/packages/r-th-data/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,13 +25,14 @@
from spack import *
-class RThdata(RPackage):
+class RThData(RPackage):
"""Contains data sets used in other packages Torsten Hothorn maintains."""
homepage = "https://cran.r-project.org/package=TH.data"
- url = "https://cran.r-project.org/src/contrib/TH.data_1.0-7.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/TH.data_1.0-8.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/TH.data"
+ version('1.0-8', '2cc20acc8b470dff1202749b4bea55c4')
version('1.0-7', '3e8b6b1a4699544f175215aed7039a94')
depends_on('r-survival', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-threejs/package.py b/var/spack/repos/builtin/packages/r-threejs/package.py
index 50b484dc25..f39ede0fb7 100644
--- a/var/spack/repos/builtin/packages/r-threejs/package.py
+++ b/var/spack/repos/builtin/packages/r-threejs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,6 @@ class RThreejs(RPackage):
homepage = "http://bwlewis.github.io/rthreejs"
url = "https://cran.r-project.org/src/contrib/threejs_0.2.2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/threejs"
-
version('0.2.2', '35c179b10813c5e4bd3e7827fae6627b')
depends_on('r-htmlwidgets', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-tibble/package.py b/var/spack/repos/builtin/packages/r-tibble/package.py
index 39dfc3893b..67751d6381 100644
--- a/var/spack/repos/builtin/packages/r-tibble/package.py
+++ b/var/spack/repos/builtin/packages/r-tibble/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,12 +29,16 @@ class RTibble(RPackage):
"""Provides a 'tbl_df' class that offers better checking and printing
capabilities than traditional data frames."""
- homepage = "https://github.com/hadley/tibble"
- url = "https://cran.r-project.org/src/contrib/tibble_1.1.tar.gz"
- list_url = "https://cran.r-project.org/src/contrib/Archive/tibble"
-
+ homepage = "https://github.com/tidyverse/tibble"
+ url = "https://cran.rstudio.com/src/contrib/tibble_1.3.4.tar.gz"
+ list_url = homepage
+ version('1.3.4', '298e81546f999fb0968625698511b8d3')
+ version('1.2', 'bdbc3d67aa16860741add6d6ec20ea13')
version('1.1', '2fe9f806109d0b7fadafb1ffafea4cb8')
+ depends_on('r@3.1.2:')
+
depends_on('r-assertthat', type=('build', 'run'))
- depends_on('r-lazyeval', type=('build', 'run'))
+ depends_on('r-lazyeval@0.1.10:', type=('build', 'run'), when='@:1.3.0')
depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-rlang', type=('build', 'run'), when='@1.3.1:')
diff --git a/var/spack/repos/builtin/packages/r-tidyr/package.py b/var/spack/repos/builtin/packages/r-tidyr/package.py
index 1285e5e9ae..0e6973fd13 100644
--- a/var/spack/repos/builtin/packages/r-tidyr/package.py
+++ b/var/spack/repos/builtin/packages/r-tidyr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-tiff/package.py b/var/spack/repos/builtin/packages/r-tiff/package.py
new file mode 100644
index 0000000000..c751cb04e2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tiff/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTiff(RPackage):
+ """This package provides an easy and simple way to read, write and
+ display bitmap images stored in the TIFF format. It can read and
+ write both files and in-memory raw vectors."""
+
+ homepage = "http://www.rforge.net/tiff/"
+ url = "https://cran.rstudio.com/src/contrib/tiff_0.1-5.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/tiff"
+
+ version('0.1-5', '5052990b8647c77d3e27bc0ecf064e0b')
+
+ depends_on("libjpeg")
+ depends_on("libtiff")
diff --git a/var/spack/repos/builtin/packages/r-timedate/package.py b/var/spack/repos/builtin/packages/r-timedate/package.py
new file mode 100644
index 0000000000..d593b6c2bc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-timedate/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTimedate(RPackage):
+ """Environment for teaching "Financial Engineering and Computational
+ Finance". Managing chronological and calendar objects."""
+
+ homepage = "https://cran.r-project.org/package=timeDate"
+ url = "https://cran.r-project.org/src/contrib/timeDate_3012.100.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/timeDate"
+
+ version('3012.100', '9f69d3724efbf0e125e6b8e6d3475fe4')
diff --git a/var/spack/repos/builtin/packages/r-trimcluster/package.py b/var/spack/repos/builtin/packages/r-trimcluster/package.py
new file mode 100644
index 0000000000..c7f6cdb179
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-trimcluster/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTrimcluster(RPackage):
+ """trimcluster: Cluster analysis with trimming"""
+
+ homepage = "http://www.homepages.ucl.ac.uk/~ucakche"
+ url = "https://cran.r-project.org/src/contrib/trimcluster_0.1-2.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/trimcluster"
+
+ version('0.1-2', '7617920e224bd18f5b87db38a3116ec2')
+
+ depends_on('r@1.9.0:')
diff --git a/var/spack/repos/builtin/packages/r-trust/package.py b/var/spack/repos/builtin/packages/r-trust/package.py
new file mode 100644
index 0000000000..e83d8ad2b3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-trust/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTrust(RPackage):
+ """Does local optimization using two derivatives and trust regions.
+ Guaranteed to converge to local minimum of objective function."""
+
+ homepage = "http://www.stat.umn.edu/geyer/trust"
+ url = "https://cran.r-project.org/src/contrib/trust_0.1-7.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/trust"
+
+ version('0.1-7', '7e218b3a6b33bd77bd7e86dc6360418d')
diff --git a/var/spack/repos/builtin/packages/r-tseries/package.py b/var/spack/repos/builtin/packages/r-tseries/package.py
new file mode 100644
index 0000000000..e581a77596
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-tseries/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RTseries(RPackage):
+ """Time series analysis and computational finance."""
+
+ homepage = "https://cran.r-project.org/package=tseries"
+ url = "https://cran.r-project.org/src/contrib/tseries_0.10-42.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/tseries"
+
+ version('0.10-42', '3feaa5c463bc967d749323163d9bc836')
+
+ depends_on('r-quadprog', type=('build', 'run'))
+ depends_on('r-zoo', type=('build', 'run'))
+ depends_on('r-quantmod', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-ttr/package.py b/var/spack/repos/builtin/packages/r-ttr/package.py
index 79429f5286..abaac57c6f 100644
--- a/var/spack/repos/builtin/packages/r-ttr/package.py
+++ b/var/spack/repos/builtin/packages/r-ttr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-utils/package.py b/var/spack/repos/builtin/packages/r-utils/package.py
new file mode 100644
index 0000000000..bb39da3e60
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-utils/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RUtils(RPackage):
+ """Utility functions useful when programming and
+ developing R packages."""
+
+ homepage = "https://github.com/HenrikBengtsson/R.utils"
+ url = "https://cran.rstudio.com/src/contrib/R.utils_2.5.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/R.utils"
+
+ version('2.5.0', 'a728ef3ceb35cafc4c39ea577cecc38b')
+
+ depends_on('r-oo', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-uuid/package.py b/var/spack/repos/builtin/packages/r-uuid/package.py
index b9dcc12629..ff0c13cf10 100644
--- a/var/spack/repos/builtin/packages/r-uuid/package.py
+++ b/var/spack/repos/builtin/packages/r-uuid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,6 +32,5 @@ class RUuid(RPackage):
homepage = "http://www.rforge.net/uuid"
url = "https://cran.rstudio.com/src/contrib/uuid_0.1-2.tar.gz"
- list_url = "https://cran.rstudio.com/src/contrib/Archive/uuid"
version('0.1-2', 'f97d000c0b16bca455fb5bf2cd668ddf')
diff --git a/var/spack/repos/builtin/packages/r-variantannotation/package.py b/var/spack/repos/builtin/packages/r-variantannotation/package.py
new file mode 100644
index 0000000000..1b8e3da4d5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-variantannotation/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RVariantannotation(RPackage):
+ """Annotate variants, compute amino acid coding changes, predict coding
+ outcomes."""
+
+ homepage = "https://www.bioconductor.org/packages/VariantAnnotation/"
+ url = "https://git.bioconductor.org/packages/VariantAnnotation"
+ list_url = homepage
+
+ version('1.22.3', git='https://git.bioconductor.org/packages/VariantAnnotation', commit='3a91b6d4297aa416d5f056dec6f8925eb1a8eaee')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-summarizedexperiment', type=('build', 'run'))
+ depends_on('r-rsamtools', type=('build', 'run'))
+ depends_on('r-dbi', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-xvector', type=('build', 'run'))
+ depends_on('r-biostrings', type=('build', 'run'))
+ depends_on('r-annotationdbi', type=('build', 'run'))
+ depends_on('r-bsgenome', type=('build', 'run'))
+ depends_on('r-rtracklayer', type=('build', 'run'))
+ depends_on('r-genomicfeatures', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.22.3')
diff --git a/var/spack/repos/builtin/packages/r-varselrf/package.py b/var/spack/repos/builtin/packages/r-varselrf/package.py
new file mode 100644
index 0000000000..7cfb3392cd
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-varselrf/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RVarselrf(RPackage):
+ """Variable selection from random forests using both backwards variable
+ elimination (for the selection of small sets of non-redundant variables)
+ and selection based on the importance spectrum (somewhat similar to scree
+ plots; for the selection of large, potentially highly-correlated variables)
+ . Main applications in high-dimensional data (e.g., microarray data,
+ and other genomics and proteomics applications)."""
+
+ homepage = "http://ligarto.org/rdiaz/Software/Software.html"
+ url = "https://cran.rstudio.com/src/contrib/varSelRF_0.7-8.tar.gz"
+
+ version('0.7-8', '103c460d0734bd38ae13496c839d3435')
+
+ depends_on('r-randomforest', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-vcd/package.py b/var/spack/repos/builtin/packages/r-vcd/package.py
index 56a2ebdfa7..c0ca50a605 100644
--- a/var/spack/repos/builtin/packages/r-vcd/package.py
+++ b/var/spack/repos/builtin/packages/r-vcd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-vegan/package.py b/var/spack/repos/builtin/packages/r-vegan/package.py
new file mode 100644
index 0000000000..51591ec41d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-vegan/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RVegan(RPackage):
+ """Ordination methods, diversity analysis and other functions for
+ community and vegetation ecologists."""
+
+ homepage = "https://github.com/vegandevs/vegan"
+ url = "https://cran.r-project.org/src/contrib/vegan_2.4-3.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/vegan"
+
+ version('2.4-3', 'db17d4c4b9a4d421246abd5b36b00fec')
+
+ depends_on('r@3.0:')
+ depends_on('r-permute@0.9-0:', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-viridis/package.py b/var/spack/repos/builtin/packages/r-viridis/package.py
new file mode 100644
index 0000000000..627ba4ac39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-viridis/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RViridis(RPackage):
+ """viridis: Default Color Maps from 'matplotlib'"""
+
+ homepage = "https://github.com/sjmgarnier/viridis"
+ url = "https://cran.r-project.org/src/contrib/viridis_0.4.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/viridis"
+
+ version('0.4.0', 'f874384cbedf459f6c309ddb40b354ea')
+
+ depends_on('r@2.1.0:')
+ depends_on('r-viridislite@0.2.0:', type=('build', 'run'))
+ depends_on('r-ggplot2@1.0.1:', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-viridislite/package.py b/var/spack/repos/builtin/packages/r-viridislite/package.py
new file mode 100644
index 0000000000..bfdd6c3bc5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-viridislite/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RViridislite(RPackage):
+ """viridisLite: Default Color Maps from 'matplotlib' (Lite Version)"""
+
+ homepage = "https://github.com/sjmgarnier/viridisLite"
+ url = "https://cran.r-project.org/src/contrib/viridisLite_0.2.0.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/viridisLite"
+
+ version('0.2.0', '04a04415cf651a2b5f964b261896c0fb')
+
+ depends_on('r@2.1.0:')
diff --git a/var/spack/repos/builtin/packages/r-visnetwork/package.py b/var/spack/repos/builtin/packages/r-visnetwork/package.py
index ea0b972bf1..5cbc427c17 100644
--- a/var/spack/repos/builtin/packages/r-visnetwork/package.py
+++ b/var/spack/repos/builtin/packages/r-visnetwork/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-vsn/package.py b/var/spack/repos/builtin/packages/r-vsn/package.py
new file mode 100644
index 0000000000..649f42ea5d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-vsn/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RVsn(RPackage):
+ """The package implements a method for normalising microarray intensities,
+ and works for single- and multiple-color arrays. It can also be used
+ for data from other technologies, as long as they have similar format.
+ The method uses a robust variant of the maximum-likelihood estimator
+ for an additive-multiplicative error model and affine calibration. The
+ model incorporates data calibration step (a.k.a. normalization), a
+ model for the dependence of the variance on the mean intensity and a
+ variance stabilizing data transformation. Differences between
+ transformed intensities are analogous to "normalized log-ratios".
+ However, in contrast to the latter, their variance is independent of
+ the mean, and they are usually more sensitive and specific in detecting
+ differential transcription."""
+
+ homepage = "https://www.bioconductor.org/packages/vsn/"
+ url = "https://git.bioconductor.org/packages/vsn"
+
+ version('3.44.0', git='https://git.bioconductor.org/packages/vsn', commit='e54513fcdd07ccfb8094359e93cef145450f0ee0')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-affy', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-lattice', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-hexbin', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@3.44.0')
diff --git a/var/spack/repos/builtin/packages/r-whisker/package.py b/var/spack/repos/builtin/packages/r-whisker/package.py
index 17f904f5c3..d22b1a5209 100644
--- a/var/spack/repos/builtin/packages/r-whisker/package.py
+++ b/var/spack/repos/builtin/packages/r-whisker/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-withr/package.py b/var/spack/repos/builtin/packages/r-withr/package.py
index 785050ed87..67afc532ae 100644
--- a/var/spack/repos/builtin/packages/r-withr/package.py
+++ b/var/spack/repos/builtin/packages/r-withr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,7 +32,10 @@ class RWithr(RPackage):
dependencies to provide access to these functions."""
homepage = "http://github.com/jimhester/withr"
- url = "https://cran.r-project.org/src/contrib/withr_1.0.1.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/withr_1.0.2.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/withr"
+ version('1.0.2', 'ca52b729af9bbaa14fc8b7bafe38663c')
version('1.0.1', 'ac38af2c6f74027c9592dd8f0acb7598')
+
+ depends_on('r@3.0.2:')
diff --git a/var/spack/repos/builtin/packages/r-xde/package.py b/var/spack/repos/builtin/packages/r-xde/package.py
new file mode 100644
index 0000000000..5d4a686fb5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-xde/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RXde(RPackage):
+ """Multi-level model for cross-study detection of differential gene
+ expression."""
+
+ homepage = "https://www.bioconductor.org/packages/XDE/"
+ url = "https://git.bioconductor.org/packages/XDE"
+
+ version('2.22.0', git='https://git.bioconductor.org/packages/XDE', commit='25bcec965ae42a410dd285a9db9be46d112d8e81')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-genefilter', type=('build', 'run'))
+ depends_on('r-gtools', type=('build', 'run'))
+ depends_on('r-mergemaid', type=('build', 'run'))
+ depends_on('r-mvtnorm', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@2.22.0')
diff --git a/var/spack/repos/builtin/packages/r-xgboost/package.py b/var/spack/repos/builtin/packages/r-xgboost/package.py
index 766191dcc1..22f87b5c54 100644
--- a/var/spack/repos/builtin/packages/r-xgboost/package.py
+++ b/var/spack/repos/builtin/packages/r-xgboost/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -37,12 +37,19 @@ class RXgboost(RPackage):
users are also allowed to define their own objectives easily."""
homepage = "https://github.com/dmlc/xgboost"
- url = "https://cran.r-project.org/src/contrib/xgboost_0.4-4.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/xgboost_0.6-4.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/xgboost"
+ version('0.6-4', '86e517e3ce39f8a01de796920f6b425e')
version('0.4-4', 'c24d3076058101a71de4b8af8806697c')
- depends_on('r-matrix', type=('build', 'run'))
- depends_on('r-datatable', type=('build', 'run'))
- depends_on('r-magrittr', type=('build', 'run'))
+ depends_on('r@3.3.0:')
+
+ depends_on('r-matrix@1.1-0:', type=('build', 'run'))
+ depends_on('r-data-table@1.9.6:', type=('build', 'run'))
+ depends_on('r-magrittr@1.5:', type=('build', 'run'))
+ depends_on('r-stringi@0.5.2:', type=('build', 'run'))
+
+ # This is not listed as required, but installation fails without it
+ # ERROR: dependency 'stringr' is not available for package 'xgboost'
depends_on('r-stringr', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r-xlconnect/package.py b/var/spack/repos/builtin/packages/r-xlconnect/package.py
index 1863997ad7..6a388c14a5 100644
--- a/var/spack/repos/builtin/packages/r-xlconnect/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnect/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
index 0200b00a0f..fd7913a296 100644
--- a/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlconnectjars/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-xlsx/package.py b/var/spack/repos/builtin/packages/r-xlsx/package.py
index e16a582306..988fa41157 100644
--- a/var/spack/repos/builtin/packages/r-xlsx/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,6 @@ class RXlsx(RPackage):
homepage = "http://code.google.com/p/rexcel/"
url = "https://cran.rstudio.com/src/contrib/xlsx_0.5.7.tar.gz"
- list_url = "https://cran.rstudio.com/src/contrib/Archive/xlsx"
version('0.5.7', '36b1b16f29c54b6089b1dae923180dd5')
diff --git a/var/spack/repos/builtin/packages/r-xlsxjars/package.py b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
index 1c16c75a9d..8bd19f97c4 100644
--- a/var/spack/repos/builtin/packages/r-xlsxjars/package.py
+++ b/var/spack/repos/builtin/packages/r-xlsxjars/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,6 @@ class RXlsxjars(RPackage):
homepage = "https://cran.rstudio.com/web/packages/xlsxjars/index.html"
url = "https://cran.rstudio.com/src/contrib/xlsxjars_0.6.1.tar.gz"
- list_url = "https://cran.rstudio.com/src/contrib/Archive/xlsxjars"
version('0.6.1', '5a1721d5733cb42f3a29e3f353e39166')
diff --git a/var/spack/repos/builtin/packages/r-xmapbridge/package.py b/var/spack/repos/builtin/packages/r-xmapbridge/package.py
new file mode 100644
index 0000000000..0836eb3951
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-xmapbridge/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RXmapbridge(RPackage):
+ """xmapBridge can plot graphs in the X:Map genome browser. This package
+ exports plotting files in a suitable format."""
+
+ homepage = "https://www.bioconductor.org/packages/xmapbridge/"
+ url = "https://git.bioconductor.org/packages/xmapbridge"
+ list_url = homepage
+
+ version('1.34.0', git='https://git.bioconductor.org/packages/xmapbridge', commit='f162e1f72ead5f5a1aede69032d5771a6572d965')
+
+ depends_on('r@3.4.0:3.4.9', when='@1.34.0')
diff --git a/var/spack/repos/builtin/packages/r-xml/package.py b/var/spack/repos/builtin/packages/r-xml/package.py
index 2fe2a8a05b..aca86eade4 100644
--- a/var/spack/repos/builtin/packages/r-xml/package.py
+++ b/var/spack/repos/builtin/packages/r-xml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,10 +30,10 @@ class RXml(RPackage):
(including DTDs), both local and accessible via HTTP or FTP. Also offers
access to an 'XPath' "interpreter"."""
- homepage = "http://www.omegahat.net/RSXML"
- url = "https://cran.r-project.org/src/contrib/XML_3.98-1.4.tar.gz"
+ homepage = "https://cran.r-project.org/web/packages/XML/index.html"
+ url = "https://cran.r-project.org/src/contrib/XML_3.98-1.9.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/XML"
-
+ version('3.98-1.9', '70dd9d711cf3cbd218eb2b870aee9503')
version('3.98-1.5', 'd1cfcd56f7aec96a84ffca91aea507ee')
version('3.98-1.4', '1a7f3ce6f264eeb109bfa57bedb26c14')
diff --git a/var/spack/repos/builtin/packages/r-xml2/package.py b/var/spack/repos/builtin/packages/r-xml2/package.py
new file mode 100644
index 0000000000..ffbe0f626f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-xml2/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RXml2(RPackage):
+ """Work with XML files using a simple, consistent interface. Built on top
+ of the 'libxml2' C library."""
+
+ homepage = "https://cran.r-project.org/package=xml2"
+ url = "https://cran.r-project.org/src/contrib/xml2_1.1.1.tar.gz"
+ list_url = "https://cran.r-project.org/src/contrib/Archive/xml2"
+
+ version('1.1.1', '768f7edc39c4baab6b6b9e7c7ec79fee')
+
+ depends_on('r-rcpp', type=('build', 'run'))
+ depends_on('r-bh', type=('build', 'run'))
+ depends_on('libxml2')
diff --git a/var/spack/repos/builtin/packages/r-xtable/package.py b/var/spack/repos/builtin/packages/r-xtable/package.py
index 66d8687b6d..8f3cc65c0b 100644
--- a/var/spack/repos/builtin/packages/r-xtable/package.py
+++ b/var/spack/repos/builtin/packages/r-xtable/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-xts/package.py b/var/spack/repos/builtin/packages/r-xts/package.py
index 1cedec1d42..1c1184428a 100644
--- a/var/spack/repos/builtin/packages/r-xts/package.py
+++ b/var/spack/repos/builtin/packages/r-xts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/r-xvector/package.py b/var/spack/repos/builtin/packages/r-xvector/package.py
new file mode 100644
index 0000000000..4018422c18
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-xvector/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RXvector(RPackage):
+ """Memory efficient S4 classes for storing sequences "externally" (behind
+ an R external pointer, or on disk)."""
+
+ homepage = "https://bioconductor.org/packages/XVector/"
+ url = "https://git.bioconductor.org/packages/XVector"
+ list_url = homepage
+
+ version('0.16.0', git='https://git.bioconductor.org/packages/XVector', commit='54615888e1a559da4a81de33e934fc0f1c3ad99f')
+
+ depends_on('r-biocgenerics', type=('build', 'run'))
+ depends_on('r-s4vectors', type=('build', 'run'))
+ depends_on('r-iranges', type=('build', 'run'))
+ depends_on('r-zlibbioc', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@0.16.0')
diff --git a/var/spack/repos/builtin/packages/r-yaml/package.py b/var/spack/repos/builtin/packages/r-yaml/package.py
index c812ea8ca2..25e60cdd9a 100644
--- a/var/spack/repos/builtin/packages/r-yaml/package.py
+++ b/var/spack/repos/builtin/packages/r-yaml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,4 +33,5 @@ class RYaml(RPackage):
url = "https://cran.r-project.org/src/contrib/yaml_2.1.13.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/yaml"
+ version('2.1.14', '2de63248e6a122c368f8e4537426e35c')
version('2.1.13', 'f2203ea395adaff6bd09134666191d9a')
diff --git a/var/spack/repos/builtin/packages/r-yapsa/package.py b/var/spack/repos/builtin/packages/r-yapsa/package.py
new file mode 100644
index 0000000000..a69b745a7e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-yapsa/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RYapsa(RPackage):
+ """This package provides functions and routines useful in the analysis of
+ somatic signatures (cf. L. Alexandrov et al., Nature 2013). In
+ particular, functions to perform a signature analysis with known
+ signatures (LCD = linear combination decomposition) and a signature
+ analysis on stratified mutational catalogue (SMC = stratify mutational
+ catalogue) are provided."""
+
+ homepage = "http://bioconductor.org/packages/YAPSA/"
+ url = "https://git.bioconductor.org/packages/YAPSA"
+ list_url = homepage
+
+ version('1.2.0', git='https://git.bioconductor.org/packages/YAPSA', commit='320809b69e470e30a777a383f8341f93064ec24d')
+
+ depends_on('r-genomicranges', type=('build', 'run'))
+ depends_on('r-ggplot2', type=('build', 'run'))
+ depends_on('r-lsei', type=('build', 'run'))
+ depends_on('r-somaticsignatures', type=('build', 'run'))
+ depends_on('r-variantannotation', type=('build', 'run'))
+ depends_on('r-genomeinfodb', type=('build', 'run'))
+ depends_on('r-reshape2', type=('build', 'run'))
+ depends_on('r-gridextra', type=('build', 'run'))
+ depends_on('r-corrplot', type=('build', 'run'))
+ depends_on('r-dendextend', type=('build', 'run'))
+ depends_on('r-getoptlong', type=('build', 'run'))
+ depends_on('r-gtrellis', type=('build', 'run'))
+ depends_on('r-pmcmr', type=('build', 'run'))
+ depends_on('r-complexheatmap', type=('build', 'run'))
+ depends_on('r-keggrest', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.2.0')
diff --git a/var/spack/repos/builtin/packages/r-yaqcaffy/package.py b/var/spack/repos/builtin/packages/r-yaqcaffy/package.py
new file mode 100644
index 0000000000..1901990927
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-yaqcaffy/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RYaqcaffy(RPackage):
+ """Quality control of Affymetrix GeneChip expression data and
+ reproducibility analysis of human whole genome chips with the MAQC
+ reference datasets."""
+
+ homepage = "http://bioconductor.org/packages/yaqcaffy/"
+ url = "https://git.bioconductor.org/packages/yaqcaffy"
+ list_url = homepage
+
+ version('1.36.0', git='https://git.bioconductor.org/packages/yaqcaffy', commit='4d46fe77b2c8de2230a77b0c07dd5dd726e3abd6')
+
+ depends_on('r-simpleaffy', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.36.0')
diff --git a/var/spack/repos/builtin/packages/r-yarn/package.py b/var/spack/repos/builtin/packages/r-yarn/package.py
new file mode 100644
index 0000000000..5b0a76b476
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-yarn/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RYarn(RPackage):
+ """Expedite large RNA-Seq analyses using a combination of previously
+ developed tools. YARN is meant to make it easier for the user in
+ performing basic mis-annotation quality control, filtering, and
+ condition-aware normalization. YARN leverages many Bioconductor tools
+ and statistical techniques to account for the large heterogeneity and
+ sparsity found in very large RNA-seq experiments."""
+
+ homepage = "http://www.example.co://www.bioconductor.org/packages/yarn/"
+ url = "https://git.bioconductor.org/packages/yarn"
+ list_url = homepage
+
+ version('1.2.0', git='https://git.bioconductor.org/packages/yarn', commit='28af616ef8c27dcadf6568e276dea8465486a697')
+
+ depends_on('r-biobase', type=('build', 'run'))
+ depends_on('r-biomart', type=('build', 'run'))
+ depends_on('r-downloader', type=('build', 'run'))
+ depends_on('r-edger', type=('build', 'run'))
+ depends_on('r-gplots', type=('build', 'run'))
+ depends_on('r-limma', type=('build', 'run'))
+ depends_on('r-matrixstats', type=('build', 'run'))
+ depends_on('r-preprocesscore', type=('build', 'run'))
+ depends_on('r-readr', type=('build', 'run'))
+ depends_on('r-rcolorbrewer', type=('build', 'run'))
+ depends_on('r-quantro', type=('build', 'run'))
+ depends_on('r@3.4.0:3.4.9', when='@1.2.0')
diff --git a/var/spack/repos/builtin/packages/r-zlibbioc/package.py b/var/spack/repos/builtin/packages/r-zlibbioc/package.py
new file mode 100644
index 0000000000..280c7da3de
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-zlibbioc/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RZlibbioc(RPackage):
+ """This package uses the source code of zlib-1.2.5 to create libraries
+ for systems that do not have these available via other means (most
+ Linux and Mac users should have system-level access to zlib, and no
+ direct need for this package). See the vignette for instructions
+ on use."""
+
+ homepage = "http://bioconductor.org/packages/release/bioc/html/Zlibbioc.html"
+ url = "https://git.bioconductor.org/packages/zlibbioc"
+ list_url = homepage
+
+ version('1.22.0', git='https://git.bioconductor.org/packages/zlibbioc', commit='30377f830af2bc1ff17bbf3fdd2cb6442015fea5')
+ depends_on('r@3.4.0:3.4.9', when='@1.22.0')
diff --git a/var/spack/repos/builtin/packages/r-zoo/package.py b/var/spack/repos/builtin/packages/r-zoo/package.py
index 230c78a61a..33fa5d3353 100644
--- a/var/spack/repos/builtin/packages/r-zoo/package.py
+++ b/var/spack/repos/builtin/packages/r-zoo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,9 +33,10 @@ class RZoo(RPackage):
methods to extend standard generics."""
homepage = "http://zoo.r-forge.r-project.org/"
- url = "https://cran.r-project.org/src/contrib/zoo_1.7-13.tar.gz"
+ url = "https://cran.r-project.org/src/contrib/zoo_1.7-14.tar.gz"
list_url = "https://cran.r-project.org/src/contrib/Archive/zoo"
+ version('1.7-14', '8c577a7c1e535c899ab14177b1039c32')
version('1.7-13', '99521dfa4c668e692720cefcc5a1bf30')
depends_on('r-lattice', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/r/package.py b/var/spack/repos/builtin/packages/r/package.py
index 3fed62d1fa..603a372861 100644
--- a/var/spack/repos/builtin/packages/r/package.py
+++ b/var/spack/repos/builtin/packages/r/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,13 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-
-from spack import *
-from spack.util.environment import *
import shutil
+from spack import *
-class R(Package):
+class R(AutotoolsPackage):
"""R is 'GNU S', a freely available language and environment for
statistical computing and graphics which provides a wide variety of
statistical and graphical techniques: linear and nonlinear modelling,
@@ -36,10 +34,14 @@ class R(Package):
Please consult the R project homepage for further information."""
homepage = "https://www.r-project.org"
- url = "http://cran.cnr.berkeley.edu/src/base/R-3/R-3.1.2.tar.gz"
+ url = "https://cloud.r-project.org/src/base/R-3/R-3.4.0.tar.gz"
extendable = True
+ version('3.4.1', '3a79c01dc0527c62e80ffb1c489297ea')
+ version('3.4.0', '75083c23d507b9c16d5c6afbd7a827e7')
+ version('3.3.3', '0ac211ec15e813a24f8f4a5a634029a4')
+ version('3.3.2', '2437014ef40641cdc9673e89c040b7a8')
version('3.3.1', 'f50a659738b73036e2f5635adbd229c5')
version('3.3.0', '5a7506c8813432d1621c9725e86baf7a')
version('3.2.3', '1ba3dac113efab69e706902810cc2970')
@@ -63,7 +65,7 @@ class R(Package):
depends_on('ncurses')
depends_on('icu4c')
depends_on('glib')
- depends_on('zlib@:1.2.8')
+ depends_on('zlib@1.2.5:')
depends_on('bzip2')
depends_on('libtiff')
depends_on('jpeg')
@@ -71,44 +73,57 @@ class R(Package):
depends_on('cairo+X', when='+X')
depends_on('cairo~X', when='~X')
depends_on('pango')
+ depends_on('pango+X', when='+X')
+ depends_on('pango~X', when='~X')
depends_on('freetype')
depends_on('tcl')
depends_on('tk')
- depends_on('tk+X', when='+X')
- depends_on('tk~X', when='~X')
depends_on('libx11', when='+X')
depends_on('libxt', when='+X')
depends_on('curl')
depends_on('pcre')
- depends_on('jdk')
+ depends_on('java')
+
+ patch('zlib.patch', when='@:3.3.2')
@property
def etcdir(self):
return join_path(prefix, 'rlib', 'R', 'etc')
- def install(self, spec, prefix):
- rlibdir = join_path(prefix, 'rlib')
- configure_args = ['--prefix=%s' % prefix,
- '--libdir=%s' % rlibdir,
- '--enable-R-shlib',
- '--enable-BLAS-shlib',
- '--enable-R-framework=no']
+ def configure_args(self):
+ spec = self.spec
+ prefix = self.prefix
+
+ config_args = [
+ '--libdir={0}'.format(join_path(prefix, 'rlib')),
+ '--enable-R-shlib',
+ '--enable-BLAS-shlib',
+ '--enable-R-framework=no'
+ ]
+
if '+external-lapack' in spec:
- configure_args.extend(['--with-blas', '--with-lapack'])
+ config_args.extend([
+ '--with-blas',
+ '--with-lapack'
+ ])
- configure(*configure_args)
- make()
- make('install')
+ if '+X' in spec:
+ config_args.append('--with-x')
+ else:
+ config_args.append('--without-x')
+ return config_args
+
+ @run_after('install')
+ def copy_makeconf(self):
# Make a copy of Makeconf because it will be needed to properly build R
# dependencies in Spack.
src_makeconf = join_path(self.etcdir, 'Makeconf')
dst_makeconf = join_path(self.etcdir, 'Makeconf.spack')
shutil.copy(src_makeconf, dst_makeconf)
- self.filter_compilers(spec, prefix)
-
- def filter_compilers(self, spec, prefix):
+ @run_after('install')
+ def filter_compilers(self):
"""Run after install to tell the configuration files and Makefiles
to use the compilers that Spack built the package with.
@@ -135,11 +150,11 @@ class R(Package):
def r_lib_dir(self):
return join_path('rlib', 'R', 'library')
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
# Set R_LIBS to include the library dir for the
# extension and any other R extensions it depends on.
r_libs_path = []
- for d in extension_spec.traverse(
+ for d in dependent_spec.traverse(
deptype=('build', 'run'), deptype_query='run'):
if d.package.extends(self.spec):
r_libs_path.append(join_path(d.prefix, self.r_lib_dir))
@@ -153,11 +168,11 @@ class R(Package):
# determine how many jobs can actually be started.
spack_env.set('MAKEFLAGS', '-j{0}'.format(make_jobs))
- # For run time environment set only the path for extension_spec and
+ # For run time environment set only the path for dependent_spec and
# prepend it to R_LIBS
- if extension_spec.package.extends(self.spec):
+ if dependent_spec.package.extends(self.spec):
run_env.prepend_path('R_LIBS', join_path(
- extension_spec.prefix, self.r_lib_dir))
+ dependent_spec.prefix, self.r_lib_dir))
def setup_environment(self, spack_env, run_env):
run_env.prepend_path('LIBRARY_PATH',
@@ -167,7 +182,7 @@ class R(Package):
run_env.prepend_path('CPATH',
join_path(self.prefix, 'rlib', 'R', 'include'))
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""Called before R modules' install() methods. In most cases,
extensions will only need to have one line:
R('CMD', 'INSTALL', '--library={0}'.format(self.module.r_lib_dir),
@@ -177,9 +192,9 @@ class R(Package):
module.R = Executable(join_path(self.spec.prefix.bin, 'R'))
# Add variable for library directry
- module.r_lib_dir = join_path(ext_spec.prefix, self.r_lib_dir)
+ module.r_lib_dir = join_path(dependent_spec.prefix, self.r_lib_dir)
# Make the site packages directory for extensions, if it does not exist
# already.
- if ext_spec.package.is_extension:
+ if dependent_spec.package.is_extension:
mkdirp(module.r_lib_dir)
diff --git a/var/spack/repos/builtin/packages/r/zlib.patch b/var/spack/repos/builtin/packages/r/zlib.patch
new file mode 100644
index 0000000000..673d5352fa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r/zlib.patch
@@ -0,0 +1,29 @@
+*** a/configure 2017-01-21 21:48:35.077000000 +0000
+--- b/configure 2017-01-21 21:50:50.700000000 +0000
+***************
+*** 35496,35505 ****
+ #include <string.h>
+ #include <zlib.h>
+ int main() {
+! #ifdef ZLIB_VERSION
+! /* Work around Debian bug: it uses 1.2.3.4 even though there was no such
+! version on the master site zlib.net */
+! exit(strncmp(ZLIB_VERSION, "1.2.5", 5) < 0);
+ #else
+ exit(1);
+ #endif
+--- 35496,35509 ----
+ #include <string.h>
+ #include <zlib.h>
+ int main() {
+! /* Checking ZLIB_VERNUM trick learned here:
+! * https://github.com/TransitApp/protobuf/blob/master/configure.ac#L95
+! */
+! #ifdef ZLIB_VERNUM
+! if (ZLIB_VERNUM < 0x1250) {
+! exit(1);
+! }
+! exit(0);
+ #else
+ exit(1);
+ #endif
diff --git a/var/spack/repos/builtin/packages/raft/package.py b/var/spack/repos/builtin/packages/raft/package.py
new file mode 100644
index 0000000000..a5cc1f0ced
--- /dev/null
+++ b/var/spack/repos/builtin/packages/raft/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Raft(CMakePackage):
+ """RAFT: Reconstruct Algorithms for Tomography.
+ Toolbox under development at Brazilian Synchrotron Light Source."""
+
+ homepage = "https://bitbucket.org/gill_martinez/raft_aps"
+ url = "https://bitbucket.org/gill_martinez/raft_aps/get/1.2.3.tar.gz"
+
+ version('1.2.3', '4d1b106d9b3493e63dde96f7dd44b834')
+ version('develop', git='https://bitbucket.org/gill_martinez/raft_aps.git')
+
+ depends_on('mpi')
+ depends_on('cmake', type='build')
+ depends_on('hdf5')
+ depends_on('fftw')
+ depends_on('cuda')
+
+ def install(self, spec, prefix):
+ """RAFT lacks an install in its CMakeList"""
+
+ with working_dir(self.stage.source_path):
+ mkdirp(prefix)
+
+ # We only care about the binary
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/raja/package.py b/var/spack/repos/builtin/packages/raja/package.py
index dccf9a581c..18d2135991 100644
--- a/var/spack/repos/builtin/packages/raja/package.py
+++ b/var/spack/repos/builtin/packages/raja/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,14 +25,10 @@
from spack import *
-class Raja(Package):
+class Raja(CMakePackage):
"""RAJA Parallel Framework."""
homepage = "http://software.llnl.gov/RAJA/"
- version('git', git='https://github.com/LLNL/RAJA.git', branch="master")
+ version('develop', git='https://github.com/LLNL/RAJA.git', branch="master", submodules="True")
- def install(self, spec, prefix):
- with working_dir('build', create=True):
- cmake('..', *std_cmake_args)
- make()
- make('install')
+ depends_on('cmake@3.3:', type='build')
diff --git a/var/spack/repos/builtin/packages/randfold/package.py b/var/spack/repos/builtin/packages/randfold/package.py
new file mode 100644
index 0000000000..5160840332
--- /dev/null
+++ b/var/spack/repos/builtin/packages/randfold/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Randfold(MakefilePackage):
+ """Minimum free energy of folding randomization test software"""
+
+ homepage = "http://bioinformatics.psb.ugent.be/supplementary_data/erbon/nov2003/"
+ url = "http://bioinformatics.psb.ugent.be/supplementary_data/erbon/nov2003/downloads/randfold-2.0.1.tar.gz"
+
+ version('2.0.1', 'c9ebf7dc9d62fa4554a738a15fe1ded8')
+
+ depends_on('squid')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('randfold', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/random123/package.py b/var/spack/repos/builtin/packages/random123/package.py
new file mode 100644
index 0000000000..978467b457
--- /dev/null
+++ b/var/spack/repos/builtin/packages/random123/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Random123(Package):
+ """Random123 is a library of 'counter-based' random number
+ generators (CBRNGs), in which the Nth random number can be obtained
+ by applying a stateless mixing function to N instead of the
+ conventional approach of using N iterations of a stateful
+ transformation."""
+ homepage = "http://www.deshawresearch.com/resources_random123.html"
+ url = "http://www.deshawresearch.com/downloads/download_random123.cgi/Random123-1.09.tar.gz"
+
+ version('1.09', '67ae45ff94b12acea590a6aa04ed1123')
+
+ def install(self, spec, prefix):
+ # Random123 doesn't have a build system.
+ # We have to do our own install here.
+ install_tree('include', prefix.include)
+ install('./LICENSE', "%s" % prefix)
+ # used by some packages, e.g. quinoa
+ install('examples/uniform.hpp', join_path(prefix.include, 'Random123'))
diff --git a/var/spack/repos/builtin/packages/randrproto/package.py b/var/spack/repos/builtin/packages/randrproto/package.py
index ecff886a3b..24f6aaed41 100644
--- a/var/spack/repos/builtin/packages/randrproto/package.py
+++ b/var/spack/repos/builtin/packages/randrproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Randrproto(Package):
+class Randrproto(AutotoolsPackage):
"""X Resize and Rotate Extension (RandR).
This extension defines a protocol for clients to dynamically change X
@@ -39,8 +39,3 @@ class Randrproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/ravel/package.py b/var/spack/repos/builtin/packages/ravel/package.py
index 4f4f2b2e10..3f03444f76 100644
--- a/var/spack/repos/builtin/packages/ravel/package.py
+++ b/var/spack/repos/builtin/packages/ravel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Ravel(Package):
+class Ravel(CMakePackage):
"""Ravel is a parallel communication trace visualization tool that
orders events according to logical time."""
@@ -41,7 +41,5 @@ class Ravel(Package):
depends_on('otf2')
depends_on('qt@5:')
- def install(self, spec, prefix):
- cmake('-Wno-dev', *std_cmake_args)
- make()
- make("install")
+ def cmake_args(self):
+ return ['-Wno-dev']
diff --git a/var/spack/repos/builtin/packages/raxml/package.py b/var/spack/repos/builtin/packages/raxml/package.py
new file mode 100644
index 0000000000..96d6f7c95b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/raxml/package.py
@@ -0,0 +1,107 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Raxml(Package):
+ """RAxML (Randomized Axelerated Maximum Likelihood) is a program for
+ sequential and parallel Maximum Likelihood based inference of large
+ phylogenetic trees."""
+
+ homepage = "https://sco.h-its.org/exelixis/web/software/raxml"
+ url = "https://github.com/stamatak/standard-RAxML/archive/v8.2.11.tar.gz"
+
+ version('8.2.11', '6bd5c4e1f93003ccf13c9b59a5d080ab')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+ variant('pthreads', default=False, description='Enable pthreads version')
+ variant('sse', default=True, description='Enable SSE in order to substantially speed up execution')
+ variant('avx', default=False, description='Enable AVX in order to substantially speed up execution')
+
+ depends_on('mpi', when='+mpi')
+
+ # Compiles with either GCC or ICC.
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ files = glob.iglob("Makefile.*")
+ for file in files:
+ makefile = FileFilter(file)
+ makefile.filter('gcc', spack_cc)
+
+ if '+mpi' and '+avx' and '+pthreads' in spec:
+ make('-f', 'Makefile.AVX.HYBRID.gcc')
+ install('raxmlHPC-HYBRID-AVX', prefix.bin)
+
+ elif '+mpi' and '+sse' and '+pthreads' in spec:
+ make('-f', 'Makefile.SSE3.HYBRID.gcc')
+ install('raxmlHPC-HYBRID-SSE3', prefix.bin)
+
+ elif '+mpi' and '+pthreads' in spec:
+ make('-f', 'Makefile.HYBRID.gcc')
+ install('raxmlHPC-HYBRID', prefix.bin)
+
+ elif '+mpi' and '+avx' in spec:
+ make('-f', 'Makefile.AVX.MPI.gcc')
+ install('raxmlHPC-MPI-AVX', prefix.bin)
+
+ elif '+mpi' and '+sse' in spec:
+ make('-f', 'Makefile.SSE3.MPI.gcc')
+ install('raxmlHPC-MPI-SSE3', prefix.bin)
+
+ elif '+mpi' in spec:
+ make('-f', 'Makefile.MPI.gcc')
+ install('raxmlHPC-MPI', prefix.bin)
+
+ elif '+pthreads' and '+avx' in spec:
+ make('-f', 'Makefile.AVX.PTHREADS.gcc')
+ install('raxmlHPC-PTHREADS-AVX', prefix.bin)
+
+ elif '+pthreads' and '+sse' in spec:
+ make('-f', 'Makefile.SSE3.PTHREADS.gcc')
+ install('raxmlHPC-PTHREADS-SSE3', prefix.bin)
+
+ elif '+pthreads' in spec:
+ make('-f', 'Makefile.PTHREADS.gcc')
+ install('raxmlHPC-PTHREADS', prefix.bin)
+
+ elif '+sse' in spec:
+ make('-f', 'Makefile.SSE3.gcc')
+ install('raxmlHPC-SSE3', prefix.bin)
+
+ elif '+avx' in spec:
+ make('-f', 'Makefile.AVX.gcc')
+ install('raxmlHPC-AVX', prefix.bin)
+
+ else:
+ make('-f', 'Makefile.gcc')
+ install('raxmlHPC', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/ray/package.py b/var/spack/repos/builtin/packages/ray/package.py
new file mode 100644
index 0000000000..45e08c74ff
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ray/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Ray(CMakePackage):
+ """Parallel genome assemblies for parallel DNA sequencing"""
+
+ homepage = "http://denovoassembler.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/denovoassembler/Ray-2.3.1.tar.bz2"
+
+ version('2.3.1', '82f693c4db60af4328263c9279701009')
+
+ depends_on('mpi')
+
+ @run_after('build')
+ def make(self):
+ mkdirp(prefix.bin)
+ make('PREFIX=%s' % prefix.bin)
+
+ def install(self, spec, prefix):
+ make('install')
diff --git a/var/spack/repos/builtin/packages/rdp-classifier/package.py b/var/spack/repos/builtin/packages/rdp-classifier/package.py
new file mode 100644
index 0000000000..637e490a17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rdp-classifier/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class RdpClassifier(Package):
+ """The RDP Classifier is a naive Bayesian classifier that can rapidly and
+ accurately provides taxonomic assignments from domain to genus, with
+ confidence estimates for each assignment. """
+
+ homepage = "http://rdp.cme.msu.edu/"
+ url = "https://downloads.sourceforge.net/project/rdp-classifier/rdp-classifier/rdp_classifier_2.12.zip"
+
+ version('2.12', '7fdfa33512629810f0ff06b905642ddd')
+
+ depends_on('java', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install(join_path('dist', 'classifier.jar'), prefix.bin)
+ install_tree(join_path('dist', 'lib'), prefix.bin.lib)
+ install(join_path('lib', 'junit-4.8.2.jar'), prefix.bin.lib)
+ install_tree('src', prefix.src)
diff --git a/var/spack/repos/builtin/packages/readline/package.py b/var/spack/repos/builtin/packages/readline/package.py
index abb6ba04ce..ccdea0aa0f 100644
--- a/var/spack/repos/builtin/packages/readline/package.py
+++ b/var/spack/repos/builtin/packages/readline/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,22 +25,28 @@
from spack import *
-class Readline(Package):
+class Readline(AutotoolsPackage):
"""The GNU Readline library provides a set of functions for use by
- applications that allow users to edit command lines as they
- are typed in. Both Emacs and vi editing modes are
- available. The Readline library includes additional functions
- to maintain a list of previously-entered command lines, to
- recall and perhaps reedit those lines, and perform csh-like
- history expansion on previous commands."""
+ applications that allow users to edit command lines as they are typed in.
+ Both Emacs and vi editing modes are available. The Readline library
+ includes additional functions to maintain a list of previously-entered
+ command lines, to recall and perhaps reedit those lines, and perform
+ csh-like history expansion on previous commands."""
+
homepage = "http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html"
- url = "ftp://ftp.cwru.edu/pub/bash/readline-6.3.tar.gz"
+ url = "https://ftp.gnu.org/gnu/readline/readline-7.0.tar.gz"
+ version('7.0', '205b03a87fc83dab653b628c59b9fc91')
version('6.3', '33c8fb279e981274f485fd91da77e94a')
- depends_on("ncurses")
+ depends_on('ncurses')
+ # from url=http://www.linuxfromscratch.org/patches/downloads/readline/readline-6.3-upstream_fixes-1.patch
+ # this fixes a bug that could lead to seg faults in ipython
+ patch('readline-6.3-upstream_fixes-1.patch', when='@6.3')
+
+ def build(self, spec, prefix):
+ options = [
+ 'SHLIB_LIBS=-L{0} -lncursesw'.format(spec['ncurses'].prefix.lib)
+ ]
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make("SHLIB_LIBS=-lncurses")
- make("install")
+ make(*options)
diff --git a/var/spack/repos/builtin/packages/readline/readline-6.3-upstream_fixes-1.patch b/var/spack/repos/builtin/packages/readline/readline-6.3-upstream_fixes-1.patch
new file mode 100644
index 0000000000..a1ee4d6f38
--- /dev/null
+++ b/var/spack/repos/builtin/packages/readline/readline-6.3-upstream_fixes-1.patch
@@ -0,0 +1,90 @@
+Submitted By: Bruce Dubbs <bdubbs_at_linuxfromscratch_dot_org>
+Date: 2014-04-18
+Initial Package Version: 6.3
+Upstream Status: Already in upstream patch repo
+Origin: Upstream
+Description: This patch contains upstream patch numbers 001 through 005.
+
+diff -Naur readline-6.3/display.c readline-6.3.patched/display.c
+--- readline-6.3/display.c 2013-12-27 12:10:56.000000000 -0600
++++ readline-6.3.patched/display.c 2014-04-18 15:51:38.249945858 -0500
+@@ -2677,7 +2677,8 @@
+ {
+ if (_rl_echoing_p)
+ {
+- _rl_move_vert (_rl_vis_botlin);
++ if (_rl_vis_botlin > 0) /* minor optimization plus bug fix */
++ _rl_move_vert (_rl_vis_botlin);
+ _rl_vis_botlin = 0;
+ fflush (rl_outstream);
+ rl_restart_output (1, 0);
+diff -Naur readline-6.3/readline.c readline-6.3.patched/readline.c
+--- readline-6.3/readline.c 2013-10-28 13:58:06.000000000 -0500
++++ readline-6.3.patched/readline.c 2014-04-18 15:51:38.247945883 -0500
+@@ -744,7 +744,8 @@
+ r = _rl_subseq_result (r, cxt->oldmap, cxt->okey, (cxt->flags & KSEQ_SUBSEQ));
+
+ RL_CHECK_SIGNALS ();
+- if (r == 0) /* success! */
++ /* We only treat values < 0 specially to simulate recursion. */
++ if (r >= 0 || (r == -1 && (cxt->flags & KSEQ_SUBSEQ) == 0)) /* success! or failure! */
+ {
+ _rl_keyseq_chain_dispose ();
+ RL_UNSETSTATE (RL_STATE_MULTIKEY);
+@@ -964,7 +965,7 @@
+ #if defined (VI_MODE)
+ if (rl_editing_mode == vi_mode && _rl_keymap == vi_movement_keymap &&
+ key != ANYOTHERKEY &&
+- rl_key_sequence_length == 1 && /* XXX */
++ _rl_dispatching_keymap == vi_movement_keymap &&
+ _rl_vi_textmod_command (key))
+ _rl_vi_set_last (key, rl_numeric_arg, rl_arg_sign);
+ #endif
+diff -Naur readline-6.3/rltypedefs.h readline-6.3.patched/rltypedefs.h
+--- readline-6.3/rltypedefs.h 2011-03-26 13:53:31.000000000 -0500
++++ readline-6.3.patched/rltypedefs.h 2014-04-18 15:51:38.250945845 -0500
+@@ -26,6 +26,25 @@
+ extern "C" {
+ #endif
+
++/* Old-style, attempt to mark as deprecated in some way people will notice. */
++
++#if !defined (_FUNCTION_DEF)
++# define _FUNCTION_DEF
++
++#if defined(__GNUC__) || defined(__clang__)
++typedef int Function () __attribute__ ((deprecated));
++typedef void VFunction () __attribute__ ((deprecated));
++typedef char *CPFunction () __attribute__ ((deprecated));
++typedef char **CPPFunction () __attribute__ ((deprecated));
++#else
++typedef int Function ();
++typedef void VFunction ();
++typedef char *CPFunction ();
++typedef char **CPPFunction ();
++#endif
++
++#endif /* _FUNCTION_DEF */
++
+ /* New style. */
+
+ #if !defined (_RL_FUNCTION_TYPEDEF)
+diff -Naur readline-6.3/util.c readline-6.3.patched/util.c
+--- readline-6.3/util.c 2013-09-02 12:36:12.000000000 -0500
++++ readline-6.3.patched/util.c 2014-04-18 15:51:38.248945871 -0500
+@@ -476,6 +476,7 @@
+ return (strcpy ((char *)xmalloc (1 + (int)strlen (s)), (s)));
+ }
+
++#if defined (DEBUG)
+ #if defined (USE_VARARGS)
+ static FILE *_rl_tracefp;
+
+@@ -538,6 +539,7 @@
+ _rl_tracefp = fp;
+ }
+ #endif
++#endif /* DEBUG */
+
+
+ #if HAVE_DECL_AUDIT_USER_TTY && defined (ENABLE_TTY_AUDIT_SUPPORT)
diff --git a/var/spack/repos/builtin/packages/recordproto/package.py b/var/spack/repos/builtin/packages/recordproto/package.py
index 02018a76ff..dcbc0326e8 100644
--- a/var/spack/repos/builtin/packages/recordproto/package.py
+++ b/var/spack/repos/builtin/packages/recordproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Recordproto(Package):
+class Recordproto(AutotoolsPackage):
"""X Record Extension.
This extension defines a protocol for the recording and playback of user
@@ -38,8 +38,3 @@ class Recordproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/redundans/package.py b/var/spack/repos/builtin/packages/redundans/package.py
new file mode 100644
index 0000000000..71f83f623a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/redundans/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Redundans(Package):
+ """Redundans pipeline assists an assembly of heterozygous genomes."""
+
+ homepage = "https://github.com/Gabaldonlab/redundans"
+ url = "https://github.com/Gabaldonlab/redundans/archive/v0.13c.tar.gz"
+
+ version('0.13c', '2003fb7c70521f5e430553686fd1a594')
+
+ depends_on('python', type=('build', 'run'))
+ depends_on('py-pyscaf', type=('build', 'run'))
+ depends_on('py-fastaindex', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+ depends_on('sspace-standard')
+ depends_on('bwa')
+ depends_on('last')
+ depends_on('gapcloser')
+ depends_on('parallel')
+ depends_on('snap-berkeley')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('redundans.py', prefix.bin)
+ with working_dir('bin'):
+ install('fasta2homozygous.py', prefix.bin)
+ install('fasta2split.py', prefix.bin)
+ install('fastq2insert_size.py', prefix.bin)
+ install('fastq2mates.py', prefix.bin)
+ install('fastq2shuffled.py', prefix.bin)
+ install('fastq2sspace.py', prefix.bin)
+ install('filterReads.py', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/relion/package.py b/var/spack/repos/builtin/packages/relion/package.py
new file mode 100644
index 0000000000..ba006b9b43
--- /dev/null
+++ b/var/spack/repos/builtin/packages/relion/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Relion(CMakePackage):
+ """RELION (for REgularised LIkelihood OptimisatioN, pronounce rely-on) is a
+ stand-alone computer program that employs an empirical Bayesian approach to
+ refinement of (multiple) 3D reconstructions or 2D class averages in
+ electron cryo-microscopy (cryo-EM)."""
+
+ homepage = "http://http://www2.mrc-lmb.cam.ac.uk/relion"
+ url = "https://github.com/3dem/relion"
+
+ version('develop', git='https://github.com/3dem/relion.git')
+
+ variant('gui', default=True, description="build the gui")
+ variant('cuda', default=False, description="enable compute on gpu")
+ variant('double', default=False, description="double precision (cpu) code")
+ variant('double-gpu', default=False, description="double precision (gpu) code")
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebInfo',
+ 'Profiling', 'Benchmarking'))
+
+ depends_on('mpi')
+ depends_on('fftw+float+double')
+ depends_on('fltk', when='+gui')
+ depends_on('cuda@8.0:8.99', when='+cuda')
+
+ def cmake_args(self):
+ args = [
+ '-DCMAKE_C_FLAGS=-g',
+ '-DCMAKE_CXX_FLAGS=-g',
+ '-DGUI=%s' % ('+gui' in self.spec),
+ '-DDoublePrec_CPU=%s' % ('+double' in self.spec),
+ '-DDoublePrec_GPU=%s' % ('+double-gpu' in self.spec),
+ ]
+ if '+cuda' in self.spec:
+ args += [
+ '-DCUDA=on',
+ '-DCUFFT=on',
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/rempi/package.py b/var/spack/repos/builtin/packages/rempi/package.py
new file mode 100644
index 0000000000..f6e2a2f3e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rempi/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Rempi(AutotoolsPackage):
+ """ReMPI is a record-and-replay tool for MPI applications."""
+ homepage = "https://github.com/PRUNERS/ReMPI"
+ url = "https://github.com/PRUNERS/ReMPI/releases/download/v1.0.0/ReMPI-1.0.0.tar.gz"
+
+ version("1.0.0", "32c780a6a74627b5796bea161d4c4733")
+
+ depends_on("mpi")
+ depends_on("zlib")
+ depends_on("autoconf", type='build')
+ depends_on("automake", type='build')
+ depends_on("libtool", type='build')
diff --git a/var/spack/repos/builtin/packages/rename/package.py b/var/spack/repos/builtin/packages/rename/package.py
index 3538fd21cc..01bc35f073 100644
--- a/var/spack/repos/builtin/packages/rename/package.py
+++ b/var/spack/repos/builtin/packages/rename/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/rendercheck/package.py b/var/spack/repos/builtin/packages/rendercheck/package.py
index 07cc809e9a..65fcc7a312 100644
--- a/var/spack/repos/builtin/packages/rendercheck/package.py
+++ b/var/spack/repos/builtin/packages/rendercheck/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Rendercheck(Package):
+class Rendercheck(AutotoolsPackage):
"""rendercheck is a program to test a Render extension implementation
against separate calculations of expected output."""
@@ -40,9 +40,3 @@ class Rendercheck(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/renderproto/package.py b/var/spack/repos/builtin/packages/renderproto/package.py
index 10be4c941c..a6c91ab06b 100644
--- a/var/spack/repos/builtin/packages/renderproto/package.py
+++ b/var/spack/repos/builtin/packages/renderproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Renderproto(Package):
+class Renderproto(AutotoolsPackage):
"""X Rendering Extension.
This extension defines the protcol for a digital image composition as
@@ -38,8 +38,3 @@ class Renderproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/repeatmasker/package.py b/var/spack/repos/builtin/packages/repeatmasker/package.py
new file mode 100644
index 0000000000..c9713c7892
--- /dev/null
+++ b/var/spack/repos/builtin/packages/repeatmasker/package.py
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import inspect
+import distutils.dir_util
+
+
+class Repeatmasker(Package):
+ """RepeatMasker is a program that screens DNA sequences for interspersed
+ repeats and low complexity DNA sequences."""
+
+ homepage = "http://www.repeatmasker.org"
+ url = "http://www.repeatmasker.org/RepeatMasker-open-4-0-7.tar.gz"
+
+ version('4.0.7', '4dcbd7c88c5343e02d819f4b3e6527c6')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('hmmer')
+ depends_on('ncbi-rmblastn')
+ depends_on('trf')
+
+ def url_for_version(self, version):
+ url = 'http://www.repeatmasker.org/RepeatMasker-open-{0}.tar.gz'
+ return url.format(version.dashed)
+
+ def install(self, spec, prefix):
+ # Config questions consist of:
+ #
+ # <PRESS ENTER TO CONTINUE>
+ # Enter perl path
+ # Enter where repeatmasker is being configured from
+ # Enter trf path
+ # Add a Search Engine:
+ # 1. CrossMatch
+ # 2. RMBlast - NCBI Blast with RepeatMasker extensions
+ # 3. WUBlast/ABBlast (required by DupMasker)
+ # 4. HMMER3.1 & DFAM
+ # 5. Done
+ # Enter RMBlast path
+ # Do you want RMBlast to be your default search engine for
+ # Repeatmasker? (Y/N)
+ # Add a Search Engine: Done
+
+ config_answers = ['\n', '%s\n' % self.spec['perl'].prefix.bin.perl,
+ '%s\n' % self.stage.source_path,
+ '%s\n' % self.spec['trf'].prefix.bin.trf, '2\n',
+ '%s\n' % self.spec['ncbi-rmblastn'].prefix.bin,
+ 'Y\n', '5\n']
+
+ config_answers_filename = 'spack-config.in'
+
+ with open(config_answers_filename, 'w') as f:
+ f.writelines(config_answers)
+
+ with open(config_answers_filename, 'r') as f:
+ inspect.getmodule(self).perl('configure', input=f)
+
+ distutils.dir_util.copy_tree(".", prefix)
diff --git a/var/spack/repos/builtin/packages/resourceproto/package.py b/var/spack/repos/builtin/packages/resourceproto/package.py
index 4e0a495d83..4e58ae7f00 100644
--- a/var/spack/repos/builtin/packages/resourceproto/package.py
+++ b/var/spack/repos/builtin/packages/resourceproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Resourceproto(Package):
+class Resourceproto(AutotoolsPackage):
"""X Resource Extension.
This extension defines a protocol that allows a client to query the
@@ -38,8 +38,3 @@ class Resourceproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/revbayes/package.py b/var/spack/repos/builtin/packages/revbayes/package.py
new file mode 100644
index 0000000000..1ebbec534b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/revbayes/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Revbayes(CMakePackage):
+ """Bayesian phylogenetic inference using probabilistic graphical models
+ and an interpreted language."""
+
+ homepage = "https://revbayes.github.io"
+ url = "https://github.com/revbayes/revbayes/archive/v1.0.4-release.tar.gz"
+
+ version('1.0.4', '5d6de96bcb3b2686b270856de3555a58')
+
+ variant('mpi', default=True, description='Enable MPI parallel support')
+
+ depends_on('boost')
+ depends_on('mpi', when='+mpi')
+
+ conflicts('%gcc@7.1.0:')
+
+ root_cmakelists_dir = 'projects/cmake/build'
+
+ @run_before('cmake')
+ def regenerate(self):
+ with working_dir(join_path('projects', 'cmake')):
+ mkdirp('build')
+ edit = FileFilter('regenerate.sh')
+ edit.filter('boost="true"', 'boost="false"')
+ if '+mpi' in self.spec:
+ edit.filter('mpi="false"', 'mpi="true"')
+ regenerate = Executable('./regenerate.sh')
+ regenerate()
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ if '+mpi' in spec:
+ install('rb-mpi', prefix.bin)
+ else:
+ install('rb', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/rgb/package.py b/var/spack/repos/builtin/packages/rgb/package.py
index ddc5419305..2b09a2c4a5 100644
--- a/var/spack/repos/builtin/packages/rgb/package.py
+++ b/var/spack/repos/builtin/packages/rgb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Rgb(Package):
+class Rgb(AutotoolsPackage):
"""X color name database.
This package includes both the list mapping X color names to RGB values
@@ -42,10 +42,3 @@ class Rgb(Package):
depends_on('xorg-server')
depends_on('xproto', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/rhash/package.py b/var/spack/repos/builtin/packages/rhash/package.py
new file mode 100644
index 0000000000..c2191f1f07
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rhash/package.py
@@ -0,0 +1,78 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+import glob
+from spack import *
+
+
+class Rhash(MakefilePackage):
+ """RHash is a console utility for computing and verifying hash sums of
+ files. It supports CRC32, MD4, MD5, SHA1, SHA256, SHA512, SHA3, Tiger,
+ TTH, Torrent BTIH, AICH, ED2K, GOST R 34.11-94, RIPEMD-160, HAS-160,
+ EDON-R 256/512, WHIRLPOOL and SNEFRU hash sums."""
+
+ homepage = "https://sourceforge.net/projects/rhash/"
+ url = "https://github.com/rhash/RHash/archive/v1.3.5.tar.gz"
+
+ version('1.3.5', 'f586644019c10c83c6b6835de4b99e74')
+
+ # For macOS build instructions, see:
+ # https://github.com/Homebrew/homebrew-core/blob/master/Formula/rhash.rb
+
+ def build(self, spec, prefix):
+ # Doesn't build shared libraries by default
+ make()
+
+ if spec.satisfies('platform=darwin'):
+ make('-C', 'librhash', 'dylib')
+ else:
+ make('lib-shared')
+
+ def check(self):
+ # Makefile has both `test` and `check` targets:
+ #
+ # * `test` - used to test that the build is working properly
+ # * `check` - used to check that the tarball is ready for upload
+ #
+ # Default implmentation is to run both `make test` and `make check`.
+ # `test` passes, but `check` fails, so only run `test`.
+ make('test')
+ make('test-static-lib')
+
+ if not self.spec.satisfies('platform=darwin'):
+ make('test-shared')
+ make('test-shared-lib')
+
+ def install(self, spec, prefix):
+ # Some things are installed to $(DESTDIR)$(PREFIX) while other things
+ # are installed to $DESTDIR/etc.
+ make('install', 'DESTDIR={0}'.format(prefix), 'PREFIX=')
+ make('install-lib-static', 'DESTDIR={0}'.format(prefix), 'PREFIX=')
+
+ if spec.satisfies('platform=darwin'):
+ libs = glob.glob('librhash/*.dylib')
+ for lib in libs:
+ install(lib, prefix.lib)
+ else:
+ make('install-lib-shared', 'DESTDIR={0}'.format(prefix), 'PREFIX=')
diff --git a/var/spack/repos/builtin/packages/rockstar/adjust_buildscript.patch b/var/spack/repos/builtin/packages/rockstar/adjust_buildscript.patch
new file mode 100644
index 0000000000..e9a18e4ee4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rockstar/adjust_buildscript.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile b/Makefile
+index fafba4b..a21ef9e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -6,7 +6,7 @@ PROFFLAGS = -lm -g -pg -O2 -std=c99
+ CC = gcc
+ CFILES = rockstar.c check_syscalls.c fof.c groupies.c subhalo_metric.c potential.c nfw.c jacobi.c fun_times.c interleaving.c universe_time.c hubble.c integrate.c distance.c config_vars.c config.c bounds.c inthash.c io/read_config.c client.c server.c merger.c inet/socket.c inet/rsocket.c inet/address.c io/meta_io.c io/io_internal.c io/io_ascii.c io/stringparse.c io/io_gadget.c io/io_generic.c io/io_art.c io/io_tipsy.c io/io_bgc2.c io/io_util.c io/io_arepo.c io/io_hdf5.c
+ DIST_FLAGS =
+-HDF5_FLAGS = -DH5_USE_16_API -lhdf5 -DENABLE_HDF5 -I/opt/local/include -L/opt/local/lib
++HDF5_FLAGS = -DH5_USE_16_API -lhdf5 -DENABLE_HDF5 -I$(HDF5_INC_DIR) -L$(HDF5_LIB_DIR)
+
+ all:
+ @make reg EXTRA_FLAGS="$(OFLAGS)"
diff --git a/var/spack/repos/builtin/packages/rockstar/package.py b/var/spack/repos/builtin/packages/rockstar/package.py
new file mode 100644
index 0000000000..2f8bfdc804
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rockstar/package.py
@@ -0,0 +1,69 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import os
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class Rockstar(MakefilePackage):
+ """The Rockstar Halo Finder"""
+
+ homepage = "https://bitbucket.org/gfcstanford/rockstar"
+ url = "https://bitbucket.org/gfcstanford/rockstar"
+
+ version('develop', git='https://bitbucket.org/gfcstanford/rockstar.git')
+ version('yt', hg='https://bitbucket.org/MatthewTurk/rockstar')
+
+ variant('hdf5', description='Build rockstar with HDF5 support', default=False)
+
+ patch('adjust_buildscript.patch')
+
+ depends_on('hdf5', when='+hdf5')
+
+ def build(self, spec, prefix):
+ # Set environment appropriately for HDF5
+ if '+hdf5' in spec:
+ os.environ['HDF5_INC_DIR'] = spec['hdf5'].prefix.include
+ os.environ['HDF5_LIB_DIR'] = spec['hdf5'].prefix.lib
+
+ # Build depending on whether hdf5 is to be used
+ if '+hdf5' in spec:
+ make('with_hdf5')
+ else:
+ make()
+
+ # Build rockstar library
+ make('lib')
+
+ def install(self, spec, prefix):
+ # Install all files and directories
+ copy_tree(".", prefix)
+
+ mkdir(prefix.bin)
+ mkdir(prefix.lib)
+
+ install('rockstar', join_path(prefix.bin, 'rockstar'))
+ install('librockstar.so', join_path(prefix.lib, 'librockstar.so'))
diff --git a/var/spack/repos/builtin/packages/root/package.py b/var/spack/repos/builtin/packages/root/package.py
index 0f66dcebaa..a003d3d5e2 100644
--- a/var/spack/repos/builtin/packages/root/package.py
+++ b/var/spack/repos/builtin/packages/root/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,14 +27,24 @@ from spack import *
import sys
-class Root(Package):
+class Root(CMakePackage):
"""ROOT is a data analysis framework."""
+
homepage = "https://root.cern.ch"
- url = "https://root.cern.ch/download/root_v6.07.02.source.tar.gz"
+ url = "https://root.cern.ch/download/root_v6.09.02.source.tar.gz"
+
+ # Development versions
+ version('6.09.02', '4188dfeafb72df339a3d688fe92f57ec')
+
+ # Production versions
+ version('6.08.06', 'bcf0be2df31a317d25694ad2736df268', preferred=True)
+ # Old versions
+ version('6.06.08', '6ef0fe9bd9f88f3ce8890e3651142ee4')
version('6.06.06', '4308449892210c8d36e36924261fea26')
version('6.06.04', '55a2f98dd4cea79c9c4e32407c2d6d17')
version('6.06.02', 'e9b8b86838f65b0a78d8d02c66c2ec55')
+ version('5.34.36', '6a1ad549b3b79b10bbb1f116b49067ee')
if sys.platform == 'darwin':
patch('math_uint.patch', when='@6.06.02')
@@ -42,48 +52,71 @@ class Root(Package):
variant('graphviz', default=False, description='Enable graphviz support')
- depends_on("cmake", type='build')
- depends_on("pcre")
- depends_on("fftw")
- depends_on("graphviz", when="+graphviz")
- depends_on("python")
- depends_on("gsl")
- depends_on("libxml2+python")
- depends_on("jpeg")
- if sys.platform != 'darwin':
- depends_on("libpng")
- depends_on("openssl")
- depends_on("freetype")
-
- def install(self, spec, prefix):
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
- options = [source_directory]
- if '+debug' in spec:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
- else:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Release')
- options.append('-Dcxx14=on')
- options.append('-Dcocoa=off')
- options.append('-Dbonjour=off')
- options.append('-Dx11=on')
- options.extend(std_cmake_args)
+ depends_on('cmake@3.4.3:', type='build')
+ depends_on('pkg-config', type='build')
+
+ depends_on('binutils')
+ depends_on('zlib')
+ # depends_on('unuran')
+ depends_on('freetype')
+ depends_on('pcre')
+ depends_on('xz')
+ depends_on('libsm')
+ depends_on('libice')
+ depends_on('libx11')
+ depends_on('libxext')
+ depends_on('libxpm')
+ depends_on('libxft')
+ # depends_on('gif')
+ depends_on('libpng')
+ depends_on('jpeg')
+ depends_on('gsl')
+ depends_on('python@2.7:')
+ # depends_on('opengl')
+ depends_on('graphviz', when='+graphviz')
+ # depends_on('kerberos')
+ depends_on('libxml2+python')
+ depends_on('openssl')
+ # depends_on('castor')
+ # depends_on('rfio')
+ # depends_on('mysql')
+ # depends_on('oracle')
+ # depends_on('odbc')
+ # depends_on('postgresql')
+ depends_on('sqlite')
+ # depends_on('pythia')
+ depends_on('fftw')
+ depends_on('cfitsio')
+ # depends_on('monalisa')
+ # depends_on('xrootd')
+ # depends_on('gfal')
+ # depends_on('dcap')
+ # depends_on('ldap')
+ # depends_on('chirp')
+ # depends_on('hdfs')
+ # depends_on('davix')
+
+ # I was unable to build root with any Intel compiler
+ # See https://sft.its.cern.ch/jira/browse/ROOT-7517
+ conflicts('%intel')
+
+ def cmake_args(self):
+ args = [
+ '-Dcocoa=OFF',
+ '-Dbonjour=OFF',
+ '-Dx11=ON',
+ ]
+
if sys.platform == 'darwin':
- darwin_options = [
+ args.extend([
'-Dcastor=OFF',
'-Drfio=OFF',
- '-Ddcache=OFF']
- options.extend(darwin_options)
- with working_dir(build_directory, create=True):
- cmake(*options)
- make()
- make("install")
-
- def setup_dependent_environment(self, spack_env, run_env, dspec):
+ '-Ddcache=OFF',
+ ])
+
+ return args
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
spack_env.set('ROOTSYS', self.prefix)
- spack_env.set('ROOT_VERSION', 'v6')
+ spack_env.set('ROOT_VERSION', 'v{0}'.format(self.version.up_to(1)))
spack_env.prepend_path('PYTHONPATH', self.prefix.lib)
-
- def url_for_version(self, version):
- """Handle ROOT's unusual version string."""
- return "https://root.cern.ch/download/root_v%s.source.tar.gz" % version
diff --git a/var/spack/repos/builtin/packages/rose/package.py b/var/spack/repos/builtin/packages/rose/package.py
index 02b09f0126..8a7f22cf97 100644
--- a/var/spack/repos/builtin/packages/rose/package.py
+++ b/var/spack/repos/builtin/packages/rose/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -35,30 +35,67 @@ class Rose(Package):
(Developed at Lawrence Livermore National Lab)"""
homepage = "http://rosecompiler.org/"
- url = "https://github.com/rose-compiler/edg4x-rose"
+ url = "https://github.com/rose-compiler/rose/archive/v0.9.7.tar.gz"
+ version('0.9.7', 'e14ce5250078df4b09f4f40559d46c75')
version('master', branch='master',
- git='https://github.com/rose-compiler/edg4x-rose.git')
+ git='https://github.com/rose-compiler/rose.git')
patch('add_spack_compiler_recognition.patch')
depends_on("autoconf@2.69", type='build')
depends_on("automake@1.14", type='build')
depends_on("libtool@2.4", type='build')
- depends_on("boost@1.54.0")
- depends_on("jdk@8u25-linux-x64")
+ depends_on("boost@1.47.0:")
- def install(self, spec, prefix):
- # Bootstrap with autotools
+ variant('tests', default=False, description='Build the tests directory')
+
+ variant('binanalysis', default=False, description='Enable binary analysis tooling')
+ depends_on('libgcrypt', when='+binanalysis', type='build')
+ depends_on('py-binwalk', when='+binanalysis', type='run')
+
+ variant('c', default=True, description='Enable c language support')
+ variant('cxx', default=True, description='Enable c++ language support')
+
+ variant('fortran', default=False, description='Enable fortran language support')
+
+ variant('java', default=False, description='Enable java language support')
+ depends_on('java', when='+java')
+
+ variant('z3', default=False, description='Enable z3 theorem prover')
+ depends_on('z3', when='+z3')
+
+ build_directory = 'spack-build'
+
+ def autoreconf(self, spec, prefix):
bash = which('bash')
bash('build')
- # Configure, compile & install
- with working_dir('rose-build', create=True):
- boost = spec['boost']
+ @property
+ def languages(self):
+ spec = self.spec
+ langs = [
+ 'binaries' if '+binanalysis' in spec else '',
+ 'c' if '+c' in spec else '',
+ 'c++' if '+cxx' in spec else '',
+ 'java' if '+java' in spec else '',
+ 'fortran' if '+fortran' in spec else ''
+ ]
+ return list(filter(None, langs))
+
+ def configure_args(self):
+ spec = self.spec
+ cc = self.compiler.cc
+ cxx = self.compiler.cxx
+ return [
+ '--disable-boost-version-check',
+ "--with-alternate_backend_C_compiler={0}".format(cc),
+ "--with-alternate_backend_Cxx_compiler={0}".format(cxx),
+ "--with-boost={0}".format(spec['boost'].prefix),
+ "--enable-languages={0}".format(",".join(self.languages)),
+ "--with-z3={0}".format(spec['z3'].prefix) if '+z3' in spec else '',
+ '--disable-tests-directory' if '+tests' not in spec else '',
+ '--enable-tutorial-directory={0}'.format('no'),
+ ]
- configure = Executable('../configure')
- configure("--prefix=" + prefix,
- "--with-boost=" + boost.prefix,
- "--disable-boost-version-check")
- make("install-core")
+ install_targets = ["install-core"]
diff --git a/var/spack/repos/builtin/packages/rr/package.py b/var/spack/repos/builtin/packages/rr/package.py
new file mode 100644
index 0000000000..245744a6fa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rr/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Rr(CMakePackage):
+ """Application execution recorder, player and debugger"""
+ homepage = "http://rr-project.org/"
+ url = "https://github.com/mozilla/rr/archive/4.5.0.tar.gz"
+
+ version('4.5.0', '1ec0aed0559b81143f59a200eeb302ef')
+ version('4.4.0', '6d1cbb4fafbf6711114369907cf1efb1')
+ version('4.3.0', '31470564e8b7eb317f619e4ef2244082')
+
+ depends_on('gdb')
+ depends_on('git')
+ depends_on('zlib')
+ # depends_on('capnproto', when='@4.6:') # not yet in spack
+ # depends_on('libcapnp') # needed for future releases
+ depends_on('pkg-config', type='build')
+ depends_on('py-pexpect', type='build') # actually tests
+
+ # rr needs architecture Nehalem and beyond, how can spack
+ # test this?
+
+ # Only 'Release' is supported at the moment
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Release'))
+
+ def patch(self):
+ # because otherwise CMake would try and fail to set RPATH of
+ # rr_exec_stub
+ filter_file(
+ r'^(install\(TARGETS .*)\s*rr_exec_stub', r'\1', 'CMakeLists.txt')
+
+ def cmake_args(self):
+ return ['-Ddisable32bit=ON']
+
+ @run_after('install')
+ def install_stub(self):
+ with working_dir(self.build_directory):
+ mkdirp(self.prefix.bin)
+ install('bin/rr_exec_stub', self.prefix.bin)
diff --git a/var/spack/repos/builtin/packages/rsbench/package.py b/var/spack/repos/builtin/packages/rsbench/package.py
new file mode 100644
index 0000000000..91c8d6f71b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rsbench/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Rsbench(MakefilePackage):
+ """A mini-app to represent the multipole resonance representation lookup
+ cross section algorithm."""
+
+ homepage = "https://github.com/ANL-CESAR/RSBench"
+ url = "https://github.com/ANL-CESAR/RSBench/archive/v2.tar.gz"
+
+ version('2', '15a3ac5ea72529ac1ed9ed016ee68b4f')
+ version('0', '3427634dc5e7cd904d88f9955b371757')
+
+ tags = ['proxy-app']
+
+ build_directory = 'src'
+
+ @property
+ def build_targets(self):
+ targets = []
+
+ cflags = '-std=gnu99'
+ ldflags = '-lm'
+
+ if self.compiler.name == 'gcc':
+ cflags += ' -ffast-math '
+ elif self.compiler.name == 'intel':
+ cflags += ' -xhost -ansi-alias -no-prec-div '
+ elif self.compiler.name == 'pgi':
+ cflags += ' -fastsse '
+
+ cflags += self.compiler.openmp_flag
+
+ targets.append('CFLAGS={0}'.format(cflags))
+ targets.append('LDFLAGS={0}'.format(ldflags))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('src/rsbench', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/rsem/package.py b/var/spack/repos/builtin/packages/rsem/package.py
new file mode 100644
index 0000000000..2d29610b20
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rsem/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Rsem(MakefilePackage):
+ """RSEM is a software package for estimating gene and isoform expression
+ levels from RNA-Seq data."""
+
+ homepage = "http://deweylab.github.io/RSEM/"
+ url = "https://github.com/deweylab/RSEM/archive/v1.3.0.tar.gz"
+
+ version('1.3.0', '9728161625d339d022130e2428604bf5')
+
+ depends_on('r', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+ depends_on('python', type=('build', 'run'))
+ depends_on('bowtie')
+ depends_on('bowtie2')
+ depends_on('star')
+
+ def install(self, spec, prefix):
+ make('install', 'DESTDIR=%s' % prefix, 'prefix=')
diff --git a/var/spack/repos/builtin/packages/rstart/package.py b/var/spack/repos/builtin/packages/rstart/package.py
index 7b80e88ae7..2a0cf59e81 100644
--- a/var/spack/repos/builtin/packages/rstart/package.py
+++ b/var/spack/repos/builtin/packages/rstart/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Rstart(Package):
+class Rstart(AutotoolsPackage):
"""This package includes both the client and server sides implementing
the protocol described in the "A Flexible Remote Execution Protocol
Based on rsh" paper found in the specs/ subdirectory.
@@ -41,9 +41,3 @@ class Rstart(Package):
depends_on('xproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/rsync/package.py b/var/spack/repos/builtin/packages/rsync/package.py
index 4e741b255f..642f702ac0 100644
--- a/var/spack/repos/builtin/packages/rsync/package.py
+++ b/var/spack/repos/builtin/packages/rsync/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,10 @@
from spack import *
-class Rsync(Package):
+class Rsync(AutotoolsPackage):
"""An open source utility that provides fast incremental file transfer."""
homepage = "https://rsync.samba.org"
url = "https://download.samba.org/pub/rsync/rsync-3.1.1.tar.gz"
version('3.1.2', '0f758d7e000c0f7f7d3792610fad70cb')
version('3.1.1', '43bd6676f0b404326eee2d63be3cdcfe')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/rtags/add_string_iterator_erase_compile_check.patch b/var/spack/repos/builtin/packages/rtags/add_string_iterator_erase_compile_check.patch
new file mode 100644
index 0000000000..98ec67df5f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rtags/add_string_iterator_erase_compile_check.patch
@@ -0,0 +1,67 @@
+From e0cb0bfba240669e27d77ea4ac17a90fde1a03fd Mon Sep 17 00:00:00 2001
+From: Anders Bakken <agbakken@gmail.com>
+Date: Thu, 27 Jul 2017 20:55:19 -0700
+Subject: [PATCH] Add a compile test for proper c++11 support for std::string
+ and work around deficient stls.
+
+---
+ rct.cmake | 10 ++++++++++
+ rct/String.h | 10 ++++++++++
+ rct/rct-config.h.in | 1 +
+ 3 files changed, 21 insertions(+)
+
+diff --git a/src/rct/rct.cmake b/src/rct/rct.cmake
+index da102d2..30da945 100644
+--- a/src/rct/rct.cmake
++++ b/src/rct/rct.cmake
+@@ -287,6 +287,16 @@ check_cxx_source_runs("
+ return 0;
+ }" HAVE_UNORDERDED_MAP_WORKING_MOVE_CONSTRUCTOR)
+
++check_cxx_source_runs("
++ #include <string>
++
++ int main(int, char **)
++ {
++ std::string str = \"foobar testing\";
++ std::string::iterator it = str.erase(str.begin(), str.end());
++ return 0;
++ }" HAVE_STRING_ITERATOR_ERASE)
++
+ unset(CMAKE_REQUIRED_FLAGS)
+ unset(CMAKE_REQUIRED_LIBRARIES)
+
+diff --git a/src/rct/rct/String.h b/src/rct/rct/String.h
+index f8b9dbc..31b2012 100644
+--- a/src/rct/rct/String.h
++++ b/src/rct/rct/String.h
+@@ -454,7 +454,17 @@ class String
+
+ iterator erase(const_iterator begin, const_iterator end)
+ {
++#ifdef HAVE_STRING_ITERATOR_ERASE
+ return mString.erase(begin, end);
++#else
++ if (begin >= end) {
++ return mString.end();
++ }
++
++ const size_t offset = begin - mString.begin();
++ mString.erase(offset, end - begin);
++ return mString.begin() + offset;
++#endif
+ }
+
+ String& erase(size_t index = 0, size_t count = npos)
+diff --git a/src/rct/rct/rct-config.h.in b/src/rct/rct/rct-config.h.in
+index 9c67e2f..87c5b7c 100644
+--- a/src/rct/rct/rct-config.h.in
++++ b/src/rct/rct/rct-config.h.in
+@@ -20,6 +20,7 @@
+ #cmakedefine HAVE_SHMDEST
+ #cmakedefine HAVE_SCRIPTENGINE
+ #cmakedefine HAVE_UNORDERDED_MAP_WORKING_MOVE_CONSTRUCTOR
++#cmakedefine HAVE_HAVE_STRING_ITERATOR_ERASE
+ #if !defined(HAVE_EPOLL) && !defined(HAVE_KQUEUE)
+ #cmakedefine HAVE_SELECT
+ #endif
diff --git a/var/spack/repos/builtin/packages/rtags/package.py b/var/spack/repos/builtin/packages/rtags/package.py
new file mode 100644
index 0000000000..8e1a962209
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rtags/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Rtags(CMakePackage):
+ """RTags is a client/server application that indexes C/C++ code"""
+
+ homepage = "https://github.com/Andersbakken/rtags/"
+ url = "https://andersbakken.github.io/rtags-releases/rtags-2.12.tar.gz"
+
+ version('2.12', '84988aaff27915a79d4b4b57299f9a51')
+
+ depends_on("llvm@3.3: +clang")
+ depends_on("zlib")
+ depends_on("openssl")
+ depends_on("lua@5.3:")
+ depends_on("bash-completion")
+ depends_on("pkg-config", type='build')
+
+ patch("add_string_iterator_erase_compile_check.patch", when='@2.12')
+
+ def cmake_args(self):
+ args = ['-DCMAKE_EXPORT_COMPILE_COMMANDS=1',
+ '-DRTAGS_NO_ELISP_FILES=1',
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/rtax/package.py b/var/spack/repos/builtin/packages/rtax/package.py
new file mode 100644
index 0000000000..3e359d7346
--- /dev/null
+++ b/var/spack/repos/builtin/packages/rtax/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Rtax(Package):
+ """Rapid and accurate taxonomic classification of short paired-end
+ sequence reads from the 16S ribosomal RNA gene"""
+
+ homepage = "https://github.com/davidsoergel/rtax"
+ url = "http://static.davidsoergel.com/rtax-0.984.tgz"
+
+ version('0.984', 'e9dbbe4b3c26b0f0f6c14a5fb46aa587')
+
+ depends_on('usearch')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('rtax', prefix.bin)
+ install_tree('scripts', prefix.bin.scripts)
+ install_tree('greengenes', prefix.bin.greengenes)
diff --git a/var/spack/repos/builtin/packages/ruby/package.py b/var/spack/repos/builtin/packages/ruby/package.py
index 8dc314c171..1e3934df76 100644
--- a/var/spack/repos/builtin/packages/ruby/package.py
+++ b/var/spack/repos/builtin/packages/ruby/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -52,20 +52,20 @@ class Ruby(Package):
make()
make("install")
- def setup_dependent_environment(self, spack_env, run_env, extension_spec):
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
# TODO: do this only for actual extensions.
# Set GEM_PATH to include dependent gem directories
ruby_paths = []
- for d in extension_spec.traverse():
+ for d in dependent_spec.traverse():
if d.package.extends(self.spec):
ruby_paths.append(d.prefix)
spack_env.set_path('GEM_PATH', ruby_paths)
# The actual installation path for this gem
- spack_env.set('GEM_HOME', extension_spec.prefix)
+ spack_env.set('GEM_HOME', dependent_spec.prefix)
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""Called before ruby modules' install() methods. Sets GEM_HOME
and GEM_PATH to values appropriate for the package being built.
diff --git a/var/spack/repos/builtin/packages/rust-bindgen/package.py b/var/spack/repos/builtin/packages/rust-bindgen/package.py
index c411bc15d1..3c7e42ca8a 100644
--- a/var/spack/repos/builtin/packages/rust-bindgen/package.py
+++ b/var/spack/repos/builtin/packages/rust-bindgen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,9 +29,9 @@ import os
class RustBindgen(Package):
"""The rust programming language toolchain"""
homepage = "http://www.rust-lang.org"
- url = "https://github.com/crabtw/rust-bindgen"
+ url = "https://github.com/servo/rust-bindgen/archive/v0.20.5.tar.gz"
- version('0.16', tag='0.16', git='https://github.com/crabtw/rust-bindgen')
+ version('0.20.5', '3e4d70a5bec540324fdd95bc9e82bebc')
extends("rust")
depends_on("llvm")
diff --git a/var/spack/repos/builtin/packages/rust/package.py b/var/spack/repos/builtin/packages/rust/package.py
index 8a92fca634..219c82fa83 100644
--- a/var/spack/repos/builtin/packages/rust/package.py
+++ b/var/spack/repos/builtin/packages/rust/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -71,7 +71,7 @@ class Rust(Package):
make()
make("install")
- def setup_dependent_package(self, module, ext_spec):
+ def setup_dependent_package(self, module, dependent_spec):
"""
Called before python modules' install() methods.
diff --git a/var/spack/repos/builtin/packages/sabre/package.py b/var/spack/repos/builtin/packages/sabre/package.py
new file mode 100644
index 0000000000..b93b07be51
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sabre/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Sabre(MakefilePackage):
+ """Sabre is a tool that will demultiplex barcoded reads into separate
+ files. It will work on both single-end and paired-end data in fastq
+ format. It simply compares the provided barcodes with each read and
+ separates the read into its appropriate barcode file, after stripping
+ the barcode from the read (and also stripping the quality values of
+ the barcode bases). If a read does not have a recognized barcode,
+ then it is put into the unknown file.
+ """
+
+ homepage = "https://github.com/najoshi/sabre"
+ url = "https://github.com/najoshi/sabre"
+
+ version('2013-09-27', git='https://github.com/najoshi/sabre.git', commit='039a55e500ba07b7e6432ea6ec2ddcfb3471d949')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('sabre', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/salmon/package.py b/var/spack/repos/builtin/packages/salmon/package.py
new file mode 100644
index 0000000000..a323aa1dab
--- /dev/null
+++ b/var/spack/repos/builtin/packages/salmon/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Salmon(CMakePackage):
+ """Salmon is a tool for quantifying the expression of transcripts using
+ RNA-seq data."""
+
+ homepage = "http://combine-lab.github.io/salmon/"
+ url = "https://github.com/COMBINE-lab/salmon/archive/v0.8.2.tar.gz"
+
+ version('0.8.2', 'ee512697bc44b13661a16d4e14cf0a00')
+
+ depends_on('boost')
+
+ def cmake_args(self):
+ args = ['-DBOOST_ROOT=%s' % self.spec['boost'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/sambamba/Makefile.patch b/var/spack/repos/builtin/packages/sambamba/Makefile.patch
new file mode 100644
index 0000000000..086a137569
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sambamba/Makefile.patch
@@ -0,0 +1,11 @@
+--- sambamba/Makefile.orig 2017-09-07 14:31:28.563896131 -0700
++++ sambamba/Makefile 2017-09-07 14:31:35.337912872 -0700
+@@ -20,7 +20,7 @@
+
+ else
+
+-LINK_CMD=gcc -Wl,--gc-sections -o build/sambamba build/sambamba.o $(STATIC_LIB_SUBCMD) -l:libphobos2-ldc.a -l:libdruntime-ldc.a -lrt -lpthread -lm
++LINK_CMD=gcc -Wl,--gc-sections -o build/sambamba build/sambamba.o $(STATIC_LIB_SUBCMD) -l:libphobos2-ldc.a -l:libdruntime-ldc.a -lrt -lpthread -lm -ldl
+ DMD_STATIC_LIBS=-L-Lhtslib -L-l:libhts.a -L-l:libphobos2.a -L-Llz4/lib -L-l:liblz4.a
+
+ define split-debug
diff --git a/var/spack/repos/builtin/packages/sambamba/package.py b/var/spack/repos/builtin/packages/sambamba/package.py
new file mode 100644
index 0000000000..ad8c68547c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sambamba/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sambamba(Package):
+ """Sambamba: process your BAM data faster (bioinformatics)"""
+
+ homepage = "http://lomereiter.github.io/sambamba/"
+
+ version('0.6.6', git='https://github.com/lomereiter/sambamba.git',
+ tag='v0.6.6', submodules=True)
+
+ depends_on('ldc~shared', type=('build', 'link'))
+ depends_on('python', type='build')
+
+ resource(
+ name='undeaD',
+ git='https://github.com/dlang/undeaD.git',
+ tag='v1.0.7',
+ )
+
+ patch('Makefile.patch')
+ parallel = False
+
+ def install(self, spec, prefix):
+ make('sambamba-ldmd2-64')
+ mkdirp(prefix.bin)
+ for filename in ('build/sambamba', 'build/sambamba.debug'):
+ install(filename, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/samrai/package.py b/var/spack/repos/builtin/packages/samrai/package.py
index e0648290d6..78b674213d 100644
--- a/var/spack/repos/builtin/packages/samrai/package.py
+++ b/var/spack/repos/builtin/packages/samrai/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Samrai(Package):
+class Samrai(AutotoolsPackage):
"""SAMRAI (Structured Adaptive Mesh Refinement Application Infrastructure)
is an object-oriented C++ software library enables exploration of
numerical, algorithmic, parallel computing, and software issues
@@ -33,10 +33,12 @@ class Samrai(Package):
(SAMR) technology in large-scale parallel application development.
"""
- homepage = "https://computation.llnl.gov/project/SAMRAI/"
- url = "https://computation.llnl.gov/project/SAMRAI/download/SAMRAI-v3.9.1.tar.gz"
+ homepage = "https://computation.llnl.gov/projects/samrai"
+ url = "https://computation.llnl.gov/projects/samrai/download/SAMRAI-v3.11.2.tar.gz"
list_url = homepage
+ version('3.11.2', 'd5f59f8efd755b23b797e46349428206')
+ version('3.10.0', 'ff5f5b8b4a35b52a1b7e37a74166c65a')
version('3.9.1', '232d04d0c995f5abf20d94350befd0b2')
version('3.8.0', 'c18fcffa706346bfa5828b36787ce5fe')
version('3.7.3', '12d574eacadf8c9a70f1bb4cd1a69df6')
@@ -49,29 +51,43 @@ class Samrai(Package):
version('3.3.2-beta', 'e598a085dab979498fcb6c110c4dd26c')
version('2.4.4', '04fb048ed0efe7c531ac10c81cc5f6ac')
- depends_on("mpi")
- depends_on("zlib")
- depends_on("hdf5+mpi")
- depends_on("boost")
+ # Debug mode reduces optimization, includes assertions, debug symbols
+ # and more print statements
+ variant('debug', default=False,
+ description='Compile with reduced optimization and debugging on')
+
+ depends_on('mpi')
+ depends_on('zlib')
+ depends_on('hdf5+mpi')
+ depends_on('boost')
+ depends_on('m4', type='build')
# don't build tools with gcc
patch('no-tool-build.patch', when='%gcc')
- # TODO: currently hard-coded to use openmpi - be careful!
- def install(self, spec, prefix):
- configure(
- "--prefix=%s" % prefix,
- "--with-CXX=%s" % spec['mpi'].prefix.bin + "/mpic++",
- "--with-CC=%s" % spec['mpi'].prefix.bin + "/mpicc",
- "--with-hdf5=%s" % spec['hdf5'].prefix,
- "--with-boost=%s" % spec['boost'].prefix,
- "--with-zlib=%s" % spec['zlib'].prefix,
- "--without-blas",
- "--without-lapack",
- "--with-hypre=no",
- "--with-petsc=no",
- "--enable-opt",
- "--disable-debug")
+ def configure_args(self):
+ options = []
+
+ options.extend([
+ '--with-CXX=%s' % self.spec['mpi'].mpicxx,
+ '--with-CC=%s' % self.spec['mpi'].mpicc,
+ '--with-F77=%s' % self.spec['mpi'].mpifc,
+ '--with-M4=%s' % self.spec['m4'].prefix,
+ '--with-hdf5=%s' % self.spec['hdf5'].prefix,
+ '--with-boost=%s' % self.spec['boost'].prefix,
+ '--with-zlib=%s' % self.spec['zlib'].prefix,
+ '--without-blas',
+ '--without-lapack',
+ '--with-hypre=no',
+ '--with-petsc=no'])
+
+ if '+debug' in self.spec:
+ options.extend([
+ '--disable-opt',
+ '--enable-debug'])
+ else:
+ options.extend([
+ '--enable-opt',
+ '--disable-debug'])
- make()
- make("install")
+ return options
diff --git a/var/spack/repos/builtin/packages/samtools/package.py b/var/spack/repos/builtin/packages/samtools/package.py
index b82a7e55d6..ae0acdde47 100644
--- a/var/spack/repos/builtin/packages/samtools/package.py
+++ b/var/spack/repos/builtin/packages/samtools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,17 +33,21 @@ class Samtools(Package):
homepage = "www.htslib.org"
url = "https://github.com/samtools/samtools/releases/download/1.3.1/samtools-1.3.1.tar.bz2"
+ version('1.6', 'b756f05fd5d1a7042074417edb8c9aea')
+ version('1.4', '8cbd7d2a0ec16d834babcd6c6d85d691')
version('1.3.1', 'a7471aa5a1eb7fc9cc4c6491d73c2d88')
version('1.2', '988ec4c3058a6ceda36503eebecd4122')
- depends_on("ncurses")
- depends_on("htslib", when='@1.3.1:') # htslib became standalone
- depends_on('zlib', when='@1.2') # needed for builtin htslib
+ depends_on('ncurses')
+ # htslib became standalone @1.3.1, must use corresponding version
+ depends_on('htslib@1.6', when='@1.6')
+ depends_on('htslib@1.4', when='@1.4')
+ depends_on('htslib@1.3.1', when='@1.3.1')
def install(self, spec, prefix):
if self.spec.version >= Version('1.3.1'):
configure('--prefix={0}'.format(prefix), '--with-ncurses',
- 'CURSES_LIB=-lncurses')
+ 'CURSES_LIB=-lncursesw')
make()
make('install')
else:
diff --git a/var/spack/repos/builtin/packages/sandbox/package.py b/var/spack/repos/builtin/packages/sandbox/package.py
new file mode 100644
index 0000000000..58c6696243
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sandbox/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sandbox(AutotoolsPackage):
+ """sandbox'd LD_PRELOAD hack by Gentoo Linux"""
+
+ homepage = "https://www.gentoo.org/proj/en/portage/sandbox/"
+ url = "https://dev.gentoo.org/~mgorny/dist/sandbox-2.12.tar.xz"
+
+ version('2.12', 'be97a391dd0696ab1813ca7aad455471')
diff --git a/var/spack/repos/builtin/packages/sas/package.py b/var/spack/repos/builtin/packages/sas/package.py
new file mode 100644
index 0000000000..f6a1cf4101
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sas/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sas(CMakePackage):
+ """SAS (Static Analysis Suite) is a powerful tool for running static
+ analysis on C++ code."""
+
+ homepage = "https://github.com/dpiparo/SAS"
+ url = "https://github.com/dpiparo/SAS/archive/0.1.3.tar.gz"
+
+ version('0.2.0', 'e6fecfb71d9cdce342c8593f4728c9f0')
+ version('0.1.4', '20d7311258f2a59c9367ae1576c392b6')
+ version('0.1.3', '1e6572afcc03318d16d7321d40eec0fd')
+
+ depends_on('python@2.7:')
+ depends_on('llvm@3.5:')
+ depends_on('cmake@2.8:', type='build')
+
+ def cmake_args(self):
+ args = [
+ '-DLLVM_DEV_DIR=%s' % self.spec['llvm'].prefix
+ ]
+ return args
diff --git a/var/spack/repos/builtin/packages/satsuma2/package.py b/var/spack/repos/builtin/packages/satsuma2/package.py
new file mode 100644
index 0000000000..4859c97c0e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/satsuma2/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Satsuma2(CMakePackage):
+ """Satsuma2 is an optimsed version of Satsuma, a tool to reliably align
+ large and complex DNA sequences providing maximum sensitivity (to find
+ all there is to find), specificity (to only find real homology) and
+ speed (to accomodate the billions of base pairs in vertebrate genomes).
+ """
+
+ homepage = "https://github.com/bioinfologics/satsuma2"
+ url = "https://github.com/bioinfologics/satsuma2"
+
+ version('2016-11-22', git='https://github.com/bioinfologics/satsuma2.git', commit='da694aeecf352e344b790bea4a7aaa529f5b69e6')
+
+ def install(self, spec, prefix):
+ install_tree(join_path('spack-build', 'bin'), prefix.bin)
diff --git a/var/spack/repos/builtin/packages/ipp/package.py b/var/spack/repos/builtin/packages/savanna/package.py
index c48ace79c1..af2cdf9ed8 100644
--- a/var/spack/repos/builtin/packages/ipp/package.py
+++ b/var/spack/repos/builtin/packages/savanna/package.py
@@ -1,12 +1,12 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
+# For details, see https://github.com/spack/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
@@ -23,28 +23,29 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
-import os
+from distutils.dir_util import copy_tree
-from spack.pkg.builtin.intel import IntelInstaller
+class Savanna(MakefilePackage):
+ """CODARcode Savanna runtime framework for high performance,
+ workflow management using Swift/T and ADIOS.
+ """
-class Ipp(IntelInstaller):
- """Intel Integrated Performance Primitives.
+ homepage = "https://github.com/CODARcode/savanna"
+ url = "https://github.com/CODARcode/savanna/archive/v0.5.tar.gz"
- Note: You will have to add the download file to a
- mirror so that Spack can find it. For instructions on how to set up a
- mirror, see http://spack.readthedocs.io/en/latest/mirrors.html"""
+ version('develop', git='https://github.com/CODARcode/savanna.git',
+ branch='master', submodules=True)
+ version('0.5', git='https://github.com/CODARcode/savanna.git',
+ tag='0.5', submodules=True)
- homepage = "https://software.intel.com/en-us/intel-ipp"
+ variant('tau', default=False, description='Enable TAU profiling support')
- version('9.0.3.210', '0e1520dd3de7f811a6ef6ebc7aa429a3',
- url="file://%s/l_ipp_9.0.3.210.tgz" % os.getcwd())
+ depends_on('mpi')
+ depends_on('stc')
+ depends_on('adios +fortran +zlib +sz +zfp +staging')
+ depends_on('mpix-launch-swift')
+ depends_on('tau', when='+tau')
def install(self, spec, prefix):
-
- self.intel_prefix = os.path.join(prefix, "pkg")
- IntelInstaller.install(self, spec, prefix)
-
- ipp_dir = os.path.join(self.intel_prefix, "ipp")
- for f in os.listdir(ipp_dir):
- os.symlink(os.path.join(ipp_dir, f), os.path.join(self.prefix, f))
+ copy_tree('.', prefix)
diff --git a/var/spack/repos/builtin/packages/saws/package.py b/var/spack/repos/builtin/packages/saws/package.py
new file mode 100644
index 0000000000..bda54644c6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/saws/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Saws(AutotoolsPackage):
+ """The Scientific Application Web server (SAWs) turns any C or C++
+ scientific or engineering application code into a webserver,
+ allowing one to examine (and even modify) the state of the
+ simulation with any browser from anywhere."""
+ homepage = "https://bitbucket.org/saws/saws/wiki/Home"
+
+ version('develop', git='https://bitbucket.org/saws/saws.git', tag='master')
+ version('0.1.0', git='https://bitbucket.org/saws/saws.git', tag='v0.1.0')
diff --git a/var/spack/repos/builtin/packages/sbt/package.py b/var/spack/repos/builtin/packages/sbt/package.py
index 977939c9df..baa93fa93a 100644
--- a/var/spack/repos/builtin/packages/sbt/package.py
+++ b/var/spack/repos/builtin/packages/sbt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,7 @@ class Sbt(Package):
version('0.13.12', 'cec3071d46ef13334c8097cc3467ff28')
- depends_on('jdk')
+ depends_on('java')
def install(self, spec, prefix):
shutil.copytree('bin', join_path(prefix, 'bin'), symlinks=True)
diff --git a/var/spack/repos/builtin/packages/scala/package.py b/var/spack/repos/builtin/packages/scala/package.py
new file mode 100644
index 0000000000..8c36f9e981
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scala/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Scala(Package):
+ """Scala is a general-purpose programming language providing support for
+ functional programming and a strong static type system. Designed to be
+ concise, many of Scala's design decisions were designed to build from
+ criticisms of Java.
+ """
+
+ homepage = "https://www.scala-lang.org/"
+ url = "https://downloads.lightbend.com/scala/2.12.1/scala-2.12.1.tgz"
+
+ version('2.12.1', '3eaecbce019b0fa3067503846e292b32')
+ version('2.11.11', '3f5b76001f60cbc31111ddb81de5ea07')
+ version('2.20.6', 'd79dc9fdc627b73289306bdaec81ca98')
+
+ depends_on('java')
+
+ def install(self, spec, prefix):
+
+ def install_dir(dirname):
+ install_tree(dirname, join_path(prefix, dirname))
+
+ install_dir('bin')
+ install_dir('lib')
+ install_dir('doc')
+ install_dir('man')
diff --git a/var/spack/repos/builtin/packages/scalasca/package.py b/var/spack/repos/builtin/packages/scalasca/package.py
index 228d814aed..21f50cf1fe 100644
--- a/var/spack/repos/builtin/packages/scalasca/package.py
+++ b/var/spack/repos/builtin/packages/scalasca/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Scalasca(Package):
+class Scalasca(AutotoolsPackage):
"""Scalasca is a software tool that supports the performance optimization
of parallel programs by measuring and analyzing their runtime
behavior. The analysis identifies potential performance
@@ -38,29 +38,34 @@ class Scalasca(Package):
homepage = "http://www.scalasca.org"
url = "http://apps.fz-juelich.de/scalasca/releases/scalasca/2.1/dist/scalasca-2.1.tar.gz"
- version('2.2.2', '2bafce988b0522d18072f7771e491ab9',
- url='http://apps.fz-juelich.de/scalasca/releases/scalasca/2.2/dist/scalasca-2.2.2.tar.gz')
-
- version('2.1', 'bab9c2b021e51e2ba187feec442b96e6',
- url='http://apps.fz-juelich.de/scalasca/releases/scalasca/2.1/dist/scalasca-2.1.tar.gz')
+ version('2.3.1', 'a83ced912b9d2330004cb6b9cefa7585')
+ version('2.2.2', '2bafce988b0522d18072f7771e491ab9')
+ version('2.1', 'bab9c2b021e51e2ba187feec442b96e6')
depends_on("mpi")
- ##########
- # Hard-code dependencies for Scalasca according to what stated in the
- # release page
- # The OTF2 library path should be detected automatically from SCOREP
- # SCALASCA 2.2.2
- depends_on("scorep@1.4:", when='@2.2.2')
- depends_on("cube@4.3:", when='@2.2.2')
- # SCALASCA 2.1
- depends_on("scorep@1.3", when='@2.1')
- depends_on("cube@4.2:", when='@2.1')
- ##########
- def install(self, spec, prefix):
- configure_args = ["--prefix=%s" % prefix,
- "--with-cube=%s" % spec['cube'].prefix.bin,
- "--enable-shared"]
- configure(*configure_args)
- make()
- make("install")
+ # version 2.3
+ depends_on('cube@4.3:', when='@2.3:')
+ depends_on('otf2@2:', when='@2.3:')
+
+ # version 2.1+
+ depends_on('cube@4.2', when='@2.1:2.2.999')
+ depends_on('otf2@1.4', when='@2.1:2.2.999')
+
+ def url_for_version(self, version):
+ return 'http://apps.fz-juelich.de/scalasca/releases/scalasca/{0}/dist/scalasca-{1}.tar.gz'.format(version.up_to(2), version)
+
+ def configure_args(self):
+ spec = self.spec
+
+ config_args = ["--enable-shared"]
+
+ config_args.append("--with-cube=%s" % spec['cube'].prefix.bin)
+ config_args.append("--with-otf2=%s" % spec['otf2'].prefix.bin)
+
+ if self.spec['mpi'].name == 'openmpi':
+ config_args.append("--with-mpi=openmpi")
+ elif self.spec.satisfies('^mpich@3:'):
+ config_args.append("--with-mpi=mpich3")
+
+ return config_args
diff --git a/var/spack/repos/builtin/packages/scalpel/package.py b/var/spack/repos/builtin/packages/scalpel/package.py
new file mode 100644
index 0000000000..f7d2834732
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scalpel/package.py
@@ -0,0 +1,101 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Scalpel(MakefilePackage):
+ """Scalpel is a software package for detecting INDELs (INsertions and
+ DELetions) mutations in a reference genome which has been sequenced
+ with next-generation sequencing technology.
+ """
+
+ homepage = "http://scalpel.sourceforge.net/index.html"
+ url = "https://downloads.sourceforge.net/project/scalpel/scalpel-0.5.3.tar.gz"
+
+ version('0.5.3', '682c9f1cd6ab2cb11c6866f303c673f0')
+
+ depends_on('cmake')
+ depends_on('perl@5.10.0:')
+
+ # bamtools needs to build before the others.
+ parallel = False
+
+ @run_before('install')
+ def filter_sbang(self):
+ """Run before install so that the standard Spack sbang install hook
+ can fix up the path to the perl|python binary.
+ """
+
+ with working_dir(self.stage.source_path):
+ kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
+
+ match = '^#!/usr/bin/env perl'
+ perl = self.spec['perl'].command
+ substitute = "#!{perl}".format(perl=perl)
+ files = ['FindDenovos.pl', 'scalpel-export',
+ 'scalpel-discovery', 'FindVariants.pl',
+ 'FindSomatic.pl']
+ filter_file(match, substitute, *files, **kwargs)
+
+ # Scalpel doesn't actually *have* an install step. The authors
+ # expect you to unpack the tarball, build it in the resulting
+ # directory, and add that directory to your PATH. The Perl
+ # scripts use `FindBin` to discover the directory in which they
+ # live and they run their own dedicated copies of {bam,sam}tools
+ # and etc... by explicitly naming the executables in their directory.
+ #
+ # Rather than trying to fix their code I just copied the juicy
+ # bits into prefix.bin. It's not normal, but....
+ #
+ def install(self, spec, prefix):
+ destdir = prefix.bin # see the note above....
+
+ mkdirp(destdir)
+
+ files = ['FindSomatic.pl', 'HashesIO.pm', 'MLDBM.pm',
+ 'scalpel-export', 'Utils.pm', 'FindDenovos.pl',
+ 'FindVariants.pl', 'scalpel-discovery',
+ 'SequenceIO.pm', 'Usage.pm']
+ for f in files:
+ install(f, destdir)
+
+ dirs = ['Text', 'MLDBM', 'Parallel', ]
+ for d in dirs:
+ install_tree(d, join_path(destdir, d))
+
+ install_tree('bamtools-2.3.0/bin',
+ join_path(destdir, 'bamtools-2.3.0', 'bin'))
+ install_tree('bamtools-2.3.0/lib',
+ join_path(destdir, 'bamtools-2.3.0', 'lib'))
+
+ mkdirp(join_path(destdir, 'bcftools-1.1'))
+ install('bcftools-1.1/bcftools', join_path(destdir, 'bcftools-1.1'))
+
+ mkdirp(join_path(destdir, 'Microassembler'))
+ install('Microassembler/Microassembler',
+ join_path(destdir, 'Microassembler'))
+
+ mkdirp(join_path(destdir, 'samtools-1.1'))
+ install('samtools-1.1/samtools', join_path(destdir, 'samtools-1.1'))
diff --git a/var/spack/repos/builtin/packages/scons/package.py b/var/spack/repos/builtin/packages/scons/package.py
index 54f894da6f..8bf6ceddcc 100644
--- a/var/spack/repos/builtin/packages/scons/package.py
+++ b/var/spack/repos/builtin/packages/scons/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,7 +27,12 @@ from spack import *
class Scons(PythonPackage):
"""SCons is a software construction tool"""
+
homepage = "http://scons.org"
- url = "http://downloads.sourceforge.net/project/scons/scons/2.5.0/scons-2.5.0.tar.gz"
+ url = "https://pypi.io/packages/source/s/scons/scons-2.5.1.tar.gz"
+
+ version('2.5.1', '3eac81e5e8206304a9b4683c57665aa4')
+ version('2.5.0', 'bda5530a70a41a7831d83c8b191c021e')
- version('2.5.0', '9e00fa0df8f5ca5c5f5975b40e0ed354')
+ # Python 3 is not supported
+ depends_on('python@:2.8', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/scorec-core/package.py b/var/spack/repos/builtin/packages/scorec-core/package.py
new file mode 100644
index 0000000000..e629a63ebe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scorec-core/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ScorecCore(CMakePackage):
+ """The SCOREC Core is a set of C/C++ libraries for unstructured mesh
+ simulations on supercomputers.
+ """
+
+ homepage = 'https://www.scorec.rpi.edu/'
+ url = 'https://github.com/SCOREC/core.git'
+
+ version('develop', git=url)
+
+ depends_on('mpi')
+ depends_on('zoltan')
+ depends_on('cmake@3.0:', type='build')
+
+ @property
+ def std_cmake_args(self):
+ # Default cmake RPATH options causes build failure on bg-q
+ if self.spec.satisfies('platform=bgq'):
+ return ['-DCMAKE_INSTALL_PREFIX:PATH={0}'.format(self.prefix)]
+ else:
+ return self._std_args(self)
+
+ def cmake_args(self):
+ options = []
+ options.append('-DCMAKE_C_COMPILER=%s' % self.spec['mpi'].mpicc)
+ options.append('-DCMAKE_CXX_COMPILER=%s' % self.spec['mpi'].mpicxx)
+ options.append('-DENABLE_ZOLTAN=ON')
+
+ if self.compiler.name == 'xl':
+ options.append('-DSCOREC_EXTRA_CXX_FLAGS=%s' % '-qminimaltoc')
+
+ return options
diff --git a/var/spack/repos/builtin/packages/scorep/gcc7.patch b/var/spack/repos/builtin/packages/scorep/gcc7.patch
new file mode 100644
index 0000000000..7383ee15ba
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scorep/gcc7.patch
@@ -0,0 +1,42 @@
+diff -ru scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_gcc_version_compatibility.h scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_gcc_version_compatibility.h
+--- scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_gcc_version_compatibility.h 2017-08-15 14:46:27.353875030 +0200
++++ scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_gcc_version_compatibility.h 2017-08-15 14:52:18.458118812 +0200
+@@ -27,6 +27,11 @@
+ DECL_SECTION_NAME( decl ) = build_string( strlen( section ), section )
+ #endif
+
++#if SCOREP_GCC_PLUGIN_TARGET_VERSION < 7000
++#define SET_DECL_ALIGN( decl, align ) \
++ DECL_ALIGN( decl ) = ( align )
++#endif
++
+ #if SCOREP_GCC_PLUGIN_TARGET_VERSION >= 5000
+ #define varpool_finalize_decl( decl ) varpool_node::finalize_decl( decl )
+ #define cgraph_get_node( decl ) cgraph_node::get( decl )
+diff -ru scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_inst_descriptor.inc.c scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_inst_descriptor.inc.c
+--- scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_inst_descriptor.inc.c 2017-08-15 14:46:27.353875030 +0200
++++ scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_inst_descriptor.inc.c 2017-08-15 14:52:56.220854113 +0200
+@@ -194,7 +194,7 @@
+ TREE_TYPE( region_descr_value ) );
+
+ /* Align the struct generously, so that it works for 32 and 64 bit */
+- DECL_ALIGN( region_descr_var ) = 64 * BITS_PER_UNIT;
++ SET_DECL_ALIGN( region_descr_var, 64 * BITS_PER_UNIT );
+ DECL_USER_ALIGN( region_descr_var ) = 1;
+
+ /* The struct is 64 bytes, because of reserved entries */
+diff -ru scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_tree-flow.h scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_tree-flow.h
+--- scorep-3.1.orig/src/adapters/compiler/gcc-plugin/scorep_plugin_tree-flow.h 2017-08-15 14:46:27.353875030 +0200
++++ scorep-3.1/src/adapters/compiler/gcc-plugin/scorep_plugin_tree-flow.h 2017-08-15 14:49:26.163888408 +0200
+@@ -23,6 +23,11 @@
+ #include "stringpool.h"
+ #include "basic-block.h"
+ #include "tree-ssa-alias.h"
++
++#if SCOREP_GCC_PLUGIN_TARGET_VERSION >= 7000
++#include "tree-vrp.h"
++#endif
++
+ #include "tree-ssanames.h"
+ #include "internal-fn.h"
+ #include "gimple-expr.h"
diff --git a/var/spack/repos/builtin/packages/scorep/package.py b/var/spack/repos/builtin/packages/scorep/package.py
index e0f7972304..fd7da69442 100644
--- a/var/spack/repos/builtin/packages/scorep/package.py
+++ b/var/spack/repos/builtin/packages/scorep/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,25 +25,30 @@
from spack import *
-class Scorep(Package):
+class Scorep(AutotoolsPackage):
"""The Score-P measurement infrastructure is a highly scalable and
easy-to-use tool suite for profiling, event tracing, and online analysis
of HPC applications.
"""
homepage = "http://www.vi-hps.org/projects/score-p"
- url = "http://www.vi-hps.org/upload/packages/scorep/scorep-1.2.3.tar.gz"
+ url = "http://www.vi-hps.org/upload/packages/scorep/scorep-2.0.2.tar.gz"
- version('2.0.2', '8f00e79e1b5b96e511c5ebecd10b2888',
- url='http://www.vi-hps.org/upload/packages/scorep/scorep-2.0.2.tar.gz')
- version('1.4.2', '3b9a042b13bdd5836452354e6567f71e',
- url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.4.2.tar.gz')
- version('1.3', '9db6f957b7f51fa01377a9537867a55c',
- url='http://www.vi-hps.org/upload/packages/scorep/scorep-1.3.tar.gz')
+ version('3.1', '065bf8eb08398e8146c895718ddb9145')
+ version('3.0', '44da8beaa3f71436a5f6fe51938aab2f')
+ version('2.0.2', '8f00e79e1b5b96e511c5ebecd10b2888')
+ version('1.4.2', '3b9a042b13bdd5836452354e6567f71e')
+ version('1.3', '9db6f957b7f51fa01377a9537867a55c')
+
+ patch('gcc7.patch')
##########
# Dependencies for SCORE-P are quite tight. See the homepage for more
# information.
+ # SCOREP 3
+ depends_on('otf2@2:', when='@3:')
+ depends_on('opari2@2:', when='@3:')
+ depends_on('cube@4.3:', when='@3:')
# SCOREP 2.0.2
depends_on('otf2@2.0', when='@2.0.2')
depends_on('opari2@2.0', when='@2.0.2')
@@ -60,20 +65,47 @@ class Scorep(Package):
depends_on("mpi")
depends_on("papi")
+ depends_on('pdt')
+
+ variant('shmem', default=False, description='Enable shmem tracing')
+
+ # Score-P requires a case-sensitive file system, and therefore
+ # does not work on macOS
+ # https://github.com/spack/spack/issues/1609
+ conflicts('platform=darwin')
+
+ def configure_args(self):
+ spec = self.spec
+
+ config_args = [
+ "--with-otf2=%s" % spec['otf2'].prefix.bin,
+ "--with-opari2=%s" % spec['opari2'].prefix.bin,
+ "--with-cube=%s" % spec['cube'].prefix.bin,
+ "--with-papi-header=%s" % spec['papi'].prefix.include,
+ "--with-papi-lib=%s" % spec['papi'].prefix.lib,
+ "--with-pdt=%s" % spec['pdt'].prefix.bin,
+ "--enable-shared"]
+
+ cname = spec.compiler.name
+ config_args.append('--with-nocross-compiler-suite={0}'.format(cname))
+
+ if spec.satisfies('^intel-mpi'):
+ config_args.append('--with-mpi=intel3')
+ elif spec.satisfies('^mpich') or spec.satisfies('^mvapich2'):
+ config_args.append('--with-mpi=mpich3')
+ elif spec.satisfies('^openmpi'):
+ config_args.append('--with-mpi=openmpi')
+
+ if '~shmem' in spec:
+ config_args.append("--without-shmem")
+
+ config_args.extend([
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ 'CXXFLAGS={0}'.format(self.compiler.pic_flag),
+ 'MPICC={0}'.format(spec['mpi'].mpicc),
+ 'MPICXX={0}'.format(spec['mpi'].mpicxx),
+ 'MPIF77={0}'.format(spec['mpi'].mpif77),
+ 'MPIFC={0}'.format(spec['mpi'].mpifc)
+ ])
- def install(self, spec, prefix):
- configure = Executable(join_path(self.stage.source_path, 'configure'))
- with working_dir('spack-build', create=True):
- configure_args = [
- "--prefix=%s" % prefix,
- "--with-otf2=%s" % spec['otf2'].prefix.bin,
- "--with-opari2=%s" % spec['opari2'].prefix.bin,
- "--with-cube=%s" % spec['cube'].prefix.bin,
- "--with-papi-header=%s" % spec['papi'].prefix.include,
- "--with-papi-lib=%s" % spec['papi'].prefix.lib,
- "--enable-shared",
- "CFLAGS=-fPIC",
- "CXXFLAGS=-fPIC"]
- configure(*configure_args)
- make()
- make("install")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/scotch/esmumps-ldflags-6.0.4.patch b/var/spack/repos/builtin/packages/scotch/esmumps-ldflags-6.0.4.patch
new file mode 100644
index 0000000000..e22ba17b34
--- /dev/null
+++ b/var/spack/repos/builtin/packages/scotch/esmumps-ldflags-6.0.4.patch
@@ -0,0 +1,11 @@
+--- a/src/esmumps/Makefile 2017-06-21 10:53:31.595758201 +0200
++++ b/src/esmumps/Makefile 2017-06-21 10:54:30.811757141 +0200
+@@ -44,7 +44,7 @@
+ $(CC) $(CFLAGS) $(CLIBFLAGS) -I$(includedir) -c $(<) -o $(@)
+
+ %$(EXE) : %.c
+- $(CC) $(CFLAGS) -I$(includedir) $(<) -o $(@) -L$(libdir) $(LDFLAGS) -L. -l$(ESMUMPSLIB) -l$(SCOTCHLIB) -lscotch -l$(SCOTCHLIB)errexit -lm
++ $(CC) $(CFLAGS) -I$(includedir) $(<) -o $(@) -L$(libdir) -L. -l$(ESMUMPSLIB) -l$(SCOTCHLIB) -lscotch -l$(SCOTCHLIB)errexit -lm $(LDFLAGS)
+
+ ##
+ ## Project rules.
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 ca8e3e3fa0..48ae1490c8 100644
--- a/var/spack/repos/builtin/packages/scotch/package.py
+++ b/var/spack/repos/builtin/packages/scotch/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,7 +22,6 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-import os
from spack import *
@@ -31,8 +30,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"
- base_url = "http://gforge.inria.fr/frs/download.php/latestfile/298"
+ url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_6.0.4.tar.gz"
list_url = "http://gforge.inria.fr/frs/?group_id=248"
version('6.0.4', 'd58b825eb95e1db77efe8c6ff42d329f')
@@ -50,24 +48,55 @@ 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')
+ # Does not build with flex 2.6.[23]
+ depends_on('flex@:2.6.1,2.6.4:', 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')
+ patch('esmumps-ldflags-6.0.4.patch', when='@6.0.4')
+
+ # NOTE: In cross-compiling environment parallel build
+ # produces weird linker errors.
+ parallel = False
+
# NOTE: Versions of Scotch up to version 6.0.0 don't include support for
# building with 'esmumps' in their default packages. In order to enable
# support for this feature, we must grab the 'esmumps' enabled archives
# from the Scotch hosting site. These alternative archives include a
# superset of the behavior in their default counterparts, so we choose to
# always grab these versions for older Scotch versions for simplicity.
- def url_for_version(self, version):
- return super(Scotch, self).url_for_version(version)
-
@when('@:6.0.0')
def url_for_version(self, version):
- return '%s/scotch_%s_esmumps.tar.gz' % (Scotch.base_url, version)
+ url = "http://gforge.inria.fr/frs/download.php/latestfile/298/scotch_{0}_esmumps.tar.gz"
+ return url.format(version)
+
+ @property
+ def libs(self):
+
+ shared = '+shared' in self.spec
+ libraries = ['libscotch', 'libscotcherr']
+ zlibs = []
+
+ if '+mpi' in self.spec:
+ libraries = ['libptscotch', 'libptscotcherr'] + libraries
+ if '+esmumps' in self.spec:
+ libraries = ['libptesmumps'] + libraries
+ elif '~mpi+esmumps' in self.spec:
+ libraries = ['libesmumps'] + libraries
+
+ scotchlibs = find_libraries(
+ libraries, root=self.prefix, recurse=True, shared=shared
+ )
+ if '+compression' in self.spec:
+ zlibs = self.spec['zlib'].libs
+
+ return scotchlibs + zlibs
def patch(self):
self.configure()
@@ -83,9 +112,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'
@@ -96,7 +129,9 @@ class Scotch(Package):
if self.spec.satisfies('platform=darwin'):
makefile_inc.extend([
'LIB = .dylib',
- 'CLIBFLAGS = -dynamiclib -fPIC',
+ 'CLIBFLAGS = -dynamiclib {0}'.format(
+ self.compiler.pic_flag
+ ),
'RANLIB = echo',
'AR = $(CC)',
'ARFLAGS = -dynamiclib $(LDFLAGS) -Wl,-install_name -Wl,%s/$(notdir $@) -undefined dynamic_lookup -o ' % prefix.lib # noqa
@@ -104,12 +139,12 @@ class Scotch(Package):
else:
makefile_inc.extend([
'LIB = .so',
- 'CLIBFLAGS = -shared -fPIC',
+ 'CLIBFLAGS = -shared {0}'.format(self.compiler.pic_flag),
'RANLIB = echo',
'AR = $(CC)',
'ARFLAGS = -shared $(LDFLAGS) -o'
])
- cflags.append('-fPIC')
+ cflags.append(self.compiler.pic_flag)
else:
makefile_inc.extend([
'LIB = .a',
@@ -137,12 +172,17 @@ class Scotch(Package):
if '+compression' in self.spec:
cflags.append('-DCOMMON_FILE_COMPRESS_GZ')
- ldflags.append('-L%s -lz' % (self.spec['zlib'].prefix.lib))
+ ldflags.append(' {0} '.format(self.spec['zlib'].libs.joined()))
cflags.append('-DCOMMON_PTHREAD')
+
+ # NOTE: bg-q platform needs -lpthread (and not -pthread)
+ # otherwise we get illegal instruction error during runtime
if self.spec.satisfies('platform=darwin'):
cflags.append('-DCOMMON_PTHREAD_BARRIER')
ldflags.append('-lm -pthread')
+ elif self.spec.satisfies('platform=bgq'):
+ ldflags.append('-lm -lrt -lpthread')
else:
ldflags.append('-lm -lrt -pthread')
@@ -150,8 +190,8 @@ class Scotch(Package):
# General Features #
- flex_path = os.path.join(self.spec['flex'].prefix.bin, 'flex')
- bison_path = os.path.join(self.spec['bison'].prefix.bin, 'bison')
+ flex_path = self.spec['flex'].command.path
+ bison_path = self.spec['bison'].command.path
makefile_inc.extend([
'EXE =',
'OBJ = .o',
@@ -217,4 +257,4 @@ class Scotch(Package):
install_tree('bin', prefix.bin)
install_tree('lib', prefix.lib)
install_tree('include', prefix.include)
- install_tree('man/man1', prefix.share_man1)
+ install_tree('man/man1', prefix.share.man.man1)
diff --git a/var/spack/repos/builtin/packages/scr/package.py b/var/spack/repos/builtin/packages/scr/package.py
index 2b01c60b3e..1f49f34969 100644
--- a/var/spack/repos/builtin/packages/scr/package.py
+++ b/var/spack/repos/builtin/packages/scr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,24 +24,123 @@
##############################################################################
from spack import *
+import os
+import shutil
-class Scr(Package):
+
+class Scr(CMakePackage):
"""SCR caches checkpoint data in storage on the compute nodes of a
Linux cluster to provide a fast, scalable checkpoint/restart
capability for MPI codes"""
- homepage = "https://computation.llnl.gov/project/scr/"
+ homepage = "http://computation.llnl.gov/projects/scalable-checkpoint-restart-for-mpi"
+
+ # NOTE: scr-v1.1.8 is built with autotools and is not properly build here.
+ # scr-v1.1.8 will be deprecated with the upcoming release of v1.2.0
+ # url = "https://github.com/LLNL/scr/releases/download/v1.1.8/scr-1.1.8.tar.gz"
+ # version('1.1.8', '6a0f11ad18e27fcfc00a271ff587b06e')
+
+ version('master', git='https://github.com/llnl/scr.git', branch='master')
+
+ depends_on('pdsh+static_modules', type=('build', 'run'))
+ depends_on('zlib')
+ depends_on('mpi')
+
+ variant('dtcmp', default=True,
+ description="Build with DTCMP. "
+ "Necessary to enable user directory naming at runtime")
+ depends_on('dtcmp', when="+dtcmp")
+
+ variant('libyogrt', default=True,
+ description="Build SCR with libyogrt for get_time_remaining.")
+ depends_on('libyogrt', when="+libyogrt")
+
+ # MySQL not yet in spack
+ # variant('mysql', default=True, decription="MySQL database for logging")
+ # depends_on('mysql', when="+mysql")
+
+ variant('scr_config', default='scr.conf',
+ description='Location for SCR to find its system config file. '
+ 'May be either absolute or relative to the install prefix')
+ variant('copy_config', default=None,
+ description='Location from which to copy SCR system config file. '
+ 'Must be an absolute path.')
+
+ variant('fortran', default=True,
+ description="Build SCR with fortran bindings")
+
+ variant('resource_manager', default='SLURM',
+ values=('SLURM', 'APRUN', 'PMIX', 'LSF', 'NONE'),
+ multi=False,
+ description="Resource manager for which to configure SCR.")
+
+ variant('async_api', default='NONE',
+ values=('NONE', 'CRAY_DW', 'IBM_BBAPI', 'INTEL_CPPR'),
+ multi=False,
+ description="Asynchronous data transfer API to use with SCR.")
+
+ variant('file_lock', default='FLOCK',
+ values=('FLOCK', 'FNCTL', 'NONE'),
+ multi=False,
+ description='File locking style for SCR.')
+
+ variant('cache_base', default='/tmp',
+ description='Compile time default location for checkpoint cache.')
+ variant('cntl_base', default='/tmp',
+ description='Compile time default location for control directory.')
+
+ def get_abs_path_rel_prefix(self, path):
+ # Return path if absolute, otherwise prepend prefix
+ if os.path.isabs(path):
+ return path
+ else:
+ return join_path(self.spec.prefix, path)
+
+ def cmake_args(self):
+ spec = self.spec
+ args = []
+
+ args.append('-DENABLE_FORTRAN={0}'.format('+fortran' in spec))
+
+ conf_path = self.get_abs_path_rel_prefix(
+ self.spec.variants['scr_config'].value)
+ args.append('-DCMAKE_SCR_CONFIG_FILE={0}'.format(conf_path))
+
+ # We uppercase the values for these to avoid unnecessary user error.
+ args.append('-DSCR_RESOURCE_MANAGER={0}'.format(
+ spec.variants['resource_manager'].value.upper()))
+
+ args.append('-DSCR_ASYNC_API={0}'.format(
+ spec.variants['async_api'].value.upper()))
+
+ args.append('-DSCR_FILE_LOCK={0}'.format(
+ spec.variants['file_lock'].value.upper()))
+
+ args.append('-DSCR_CACHE_BASE={0}'.format(
+ spec.variants['cache_base'].value))
+
+ args.append('-DSCR_CNTL_BASE={0}'.format(
+ spec.variants['cntl_base'].value))
+
+ args.append('-DWITH_PDSH_PREFIX={0}'.format(spec['pdsh'].prefix))
+
+ if "+dtcmp" in spec:
+ args.append('-DWITH_DTCMP_PREFIX={0}'.format(spec['dtcmp'].prefix))
+
+ if "+libyogrt" in spec:
+ args.append('-DWITH_YOGRT_PREFIX={0}'.format(
+ spec['libyogrt'].prefix))
- depends_on("mpi")
-# depends_on("dtcmp")
+ # if "+mysql" in spec:
+ # args.append('-DWITH_MYSQL_PREFIX={0}'.format(
+ # spec['mysql'].prefix))
- version('1.1-7', 'a5930e9ab27d1b7049447c2fd7734ebd',
- url='http://downloads.sourceforge.net/project/scalablecr/releases/scr-1.1-7.tar.gz')
- version('1.1.8', '6a0f11ad18e27fcfc00a271ff587b06e',
- url='https://github.com/hpc/scr/releases/download/v1.1.8/scr-1.1.8.tar.gz')
+ return args
- def install(self, spec, prefix):
- configure("--prefix=" + prefix,
- "--with-scr-config-file=" + prefix + "/etc/scr.conf")
- make()
- make("install")
+ @run_after('install')
+ def copy_config(self):
+ spec = self.spec
+ if spec.variants['copy_config'].value:
+ dest_path = self.get_abs_path_rel_prefix(
+ spec.variants['scr_config'].value)
+ shutil.copyfile(spec.variants['copy_config'].value, dest_path)
diff --git a/var/spack/repos/builtin/packages/screen/package.py b/var/spack/repos/builtin/packages/screen/package.py
index 7edfb44a4d..34bc952ec6 100644
--- a/var/spack/repos/builtin/packages/screen/package.py
+++ b/var/spack/repos/builtin/packages/screen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Screen(Package):
+class Screen(AutotoolsPackage):
"""Screen is a full-screen window manager that multiplexes a physical
terminal between several processes, typically interactive shells.
"""
@@ -51,8 +51,3 @@ class Screen(Package):
version('3.7.1', '27cdd29318446561ef7c966041cbd2c9')
depends_on('ncurses')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/scripts/package.py b/var/spack/repos/builtin/packages/scripts/package.py
index 7086cfd6fe..ddd184b44f 100644
--- a/var/spack/repos/builtin/packages/scripts/package.py
+++ b/var/spack/repos/builtin/packages/scripts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Scripts(Package):
+class Scripts(AutotoolsPackage):
"""Various X related scripts."""
homepage = "http://cgit.freedesktop.org/xorg/app/scripts"
@@ -37,9 +37,3 @@ class Scripts(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/scrnsaverproto/package.py b/var/spack/repos/builtin/packages/scrnsaverproto/package.py
index 3675fd0eff..71fe86abbc 100644
--- a/var/spack/repos/builtin/packages/scrnsaverproto/package.py
+++ b/var/spack/repos/builtin/packages/scrnsaverproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Scrnsaverproto(Package):
+class Scrnsaverproto(AutotoolsPackage):
"""MIT Screen Saver Extension.
This extension defines a protocol to control screensaver features
@@ -38,8 +38,3 @@ class Scrnsaverproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/sctk/package.py b/var/spack/repos/builtin/packages/sctk/package.py
new file mode 100644
index 0000000000..e64d2c79aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sctk/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+
+
+class Sctk(Package):
+ """The NIST Scoring Toolkit (SCTK) is a collection of software tools
+ designed to score benchmark test evaluations of Automatic Speech
+ Recognition (ASR) Systems. The toolkit is currently used by NIST,
+ benchmark test participants, and reserchers worldwide to as a
+ common scoring engine."""
+
+ homepage = "https://www.nist.gov/itl/iad/mig/tools"
+ url = "http://www.openslr.org/resources/4/sctk-2.4.10-20151007-1312Z.tar.bz2"
+
+ version('2.4.10', 'dd01ad49a33486a4754655d06177f646',
+ url='http://www.openslr.org/resources/4/sctk-2.4.10-20151007-1312Z.tar.bz2')
+ version('2.4.9', '8cdab2a1263fe103481e23776e2178a1',
+ url='http://www.openslr.org/resources/4/sctk-2.4.9-20141015-1634Z.tar.bz2')
+ version('2.4.8', '2385209185b584e28dc42ea2cd324478',
+ url='http://www.openslr.org/resources/4/sctk-2.4.8-20130429-2145.tar.bz2')
+ version('2.4.0', '77912e75304098ffcc6850ecf641d1a4',
+ url='http://www.openslr.org/resources/4/sctk-2.4.0-20091110-0958.tar.bz2')
+
+ def install(self, spec, prefix):
+ make('config')
+ make('all')
+ make('install')
+ mkdirp(prefix.bin)
+ copy_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sdl2-image/package.py b/var/spack/repos/builtin/packages/sdl2-image/package.py
index 5df207ac55..3986c59c1e 100644
--- a/var/spack/repos/builtin/packages/sdl2-image/package.py
+++ b/var/spack/repos/builtin/packages/sdl2-image/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Sdl2Image(Package):
+class Sdl2Image(AutotoolsPackage):
"""SDL is designed to provide the bare bones of creating a graphical
program. """
@@ -35,9 +35,3 @@ class Sdl2Image(Package):
version('2.0.1', 'd94b94555ba022fa249a53a021dc3606')
depends_on('sdl2')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/sdl2/package.py b/var/spack/repos/builtin/packages/sdl2/package.py
index 98f8861fed..272261f54c 100644
--- a/var/spack/repos/builtin/packages/sdl2/package.py
+++ b/var/spack/repos/builtin/packages/sdl2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Sdl2(Package):
+class Sdl2(CMakePackage):
"""Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and
graphics hardware via OpenGL and Direct3D."""
@@ -35,11 +35,4 @@ class Sdl2(Package):
version('2.0.5', 'd4055424d556b4a908aa76fad63abd3c')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('..', *std_cmake_args)
-
- make()
- make('install')
+ depends_on('cmake@2.8.5:', type='build')
diff --git a/var/spack/repos/builtin/packages/sed/package.py b/var/spack/repos/builtin/packages/sed/package.py
index f2a240e1b3..84c5c94ed9 100644
--- a/var/spack/repos/builtin/packages/sed/package.py
+++ b/var/spack/repos/builtin/packages/sed/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,9 @@
from spack import *
-class Sed(Package):
+class Sed(AutotoolsPackage):
"""GNU implementation of the famous stream editor."""
homepage = "http://www.gnu.org/software/sed/"
url = "http://ftpmirror.gnu.org/sed/sed-4.2.2.tar.bz2"
version('4.2.2', '7ffe1c7cdc3233e1e0c4b502df253974')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/seqprep/package.py b/var/spack/repos/builtin/packages/seqprep/package.py
new file mode 100644
index 0000000000..d4c75cc5fa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/seqprep/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Seqprep(MakefilePackage):
+ """SeqPrep is a program to merge paired end Illumina reads that are
+ overlapping into a single longer read."""
+
+ homepage = "https://github.com/jstjohn/SeqPrep"
+ url = "https://github.com/jstjohn/SeqPrep/archive/v1.3.2.tar.gz"
+
+ version('1.3.2', 'b6a4f5491dfdb0ce38bf791454151468')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('SeqPrep', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/seqtk/package.py b/var/spack/repos/builtin/packages/seqtk/package.py
index ca168c176c..6393d3e587 100644
--- a/var/spack/repos/builtin/packages/seqtk/package.py
+++ b/var/spack/repos/builtin/packages/seqtk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/serf/package.py b/var/spack/repos/builtin/packages/serf/package.py
index ebca74a3ab..5604b8b166 100644
--- a/var/spack/repos/builtin/packages/serf/package.py
+++ b/var/spack/repos/builtin/packages/serf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,31 +25,67 @@
from spack import *
-class Serf(Package):
+class Serf(SConsPackage):
"""Apache Serf - a high performance C-based HTTP client library
built upon the Apache Portable Runtime (APR) library"""
homepage = 'https://serf.apache.org/'
- url = 'https://archive.apache.org/dist/serf/serf-1.3.8.tar.bz2'
+ url = 'https://archive.apache.org/dist/serf/serf-1.3.9.tar.bz2'
+ version('1.3.9', '26015c63e3bbb108c1689bf2090e4c26351db674')
version('1.3.8', '1d45425ca324336ce2f4ae7d7b4cfbc5567c5446')
+ variant('debug', default=False,
+ description='Enable debugging info and strict compile warnings')
+
+ depends_on('scons@2.3.0:', type='build')
+
depends_on('apr')
depends_on('apr-util')
- depends_on('scons', type='build')
- depends_on('expat')
depends_on('openssl')
depends_on('zlib')
- def install(self, spec, prefix):
- options = ['PREFIX=%s' % prefix]
- options.append('APR=%s' % spec['apr'].prefix)
- options.append('APU=%s' % spec['apr-util'].prefix)
- options.append('OPENSSL=%s' % spec['openssl'].prefix)
- options.append('LINKFLAGS=-L%s/lib -L%s/lib' %
- (spec['expat'].prefix, spec['zlib'].prefix))
- options.append('CPPFLAGS=-I%s/include -I%s/include' %
- (spec['expat'].prefix, spec['zlib'].prefix))
-
- scons(*options)
- scons('install')
+ def build_args(self, spec, prefix):
+ args = [
+ 'PREFIX={0}'.format(prefix),
+ 'APR={0}'.format(spec['apr'].prefix),
+ 'APU={0}'.format(spec['apr-util'].prefix),
+ 'OPENSSL={0}'.format(spec['openssl'].prefix),
+ 'ZLIB={0}'.format(spec['zlib'].prefix),
+ ]
+
+ if '+debug' in spec:
+ args.append('DEBUG=yes')
+ else:
+ args.append('DEBUG=no')
+
+ # SCons doesn't pass Spack environment variables to the
+ # execution environment. Therefore, we can't use Spack's compiler
+ # wrappers. Use the actual compilers. SCons seems to RPATH things
+ # on its own anyway.
+ args.append('CC={0}'.format(self.compiler.cc))
+
+ return args
+
+ def test(self):
+ # FIXME: Several test failures:
+ #
+ # There were 14 failures:
+ # 1) test_ssl_trust_rootca
+ # 2) test_ssl_certificate_chain_with_anchor
+ # 3) test_ssl_certificate_chain_all_from_server
+ # 4) test_ssl_no_servercert_callback_allok
+ # 5) test_ssl_large_response
+ # 6) test_ssl_large_request
+ # 7) test_ssl_client_certificate
+ # 8) test_ssl_future_server_cert
+ # 9) test_setup_ssltunnel
+ # 10) test_ssltunnel_basic_auth
+ # 11) test_ssltunnel_basic_auth_server_has_keepalive_off
+ # 12) test_ssltunnel_basic_auth_proxy_has_keepalive_off
+ # 13) test_ssltunnel_basic_auth_proxy_close_conn_on_200resp
+ # 14) test_ssltunnel_digest_auth
+ #
+ # These seem to be related to:
+ # https://groups.google.com/forum/#!topic/serf-dev/YEFTTdF1Qwc
+ scons('check')
diff --git a/var/spack/repos/builtin/packages/sessreg/package.py b/var/spack/repos/builtin/packages/sessreg/package.py
index 2ab505cc7a..af3f001e70 100644
--- a/var/spack/repos/builtin/packages/sessreg/package.py
+++ b/var/spack/repos/builtin/packages/sessreg/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Sessreg(Package):
+class Sessreg(AutotoolsPackage):
"""Sessreg is a simple program for managing utmp/wtmp entries for X
sessions. It was originally written for use with xdm, but may also be
used with other display managers such as gdm or kdm."""
@@ -43,9 +43,3 @@ class Sessreg(Package):
kwargs = {'string': True}
filter_file('$(CPP) $(DEFS)', '$(CPP) -P $(DEFS)',
'man/Makefile.in', **kwargs)
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/setxkbmap/package.py b/var/spack/repos/builtin/packages/setxkbmap/package.py
index db365530c9..5a8a5ea345 100644
--- a/var/spack/repos/builtin/packages/setxkbmap/package.py
+++ b/var/spack/repos/builtin/packages/setxkbmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Setxkbmap(Package):
+class Setxkbmap(AutotoolsPackage):
"""setxkbmap is an X11 client to change the keymaps in the X server for a
specified keyboard to use the layout determined by the options listed
on the command line."""
@@ -40,9 +40,3 @@ class Setxkbmap(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/sga/package.py b/var/spack/repos/builtin/packages/sga/package.py
new file mode 100644
index 0000000000..2c38244675
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sga/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sga(AutotoolsPackage):
+ """SGA is a de novo genome assembler based on the concept of string graphs.
+ The major goal of SGA is to be very memory efficient, which is achieved
+ by using a compressed representation of DNA sequence reads."""
+
+ homepage = "https://www.msi.umn.edu/sw/sga"
+ url = "https://github.com/jts/sga/archive/v0.10.15.tar.gz"
+
+ version('0.10.15', '990aed1593f8072650c6366e5cf32519')
+ version('0.10.14', '211edb372898d6515dcde98d17078b7b')
+ version('0.10.13', 'd4f6aefc48c940dba96cc6513649ecdd')
+ version('0.10.12', '993bc165b4c77b75a5a2fe01c200c0da')
+ version('0.10.11', 'b649da5471209f50df2d53f0f2bfa0ed')
+ version('0.10.10', '494ff18d82b34cdaf8432b48b0356aae')
+ version('0.10.9', 'c2111bfd278d8faaab19732aec79fa78')
+ version('0.10.8', '4d75f836eaae6018d993a0b75326014a')
+ version('0.10.3', 'b12d35b24ca8a63c4dcc9f5d7e7c4133')
+
+ depends_on('zlib')
+ depends_on('sparsehash')
+ depends_on('jemalloc')
+ depends_on('bamtools')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+
+ configure_directory = 'src'
+
+ def configure_args(self):
+ return [
+ '--with-sparsehash={0}'.format(self.spec['sparsehash'].prefix),
+ '--with-bamtools={0}'.format(self.spec['bamtools'].prefix),
+ '--with-jemalloc={0}'.format(self.spec['jemalloc'].prefix)
+ ]
diff --git a/var/spack/repos/builtin/packages/shapeit/package.py b/var/spack/repos/builtin/packages/shapeit/package.py
new file mode 100644
index 0000000000..4f0295cca1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/shapeit/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Shapeit(Package):
+ """SHAPEIT is a fast and accurate method for estimation of haplotypes (aka
+ phasing) from genotype or sequencing data."""
+
+ homepage = "https://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.html"
+ url = "https://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.v2.r837.GLIBCv2.12.Linux.dynamic.tgz"
+
+ version('2.837', '895873bb655a0a985cbfd870fdd1dd60')
+
+ def url_for_version(self, version):
+ url = 'https://mathgen.stats.ox.ac.uk/genetics_software/shapeit/shapeit.v{0}.r{1}.GLIBCv2.12.Linux.dynamic.tgz'
+ return url.format(version[0], version[1])
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('bin'):
+ install('shapeit', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/shared-mime-info/package.py b/var/spack/repos/builtin/packages/shared-mime-info/package.py
new file mode 100644
index 0000000000..80880eebc1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/shared-mime-info/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class SharedMimeInfo(AutotoolsPackage):
+ """Database of common MIME types."""
+
+ homepage = "https://freedesktop.org/wiki/Software/shared-mime-info"
+ url = "http://freedesktop.org/~hadess/shared-mime-info-1.8.tar.xz"
+
+ version('1.8', 'f6dcadce764605552fc956563efa058c')
+
+ parallel = False
+
+ depends_on('glib')
+ depends_on('libxml2')
+ depends_on('intltool', type='build')
+ depends_on('gettext', type='build')
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ spack_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
+ run_env.prepend_path("XDG_DATA_DIRS",
+ self.prefix.share)
diff --git a/var/spack/repos/builtin/packages/shiny-server/package.py b/var/spack/repos/builtin/packages/shiny-server/package.py
new file mode 100644
index 0000000000..2edd966825
--- /dev/null
+++ b/var/spack/repos/builtin/packages/shiny-server/package.py
@@ -0,0 +1,75 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class ShinyServer(CMakePackage):
+ """Shiny server lets you put shiny web applications and interactive
+ documents online. Take your shiny apps and share them with your
+ organization or the world."""
+
+ #
+ # HEADS UP:
+ # 1. The shiny server installation step will download various node
+ # and npm bits from the net. They seem to have them well
+ # constrained ("npm shrinkwrap"?), but this package is not
+ # "air gappable".
+ # 2. Docs say that it requires 'gcc'. depends_on() won't do the
+ # right thing, it's Up To You.
+ #
+ homepage = "https://www.rstudio.com/products/shiny/shiny-server/"
+ url = "https://github.com/rstudio/shiny-server/archive/v1.5.3.838.tar.gz"
+
+ version('1.5.3.838', '96f20fdcdd94c9e9bb851baccb82b97f')
+
+ depends_on('python@:2.8') # docs say: "Really. 3.x will not work"
+ depends_on('cmake@2.8.10:')
+ depends_on('git')
+ depends_on('r+X')
+ depends_on('openssl')
+
+ def cmake_args(self):
+ spec = self.spec
+ options = []
+
+ options.append("-DPYTHON=%s" % spec['python'].command.path)
+
+ return options
+
+ # Recompile the npm modules included in the project
+ @run_after('build')
+ def build_node(self):
+ bash = which('bash')
+ mkdirp('build')
+ bash('-c', 'bin/npm --python="$PYTHON" install')
+ bash('-c', 'bin/node ./ext/node/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js --python="$PYTHON" rebuild') # noqa: E501
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH',
+ join_path(self.prefix, 'shiny-server', 'bin'))
+ # shiny comes with its own pandoc; hook it up...
+ run_env.prepend_path('PATH',
+ join_path(self.prefix, 'shiny-server',
+ 'ext', 'pandoc', 'static'))
diff --git a/var/spack/repos/builtin/packages/shortstack/package.py b/var/spack/repos/builtin/packages/shortstack/package.py
new file mode 100644
index 0000000000..75d363e185
--- /dev/null
+++ b/var/spack/repos/builtin/packages/shortstack/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Shortstack(Package):
+ """ShortStack is a tool developed to process and analyze smallRNA-seq data
+ with respect to a reference genome, and output a comprehensive and
+ informative annotation of all discovered small RNA genes."""
+
+ homepage = "http://sites.psu.edu/axtell/software/shortstack/"
+ url = "https://github.com/MikeAxtell/ShortStack/archive/v3.8.3.tar.gz"
+
+ version('3.8.3', '3f21f494f799039f3fa88ea343f2d20d')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('samtools')
+ depends_on('viennarna')
+ depends_on('bowtie')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('ShortStack', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/showfont/package.py b/var/spack/repos/builtin/packages/showfont/package.py
index 232988193b..769c77f076 100644
--- a/var/spack/repos/builtin/packages/showfont/package.py
+++ b/var/spack/repos/builtin/packages/showfont/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Showfont(Package):
+class Showfont(AutotoolsPackage):
"""showfont displays data about a font from an X font server.
The information shown includes font information, font properties,
character metrics, and character bitmaps."""
@@ -39,9 +39,3 @@ class Showfont(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/sickle/package.py b/var/spack/repos/builtin/packages/sickle/package.py
new file mode 100644
index 0000000000..248f1ef3b9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sickle/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sickle(MakefilePackage):
+ """Sickle is a tool that uses sliding windows along with quality and
+ length thresholds to determine when quality is sufficiently low to trim
+ the 3'-end of reads and also determines when the quality is
+ sufficiently high enough to trim the 5'-end of reads."""
+
+ homepage = "https://github.com/najoshi/sickle"
+ url = "https://github.com/najoshi/sickle/archive/v1.33.tar.gz"
+
+ version('1.33', '9e2ba812183e1515198c9e15c4cd2cd7')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('sickle', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/signalp/package.py b/var/spack/repos/builtin/packages/signalp/package.py
new file mode 100644
index 0000000000..95197badfc
--- /dev/null
+++ b/var/spack/repos/builtin/packages/signalp/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Signalp(Package):
+ """SignalP predicts the presence and location of signal peptide cleavage
+ sites in amino acid sequences from different organisms: Gram-positive
+ bacteria, Gram-negative bacteria, and eukaryotes.
+ Note: A manual download is required for SignalP.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "http://www.cbs.dtu.dk/services/SignalP/"
+ url = "file://{0}/signalp-4.1f.Linux.tar.gz".format(os.getcwd())
+
+ version('4.1f', 'a9aeb66259202649c959846f3f4d9744')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('gnuplot')
+
+ def patch(self):
+ edit = FileFilter('signalp')
+ edit.filter("ENV{SIGNALP} = .*",
+ "ENV{SIGNALP} = '%s'" % self.prefix)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.share.man)
+ install('signalp', prefix)
+ install('signalp.1', prefix.share.man)
+ install_tree('bin', prefix.bin)
+ install_tree('lib', prefix.lib)
+ install_tree('syn', prefix.syn)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', prefix)
diff --git a/var/spack/repos/builtin/packages/silo/package.py b/var/spack/repos/builtin/packages/silo/package.py
index 691d53a9f1..763fc66383 100644
--- a/var/spack/repos/builtin/packages/silo/package.py
+++ b/var/spack/repos/builtin/packages/silo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -30,7 +30,7 @@ class Silo(Package):
data to binary, disk files."""
homepage = "http://wci.llnl.gov/simulation/computer-codes/silo"
- base_url = "https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo"
+ url = "https://wci.llnl.gov/content/assets/docs/simulation/computer-codes/silo/silo-4.10.2/silo-4.10.2.tar.gz"
version('4.10.2', '9ceac777a2f2469ac8cef40f4fab49c8')
version('4.9', 'a83eda4f06761a86726e918fc55e782a')
@@ -40,11 +40,14 @@ class Silo(Package):
variant('shared', default=True, description='Build shared libraries')
variant('silex', default=False,
description='Builds Silex, a GUI for viewing Silo files')
+ variant('pic', default=True,
+ description='Produce position-independent code (for shared libs)')
- # silo uses the obsolete function H5Pset_fapl_mpiposix:
- depends_on("hdf5 @:1.8.12")
+ depends_on('hdf5')
depends_on('qt', when='+silex')
+ patch('remove-mpiposix.patch', when='@4.8:4.10.2')
+
def install(self, spec, prefix):
config_args = [
'--enable-fortran' if '+fortran' in spec else '--disable-fortran',
@@ -55,6 +58,12 @@ class Silo(Package):
if '+silex' in spec:
config_args.append('--with-Qt-dir=%s' % spec['qt'].prefix)
+ if '+pic' in spec:
+ config_args += [
+ 'CFLAGS={0}'.format(self.compiler.pic_flag),
+ 'CXXFLAGS={0}'.format(self.compiler.pic_flag),
+ 'FCFLAGS={0}'.format(self.compiler.pic_flag)]
+
configure(
'--prefix=%s' % prefix,
'--with-hdf5=%s,%s' % (spec['hdf5'].prefix.include,
@@ -66,6 +75,3 @@ class Silo(Package):
make()
make('install')
-
- def url_for_version(self, version):
- return '%s/silo-%s/silo-%s.tar.gz' % (Silo.base_url, version, version)
diff --git a/var/spack/repos/builtin/packages/silo/remove-mpiposix.patch b/var/spack/repos/builtin/packages/silo/remove-mpiposix.patch
new file mode 100644
index 0000000000..1c6449f0c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/silo/remove-mpiposix.patch
@@ -0,0 +1,40 @@
+Index: silo-llnl-4.9.1/src/hdf5_drv/silo_hdf5.c
+===================================================================
+--- silo-llnl-4.9.1.orig/src/hdf5_drv/silo_hdf5.c
++++ silo-llnl-4.9.1/src/hdf5_drv/silo_hdf5.c
+@@ -4717,16 +4717,7 @@ db_hdf5_process_file_options(opts_set_id
+
+ /* default HDF5 mpi drivers */
+ case DB_FILE_OPTS_H5_DEFAULT_MPIP:
+- {
+-#ifdef H5_HAVE_PARALLEL
+- h5status |= H5Pset_fapl_mpiposix(retval, MPI_COMM_SELF, TRUE);
+-#else
+- H5Pclose(retval);
+- return db_perror("HDF5 MPI VFD", E_NOTENABLEDINBUILD, me);
+-#endif
+- break;
+- }
+-
++ /* FALLTHROUGH */
+ case DB_FILE_OPTS_H5_DEFAULT_MPIO:
+ {
+ #ifdef H5_HAVE_PARALLEL
+@@ -4963,15 +4954,8 @@ db_hdf5_process_file_options(opts_set_id
+ if (p = DBGetOption(opts, DBOPT_H5_MPIP_NO_GPFS_HINTS))
+ use_gpfs_hints = FALSE;
+
+- if (vfd == DB_H5VFD_MPIO)
+- {
+- h5status |= H5Pset_fapl_mpio(retval, mpi_comm, mpi_info);
+- if (created_info) MPI_Info_free(&mpi_info);
+- }
+- else
+- {
+- h5status |= H5Pset_fapl_mpiposix(retval, mpi_comm, use_gpfs_hints);
+- }
++ h5status |= H5Pset_fapl_mpio(retval, mpi_comm, mpi_info);
++ if (created_info) MPI_Info_free(&mpi_info);
+ #else
+ H5Pclose(retval);
+ return db_perror("HDF5 MPI VFD", E_NOTENABLEDINBUILD, me);
diff --git a/var/spack/repos/builtin/packages/simplemoc/package.py b/var/spack/repos/builtin/packages/simplemoc/package.py
new file mode 100644
index 0000000000..8f6759b019
--- /dev/null
+++ b/var/spack/repos/builtin/packages/simplemoc/package.py
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Simplemoc(MakefilePackage):
+ """The purpose of this mini-app is to demonstrate the performance
+ characterterics and viability of the Method of Characteristics (MOC)
+ for 3D neutron transport calculations in the context of full scale
+ light water reactor simulation."""
+
+ homepage = "https://github.com/ANL-CESAR/SimpleMOC/"
+ url = "https://github.com/ANL-CESAR/SimpleMOC/archive/master.tar.gz"
+
+ version('1.0', 'd8827221a4ae76e9766a32e16d143e60')
+
+ tags = ['proxy-app']
+
+ variant('mpi', default=True, description='Build with MPI support')
+
+ depends_on('mpi', when='+mpi')
+
+ build_directory = 'src'
+
+ @property
+ def build_targets(self):
+
+ targets = []
+
+ cflags = '-std=gnu99'
+ ldflags = '-lm'
+
+ if self.compiler.name == 'gcc' or self.compiler.name == 'intel':
+ cflags += ' ' + self.compiler.openmp_flag
+ if '+mpi' in self.spec:
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+
+ targets.append('CFLAGS={0}'.format(cflags))
+ targets.append('LDFLAGS={0}'.format(ldflags))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('src/SimpleMOC', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/simul/package.py b/var/spack/repos/builtin/packages/simul/package.py
new file mode 100644
index 0000000000..7ef8720dc9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/simul/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Simul(Package):
+ """simul is an MPI coordinated test of parallel
+ filesystem system calls and library functions. """
+
+ homepage = "https://github.com/LLNL/simul"
+ url = "https://github.com/LLNL/simul/archive/1.16.tar.gz"
+
+ version('1.16', 'd616c1046a170c1e1b7956c402d23a95')
+ version('1.15', 'a5744673c094a87c05c6f0799d1f496f')
+ version('1.14', 'f8c14f0bac15741e2af354e3f9a0e30f')
+ version('1.13', '8a80a62d569557715d6c9c326e39a8ef')
+
+ depends_on('mpi')
+
+ def install(self, spec, prefix):
+ filter_file('mpicc', '$(MPICC)', 'Makefile', string=True)
+ filter_file('inline void', 'void', 'simul.c', string=True)
+ make('simul')
+ mkdirp(prefix.bin)
+ install('simul', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/simulationio/package.py b/var/spack/repos/builtin/packages/simulationio/package.py
new file mode 100644
index 0000000000..b027f49584
--- /dev/null
+++ b/var/spack/repos/builtin/packages/simulationio/package.py
@@ -0,0 +1,63 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Simulationio(CMakePackage):
+ """SimulationIO: Efficient and convenient I/O for large PDE simulations"""
+ homepage = "https://github.com/eschnett/SimulationIO"
+ url = "https://github.com/eschnett/SimulationIO/archive/version/0.1.0.tar.gz"
+
+ version('1.0.0', '5cbf1d0084eb436d861ffcdd297eaa08')
+ version('0.1.0', '00f7dabc08ed1ab77858785ce0809f50')
+ version('develop',
+ git='https://github.com/eschnett/SimulationIO.git', branch='master')
+
+ variant('julia', default=False)
+ variant('python', default=True)
+
+ variant('pic', default=True,
+ description="Produce position-independent code")
+
+ depends_on('hdf5 +cxx @:1.10.0-patch1')
+ depends_on('julia', when='+julia', type=('build', 'run'))
+ depends_on('py-h5py', when='+python', type=('build', 'run'))
+ depends_on('py-numpy', when='+python', type=('build', 'run'))
+ depends_on('python@2.7:2.8', when='+python', type=('build', 'run'))
+ depends_on('swig', type='build')
+
+ extends('python')
+
+ def cmake_args(self):
+ spec = self.spec
+ options = []
+ if '+pic' in spec:
+ options.append("-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true")
+ return options
+
+ def check(self):
+ with working_dir(self.build_directory):
+ make("test", "CTEST_OUTPUT_ON_FAILURE=1")
diff --git a/var/spack/repos/builtin/packages/singularity/package.py b/var/spack/repos/builtin/packages/singularity/package.py
new file mode 100644
index 0000000000..810a811d39
--- /dev/null
+++ b/var/spack/repos/builtin/packages/singularity/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Singularity(AutotoolsPackage):
+ """Singularity is a container platform focused on supporting 'Mobility of
+ Compute'"""
+
+ homepage = "http://singularity.lbl.gov/"
+ url = "https://github.com/singularityware/singularity/archive/2.4.tar.gz"
+
+ version('2.4', 'd357ce68ef2f8149edd84155731531465dbe74148c37719f87f168fc39384377')
+ version('2.3.1', '292ff7fe3db09c854b8accf42f763f62')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
diff --git a/var/spack/repos/builtin/packages/slepc/package.py b/var/spack/repos/builtin/packages/slepc/package.py
index 17c512119c..ac8df77d50 100644
--- a/var/spack/repos/builtin/packages/slepc/package.py
+++ b/var/spack/repos/builtin/packages/slepc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,24 +32,33 @@ class Slepc(Package):
"""
homepage = "http://www.grycap.upv.es/slepc"
- url = "http://slepc.upv.es/download/download.php?filename=slepc-3.6.2.tar.gz"
+ url = "http://slepc.upv.es/download/distrib/slepc-3.6.2.tar.gz"
+ version('3.8.0', 'c58ccc4e852d1da01112466c48efa41f0839649f3a265925788237d76cd3d963')
+ version('3.7.4', '2fb782844e3bc265a8d181c3c3e2632a4ca073111c874c654f1365d33ca2eb8a')
version('3.7.3', '3ef9bcc645a10c1779d56b3500472ceb66df692e389d635087d30e7c46424df9')
version('3.7.1', '670216f263e3074b21e0623c01bc0f562fdc0bffcd7bd42dd5d8edbe73a532c2')
version('3.6.3', '384939d009546db37bc05ed81260c8b5ba451093bf891391d32eb7109ccff876')
version('3.6.2', '2ab4311bed26ccf7771818665991b2ea3a9b15f97e29fd13911ab1293e8e65df')
+ version('develop', git='https://bitbucket.org/slepc/slepc.git')
variant('arpack', default=True, description='Enables Arpack wrappers')
# NOTE: make sure PETSc and SLEPc use the same python.
- depends_on('python@2.6:2.7', type='build')
- depends_on('petsc@3.7:', when='@3.7.1:')
+ depends_on('python@2.6:2.8', type='build')
+ # Cannot mix release and development versions of SLEPc and PETSc:
+ depends_on('petsc@develop', when='@develop')
+ depends_on('petsc@3.8:3.8.99', when='@3.8:3.8.99')
+ depends_on('petsc@3.7:3.7.7', when='@3.7.1:3.7.4')
depends_on('petsc@3.6.3:3.6.4', when='@3.6.2:3.6.3')
- depends_on('arpack-ng~mpi', when='+arpack^petsc~mpi')
- depends_on('arpack-ng+mpi', when='+arpack^petsc+mpi')
+ depends_on('arpack-ng~mpi', when='+arpack^petsc~mpi~int64')
+ depends_on('arpack-ng+mpi', when='+arpack^petsc+mpi~int64')
patch('install_name_371.patch', when='@3.7.1')
+ # Arpack can not be used with 64bit integers.
+ conflicts('+arpack', when='^petsc+int64')
+
def install(self, spec, prefix):
# set SLEPC_DIR for installation
# Note that one should set the current (temporary) directory instead
diff --git a/var/spack/repos/builtin/packages/slurm/package.py b/var/spack/repos/builtin/packages/slurm/package.py
new file mode 100644
index 0000000000..ac0d6f2610
--- /dev/null
+++ b/var/spack/repos/builtin/packages/slurm/package.py
@@ -0,0 +1,109 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Slurm(AutotoolsPackage):
+ """Slurm is an open source, fault-tolerant, and highly scalable cluster
+ management and job scheduling system for large and small Linux clusters.
+
+ Slurm requires no kernel modifications for its operation and is relatively
+ self-contained. As a cluster workload manager, Slurm has three key
+ functions. First, it allocates exclusive and/or non-exclusive access to
+ resources (compute nodes) to users for some duration of time so they can
+ perform work. Second, it provides a framework for starting, executing,
+ and monitoring work (normally a parallel job) on the set of allocated
+ nodes. Finally, it arbitrates contention for resources by managing a
+ queue of pending work.
+ """
+
+ homepage = 'https://slurm.schedmd.com'
+ url = 'https://github.com/SchedMD/slurm/archive/slurm-17-02-6-1.tar.gz'
+
+ version('17-02-6-1', '8edbb9ad41819464350d9de013367020')
+
+ variant('gtk', default=False, description='Enable GTK+ support')
+ variant('mariadb', default=False, description='Use MariaDB instead of MySQL')
+
+ variant('hwloc', default=False, description='Enable hwloc support')
+ variant('hdf5', default=False, description='Enable hdf5 support')
+ variant('readline', default=True, description='Enable readline support')
+
+ # TODO: add variant for BG/Q and Cray support
+
+ # TODO: add support for checkpoint/restart (BLCR)
+
+ # TODO: add support for lua
+
+ depends_on('curl')
+ depends_on('glib')
+ depends_on('json-c')
+ depends_on('lz4')
+ depends_on('munge')
+ depends_on('openssl')
+ depends_on('pkg-config', type='build')
+ depends_on('readline')
+ depends_on('zlib')
+
+ depends_on('gtkplus+X', when='+gtk')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('hwloc', when='+hwloc')
+ depends_on('mariadb', when='+mariadb')
+
+ def configure_args(self):
+
+ spec = self.spec
+
+ args = [
+ '--with-libcurl={0}'.format(spec['curl'].prefix),
+ '--with-json={0}'.format(spec['json-c'].prefix),
+ '--with-lz4={0}'.format(spec['lz4'].prefix),
+ '--with-munge={0}'.format(spec['munge'].prefix),
+ '--with-ssl={0}'.format(spec['openssl'].prefix),
+ '--with-zlib={0}'.format(spec['zlib'].prefix),
+ ]
+
+ if '~gtk' in spec:
+ args.append('--disable-gtktest')
+
+ if '+readline' in spec:
+ args.append('--with-readline={0}'.format(spec['readline'].prefix))
+ else:
+ args.append('--without-readline')
+
+ if '+hdf5' in spec:
+ args.append(
+ '--with-hdf5={0}'.format(spec['hdf5'].prefix.bin.h5cc)
+ )
+ else:
+ args.append('--without-hdf5')
+
+ if '+hwloc' in spec:
+ args.append('--with-hwloc={0}'.format(spec['hwloc'].prefix))
+ else:
+ args.append('--without-hwloc')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/smalt/package.py b/var/spack/repos/builtin/packages/smalt/package.py
new file mode 100644
index 0000000000..4c65afe20d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/smalt/package.py
@@ -0,0 +1,34 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Smalt(AutotoolsPackage):
+ """SMALT aligns DNA sequencing reads with a reference genome."""
+
+ homepage = "http://www.sanger.ac.uk/science/tools/smalt-0"
+ url = "https://downloads.sourceforge.net/project/smalt/smalt-0.7.6.tar.gz"
+
+ version('0.7.6', 'c3215d70ba960c8fdc8e80191695c60b')
diff --git a/var/spack/repos/builtin/packages/smc/package.py b/var/spack/repos/builtin/packages/smc/package.py
new file mode 100644
index 0000000000..353e5f46b9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/smc/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Smc(MakefilePackage):
+ """A minimalist high-order finite difference algorithm
+ for combustion problems. It includes core discretizations
+ for advection, diffusive transport and chemical kinetics.
+ The models for computing diffusive transport coefficients
+ have been replaced by a simplified approximation
+ but the full structure of the discretization of
+ the diffusive terms have been preserved."""
+
+ homepage = "https://ccse.lbl.gov/ExaCT/index.html"
+ url = "https://ccse.lbl.gov/ExaCT/SMC.tar.gz"
+ tags = ['proxy-app']
+
+ version('master', '94a4ea94abbc5e61397c2a4d1fb56ed6')
+
+ variant(
+ 'mpi', default=True,
+ description='Build with MPI support')
+ variant(
+ 'openmp', default=True,
+ description='Build with OpenMP support')
+ variant(
+ 'debug', default=False,
+ description='Build with debugging')
+# variant(
+# 'mic', default=False,
+# description='Compile for Intel Xeon Phi')
+ variant(
+ 'k_use_automatic', default=True,
+ description='Some arrays in kernels.F90 will be automatic')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('gmake', type='build')
+
+ def edit(self, spec, prefix):
+ makefile = FileFilter('GNUmakefile')
+ if '~mpi' in spec:
+ makefile.filter('MPI := t', '#')
+ if '~openmp' in spec:
+ makefile.filter('OMP := t', '#')
+ if '+debug' in spec:
+ makefile.filter('NDEBUG :=', '#')
+ if '~k_use_automatic' in spec:
+ makefile.filter('K_U.*:= t', '#')
+ if self.compiler.name == 'intel':
+ makefile.filter('COMP := .*', 'COMP := Intel')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ files = glob.glob(join_path(self.build_directory, '*.exe'))
+ for f in files:
+ install(f, prefix.bin)
+ install('inputs_SMC', prefix.bin)
+ install('README', prefix)
+ install('BoxLib.license.txt', prefix)
diff --git a/var/spack/repos/builtin/packages/smproxy/package.py b/var/spack/repos/builtin/packages/smproxy/package.py
index 5bdde800d4..571b25d4b6 100644
--- a/var/spack/repos/builtin/packages/smproxy/package.py
+++ b/var/spack/repos/builtin/packages/smproxy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Smproxy(Package):
+class Smproxy(AutotoolsPackage):
"""smproxy allows X applications that do not support X11R6 session
management to participate in an X11R6 session."""
@@ -41,9 +41,3 @@ class Smproxy(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/snakemake/package.py b/var/spack/repos/builtin/packages/snakemake/package.py
new file mode 100644
index 0000000000..d97dc47442
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snakemake/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Snakemake(PythonPackage):
+ """Snakemake is an MIT-licensed workflow management system."""
+
+ homepage = "https://snakemake.readthedocs.io/en/stable/"
+ url = "https://pypi.io/packages/source/s/snakemake/snakemake-3.11.2.tar.gz"
+
+ version('3.11.2', '6bf834526078522b38d271fdf73e6b22')
+
+ depends_on('python@3.3:')
+ depends_on('py-requests', type=('build', 'run'))
+ depends_on('py-setuptools', type=('build', 'run'))
+ depends_on('py-wrapt', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/snap-berkeley/package.py b/var/spack/repos/builtin/packages/snap-berkeley/package.py
new file mode 100644
index 0000000000..a6b1e08c47
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snap-berkeley/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class SnapBerkeley(MakefilePackage):
+ """SNAP is a fast and accurate aligner for short DNA reads. It is
+ optimized for modern read lengths of 100 bases or higher, and takes
+ advantage of these reads to align data quickly through a hash-based
+ indexing scheme."""
+
+ homepage = "http://snap.cs.berkeley.edu/"
+ url = "https://github.com/amplab/snap/archive/v1.0beta.18.tar.gz"
+
+ version('1.0beta.18', '41e595fffa482e9eda1c3f69fb5dedeb')
+ version('0.15', 'a7d87cc822f052665a347ab0aa84d4de', preferred=True)
+
+ depends_on('zlib')
+
+ conflicts('%gcc@6:')
+ conflicts('%cce')
+ conflicts('%clang')
+ conflicts('%intel')
+ conflicts('%nag')
+ conflicts('%pgi')
+ conflicts('%xl')
+ conflicts('%xl_r')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ if self.spec.satisfies('@1.0beta.18:'):
+ install('snap-aligner', prefix.bin)
+ install('SNAPCommand', prefix.bin)
+ else:
+ install('snap', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/snap-korf/package.py b/var/spack/repos/builtin/packages/snap-korf/package.py
new file mode 100644
index 0000000000..68fb4c61ae
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snap-korf/package.py
@@ -0,0 +1,62 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class SnapKorf(MakefilePackage):
+ """SNAP is a general purpose gene finding program suitable for both
+ eukaryotic and prokaryotic genomes."""
+
+ homepage = "http://korflab.ucdavis.edu/software.html"
+ url = "http://korflab.ucdavis.edu/Software/snap-2013-11-29.tar.gz"
+
+ version('2013-11-29', 'dfdf48e37cdb32af4eecd9201506b6e3')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('boost')
+ depends_on('sqlite')
+ depends_on('sparsehash')
+
+ conflicts('%gcc@5:', when='@2013-11-29')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+
+ progs = ['snap', 'fathom', 'forge', 'depend', 'exonpairs', 'hmm-info']
+ for p in progs:
+ install(p, prefix.bin)
+
+ files = glob.iglob('*.pl')
+ for file in files:
+ install(file, prefix.bin)
+
+ install_tree('Zoe', prefix.Zoe)
+ install_tree('HMM', prefix.HMM)
+ install_tree('DNA', prefix.DNA)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('ZOE', self.prefix)
+ run_env.prepend_path('PATH', self.prefix)
diff --git a/var/spack/repos/builtin/packages/snap/package.py b/var/spack/repos/builtin/packages/snap/package.py
new file mode 100644
index 0000000000..7bc88b812f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snap/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Snap(MakefilePackage):
+ """SNAP serves as a proxy application to model
+ the performance of a modern discrete ordinates
+ neutral particle transport application.
+ SNAP may be considered an update to Sweep3D,
+ intended for hybrid computing architectures.
+ It is modeled off the Los Alamos National Laboratory code PARTISN."""
+
+ homepage = "https://github.com/lanl/SNAP"
+ url = ""
+ tags = ['proxy-app']
+
+ version('master', git='https://github.com/lanl/SNAP.git')
+
+ variant('openmp', default=False, description='Build with OpenMP support')
+ variant('opt', default=True, description='Build with debugging')
+ variant('mpi', default=True, description='Build with MPI support')
+
+ depends_on('mpi', when='+mpi')
+
+ build_directory = 'src'
+
+ def edit(self, spec, prefix):
+ with working_dir(self.build_directory):
+ makefile = FileFilter('Makefile')
+ if '~opt' in spec:
+ makefile.filter('OPT = yes', 'OPT = no')
+ if '~mpi' in spec:
+ makefile.filter('MPI = yes', 'MPI = no')
+ if '~openmp' in spec:
+ makefile.filter('OPENMP = yes', 'OPENMP = no')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('src/gsnap', prefix.bin)
+ install_tree('qasnap', prefix.qasnap)
+ install('README.md', prefix)
diff --git a/var/spack/repos/builtin/packages/snappy/package.py b/var/spack/repos/builtin/packages/snappy/package.py
index 1e94980c92..a023b2ee95 100644
--- a/var/spack/repos/builtin/packages/snappy/package.py
+++ b/var/spack/repos/builtin/packages/snappy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,40 @@
from spack import *
-class Snappy(Package):
+class Snappy(CMakePackage):
"""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"
+ homepage = "https://github.com/google/snappy"
+ url = "https://github.com/google/snappy/archive/1.1.7.tar.gz"
- version('1.1.3', '7358c82f133dc77798e4c2062a749b73')
+ version('1.1.7', 'ee9086291c9ae8deb4dac5e0b85bf54a')
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
+ variant('shared', default=True, description='Build shared libraries')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ args = [
+ '-DCMAKE_INSTALL_LIBDIR:PATH={0}'.format(
+ self.prefix.lib),
+ '-DBUILD_SHARED_LIBS:BOOL={0}'.format(
+ 'ON' if '+shared' in spec else 'OFF')
+ ]
+
+ return args
+
+ @run_after('install')
+ def install_pkgconfig(self):
+ mkdirp(self.prefix.lib.pkgconfig)
+
+ with open(join_path(self.prefix.lib.pkgconfig, 'snappy.pc'), 'w') as f:
+ f.write('prefix={0}\n'.format(self.prefix))
+ f.write('exec_prefix=${prefix}\n')
+ f.write('libdir={0}\n'.format(self.prefix.lib))
+ f.write('includedir={0}\n'.format(self.prefix.include))
+ f.write('\n')
+ f.write('Name: Snappy\n')
+ f.write('Description: A fast compressor/decompressor.\n')
+ f.write('Version: {0}\n'.format(self.spec.version))
+ f.write('Cflags: -I${includedir}\n')
+ f.write('Libs: -L${libdir} -lsnappy\n')
diff --git a/var/spack/repos/builtin/packages/snbone/package.py b/var/spack/repos/builtin/packages/snbone/package.py
new file mode 100644
index 0000000000..eb493d9a16
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snbone/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Snbone(MakefilePackage):
+ """This application targets the primary computational solve burden of a SN,
+ continuous finite element based transport equation solver."""
+
+ homepage = "https://github.com/ANL-CESAR/"
+ url = "https://github.com/ANL-CESAR/SNbone.git"
+
+ version('develop', git='https://github.com/ANL-CESAR/SNbone.git')
+
+ tags = ['proxy-app']
+
+ depends_on('metis')
+
+ def build(self, spec, prefix):
+ working_dirs = ['src_c', 'src_fortran', 'src_makemesh',
+ 'src_processmesh']
+ for wdir in working_dirs:
+ with working_dir(wdir, create=False):
+ if self.compiler.name == 'gcc' and wdir == 'src_processmesh':
+ make('COMPILER=gfortran', 'METISLIB={0}'
+ .format(spec['metis'].prefix + '/lib/libmetis.so'))
+ elif self.compiler.name == 'intel':
+ make('COMPILER=intel', 'LDFLAGS=-lm')
+ else:
+ make('COMPILER=gfortran', 'LDFLAGS=-lm')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin.C)
+ mkdirp(prefix.bin.Fortran)
+ mkdirp(prefix.bin.MakeMesh)
+ mkdirp(prefix.bin.ProcessMesh)
+
+ install('src_c/SNaCFE.x', prefix.bin.C)
+ install('src_fortran/SNaCFE.x', prefix.bin.Fortran)
+ install('src_makemesh/makemesh.x', prefix.bin.MakeMesh)
+ install('src_processmesh/processmesh.x', prefix.bin.ProcessMesh)
diff --git a/var/spack/repos/builtin/packages/sniffles/package.py b/var/spack/repos/builtin/packages/sniffles/package.py
new file mode 100644
index 0000000000..caa6591a5e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sniffles/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sniffles(CMakePackage):
+ """Structural variation caller using third generation sequencing."""
+
+ homepage = "https://github.com/fritzsedlazeck/Sniffles/wiki"
+ url = "https://github.com/fritzsedlazeck/Sniffles/archive/v1.0.5.tar.gz"
+
+ version('1.0.5', 'c2f2350d00418ba4d82c074e7f0b1832')
+
+ # the build process doesn't actually install anything, do it by hand
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ src = "bin/sniffles-core-{0}".format(spec.version.dotted)
+ binaries = ['sniffles', 'sniffles-debug']
+ for b in binaries:
+ install(join_path(src, b), join_path(prefix.bin, b))
diff --git a/var/spack/repos/builtin/packages/snptest/package.py b/var/spack/repos/builtin/packages/snptest/package.py
new file mode 100644
index 0000000000..57a49c5bec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/snptest/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Snptest(Package):
+ """SNPTEST is a program for the analysis of single SNP association in
+ genome-wide studies."""
+
+ homepage = "https://mathgen.stats.ox.ac.uk/genetics_software/snptest/snptest.html"
+ url = "http://www.well.ox.ac.uk/~gav/resources/snptest_v2.5.2_linux_x86_64_dynamic.tgz"
+
+ version('2.5.2', 'e3f2cc0351f260cf29369dc4f79a660a')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('snptest_v{0}'.format(self.version), prefix.bin)
diff --git a/var/spack/repos/builtin/packages/soap2/package.py b/var/spack/repos/builtin/packages/soap2/package.py
new file mode 100644
index 0000000000..9b34e35320
--- /dev/null
+++ b/var/spack/repos/builtin/packages/soap2/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Soap2(Package):
+ """Software for short oligonucleotide alignment."""
+
+ homepage = "http://soap.genomics.org.cn/soapaligner.html"
+ url = "http://soap.genomics.org.cn/down/soap2.21release.tar.gz"
+
+ version('2.21', '563b8b7235463b68413f9e841aa40779')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.share.man)
+ install('soap', prefix.bin)
+ install('2bwt-builder', prefix.bin)
+ install('soap.1', prefix.share.man)
+ install('soap.man', prefix.share.man)
diff --git a/var/spack/repos/builtin/packages/soapindel/package.py b/var/spack/repos/builtin/packages/soapindel/package.py
new file mode 100644
index 0000000000..1a6bd4ff8d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/soapindel/package.py
@@ -0,0 +1,53 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Soapindel(MakefilePackage):
+ """SOAPindel is focusing on calling indels from the next-generation
+ paired-end sequencing data."""
+
+ homepage = "http://soap.genomics.org.cn/soapindel.html"
+
+ version('2.1.7.17', '317ef494173969cdc6a8244dd87d06bd',
+ url='http://soap.genomics.org.cn/down/SOAPindel_20130918_2.1.7.17.zip')
+
+ depends_on('perl', type=('build', 'run'))
+
+ build_directory = 'indel_detection.release'
+
+ def install(self, spec, prefix):
+ with working_dir('indel_detection.release'):
+ install_tree('tools', prefix.tools)
+ mkdirp(prefix.lib)
+ install('affine_align.pm', prefix.lib)
+ install('indel_lib.pm', prefix.lib)
+ mkdirp(prefix.bin)
+ install('assemble_align', prefix.bin)
+ install('cluster_reads', prefix.bin)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PERL5LIB', self.prefix.lib)
+ run_env.prepend_path('PATH', self.prefix.tools)
diff --git a/var/spack/repos/builtin/packages/soapsnp/package.py b/var/spack/repos/builtin/packages/soapsnp/package.py
new file mode 100644
index 0000000000..34c56eebb2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/soapsnp/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Soapsnp(MakefilePackage):
+ """SOAPsnp uses a method based on Bayes' theorem (the reverse probability
+ model) to call consensus genotype by carefully considering the data
+ quality, alignment, and recurring experimental errors."""
+
+ homepage = "http://soap.genomics.org.cn/soapsnp.html"
+ url = "http://soap.genomics.org.cn/down/SOAPsnp-v1.03.tar.gz"
+
+ version('1.03', '8d69e196013657357ff840b611762ebc')
+
+ depends_on('boost')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('soapsnp', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/somatic-sniper/package.py b/var/spack/repos/builtin/packages/somatic-sniper/package.py
new file mode 100644
index 0000000000..40c66af214
--- /dev/null
+++ b/var/spack/repos/builtin/packages/somatic-sniper/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class SomaticSniper(CMakePackage):
+ """A tool to call somatic single nucleotide variants."""
+
+ homepage = "http://gmt.genome.wustl.edu/packages/somatic-sniper"
+ url = "https://github.com/genome/somatic-sniper/archive/v1.0.5.0.tar.gz"
+
+ version('1.0.5.0', '64bc2b001c9a8089f2a05900f8a0abfe')
+
+ depends_on('ncurses')
+
+ parallel = False
diff --git a/var/spack/repos/builtin/packages/sortmerna/package.py b/var/spack/repos/builtin/packages/sortmerna/package.py
new file mode 100644
index 0000000000..bd3136162b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sortmerna/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sortmerna(CMakePackage):
+ """SortMeRNA is a program tool for filtering, mapping and OTU-picking NGS
+ reads in metatranscriptomic and metagenomic data"""
+
+ homepage = "https://github.com/biocore/sortmerna"
+ url = "https://github.com/biocore/sortmerna"
+
+ version('2017-07-13', git='https://github.com/biocore/sortmerna.git', commit='8bde6fa113a5d99a23ae81b48eeea6760e966094')
+
+ depends_on('zlib')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir(join_path('spack-build', 'src', 'indexdb')):
+ install('indexdb', prefix.bin)
+ with working_dir(join_path('spack-build', 'src', 'sortmerna')):
+ install('sortmerna', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sosflow/package.py b/var/spack/repos/builtin/packages/sosflow/package.py
new file mode 100644
index 0000000000..c3b99fd479
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sosflow/package.py
@@ -0,0 +1,51 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Sosflow(CMakePackage):
+ """SOSflow provides a flexible, scalable, and programmable framework for
+ observation, introspection, feedback, and control of HPC applications."""
+
+ homepage = "https://github.com/cdwdirect/sos_flow/wiki"
+ url = "https://github.com/cdwdirect/sos_flow.git"
+
+ version('spack', git='https://github.com/cdwdirect/sos_flow.git', tag='spack-build-v0.9901')
+
+ depends_on('libevpath')
+ depends_on('sqlite@3:')
+
+ def setup_environment(self, spack_env, run_env):
+ spack_env.set('SOS_HOST_KNOWN_AS', 'SPACK-SOS-BUILD')
+ spack_env.set('SOS_HOST_NODE_NAME', 'SPACK-SOS-NODE')
+ spack_env.set('SOS_HOST_DETAILED', 'SPACK-SOS-DETAILED')
+
+ run_env.set('SOS_ROOT', self.spec.prefix)
+ run_env.set('SOS_BUILD_DIR', self.spec.prefix)
+ run_env.set('SOS_CMD_PORT', '22500')
+ run_env.set('SOS_WORK', env['HOME'])
+ run_env.set('SOS_EVPATH_MEETUP', env['HOME'])
+ run_env.set('SOS_ENV_SET', 'true')
diff --git a/var/spack/repos/builtin/packages/sowing/package.py b/var/spack/repos/builtin/packages/sowing/package.py
index f7f6297488..668038255b 100644
--- a/var/spack/repos/builtin/packages/sowing/package.py
+++ b/var/spack/repos/builtin/packages/sowing/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,7 +26,7 @@
from spack import *
-class Sowing(Package):
+class Sowing(AutotoolsPackage):
"""Sowing generates Fortran interfaces and documentation for PETSc
and MPICH.
"""
@@ -36,7 +36,5 @@ class Sowing(Package):
version('1.1.23-p1', '65aaf3ae2a4c0f30d532fec291702e16')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
+ def build(self, spec, prefix):
make('ALL', parallel=False)
- make("install")
diff --git a/var/spack/repos/builtin/packages/sox/package.py b/var/spack/repos/builtin/packages/sox/package.py
new file mode 100644
index 0000000000..64c9803d52
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sox/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sox(AutotoolsPackage):
+ """SoX, the Swiss Army knife of sound processing programs."""
+
+ homepage = "http://sox.sourceforge.net/Main/HomePage"
+ url = "https://downloads.sourceforge.net/project/sox/sox/14.4.2/sox-14.4.2.tar.bz2"
+
+ version('14.4.2', 'ba804bb1ce5c71dd484a102a5b27d0dd')
+
+ depends_on('bzip2')
+ depends_on('flac')
+ depends_on('id3lib')
+ depends_on('libvorbis')
+ depends_on('opus')
diff --git a/var/spack/repos/builtin/packages/spades/package.py b/var/spack/repos/builtin/packages/spades/package.py
new file mode 100644
index 0000000000..0748ef0618
--- /dev/null
+++ b/var/spack/repos/builtin/packages/spades/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Spades(CMakePackage):
+ """SPAdes - St. Petersburg genome assembler - is intended for both
+ standard isolates and single-cell MDA bacteria assemblies."""
+
+ homepage = "http://cab.spbu.ru/software/spades/"
+ url = "http://cab.spbu.ru/files/release3.10.1/SPAdes-3.10.1.tar.gz"
+
+ version('3.10.1', 'dcab7d145af81b59cc867562f27536c3')
+
+ depends_on('python', type=('build', 'run'))
+ depends_on('zlib')
+ depends_on('bzip2')
+
+ conflicts('%gcc@7.1.0:')
+
+ root_cmakelists_dir = 'src'
diff --git a/var/spack/repos/builtin/packages/spark/package.py b/var/spack/repos/builtin/packages/spark/package.py
index 84b63fa87f..9d7f793803 100644
--- a/var/spack/repos/builtin/packages/spark/package.py
+++ b/var/spack/repos/builtin/packages/spark/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
-
+import re
import shutil
+from spack import *
+
class Spark(Package):
"""Apache Spark is a fast and general engine
@@ -33,17 +34,20 @@ class Spark(Package):
"""
homepage = "http://spark.apache.org"
- url = "http://mirrors.ocf.berkeley.edu/apache/spark/spark-2.0.0/spark-2.0.0-bin-without-hadoop.tgz"
+ url = "http://archive.apache.org/dist/spark/spark-2.0.0/spark-2.0.0-bin-without-hadoop.tgz"
variant('hadoop', default=False,
description='Build with Hadoop')
- depends_on('jdk', type=('build', 'run'))
+ depends_on('java', type=('build', 'run'))
depends_on('hadoop', when='+hadoop', type=('build', 'run'))
+ version('2.1.0', '21d4471e78250775b1fa7c0e6c3a1326')
+ version('2.0.2', '32110c1bb8f081359738742bd26bced1')
version('2.0.0', '8a5307d973da6949a385aefb6ff747bb')
version('1.6.2', '304394fbe2899211217f0cd9e9b2b5d9')
version('1.6.1', 'fcf4961649f15af1fea78c882e65b001')
+ version('1.6.0', '2c28edc89ca0067e63e525c04f7b1d89')
def install(self, spec, prefix):
@@ -64,11 +68,14 @@ class Spark(Package):
@when('+hadoop')
def setup_environment(self, spack_env, run_env):
- env['JAVA_HOME'] = self.spec['jdk'].prefix
+ env['JAVA_HOME'] = self.spec['java'].prefix
# spack_env.set('JAVA_HOME', self.spec['jdk'].prefix)
- hadoop_bin_path = join_path(self.spec['hadoop'].prefix.bin, 'hadoop')
- hadoop_bin = Executable(hadoop_bin_path)
- hadoop_classpath = hadoop_bin('classpath', return_output=True)
+ hadoop = self.spec['hadoop'].command
+ hadoop_classpath = hadoop('classpath', output=str)
+
+ # Remove whitespaces, as they can compromise syntax in
+ # module files
+ hadoop_classpath = re.sub('[\s+]', '', hadoop_classpath)
run_env.set('SPARK_DIST_CLASSPATH', hadoop_classpath)
diff --git a/var/spack/repos/builtin/packages/sparsehash/package.py b/var/spack/repos/builtin/packages/sparsehash/package.py
index e5abd42ae6..1d8b870bd5 100644
--- a/var/spack/repos/builtin/packages/sparsehash/package.py
+++ b/var/spack/repos/builtin/packages/sparsehash/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,9 @@
from spack import *
-class Sparsehash(Package):
+class Sparsehash(AutotoolsPackage):
"""Sparse and dense hash-tables for C++ by Google"""
homepage = "https://github.com/sparsehash/sparsehash"
url = "https://github.com/sparsehash/sparsehash/archive/sparsehash-2.0.3.tar.gz"
version('2.0.3', 'd8d5e2538c1c25577b3f066d7a55e99e')
-
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/sparta/package.py b/var/spack/repos/builtin/packages/sparta/package.py
new file mode 100644
index 0000000000..cfe6658f3b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sparta/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sparta(Package):
+ """small RNA-PARE Target Analyzer (sPARTA) is a tool which utilizes
+ high-throughput sequencing to profile genome-wide cleavage
+ products."""
+
+ homepage = "https://github.com/atulkakrana/sPARTA.github"
+ url = "https://github.com/atulkakrana/sPARTA/archive/1.25.tar.gz"
+
+ version('1.25', '50fda66bf860f63ae8aef5e8fb997a75')
+
+ depends_on('bowtie2')
+ depends_on('python@3:', type=('build', 'run'))
+ depends_on('py-scipy', type=('build', 'run'))
+ depends_on('py-numpy', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('sPARTA.py', prefix.bin)
+ install('revFernoMap.py', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/spdlog/package.py b/var/spack/repos/builtin/packages/spdlog/package.py
index f9520219a3..9d952728db 100644
--- a/var/spack/repos/builtin/packages/spdlog/package.py
+++ b/var/spack/repos/builtin/packages/spdlog/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/spectrum-mpi/package.py b/var/spack/repos/builtin/packages/spectrum-mpi/package.py
new file mode 100644
index 0000000000..c2b08c0086
--- /dev/null
+++ b/var/spack/repos/builtin/packages/spectrum-mpi/package.py
@@ -0,0 +1,70 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at International Business Machines Corporation
+#
+# This file is part of Spack.
+# Created by Serban Maerean, serban@us.ibm.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class SpectrumMpi(Package):
+ """
+ IBM MPI implementation from Spectrum MPI.
+
+ """
+
+ homepage = "http://www-03.ibm.com/systems/spectrum-computing/products/mpi"
+ url = "http://www-03.ibm.com/systems/spectrum-computing/products/mpi"
+
+ provides('mpi')
+
+ def install(self, spec, prefix):
+ raise InstallError('IBM MPI is not installable; it is vendor supplied')
+
+ def setup_dependent_package(self, module, dependent_spec):
+ # get the compiler names
+ if '%xl' in dependent_spec or '%xl_r' in dependent_spec:
+ self.spec.mpicc = join_path(self.prefix.bin, 'mpixlc')
+ self.spec.mpicxx = join_path(self.prefix.bin, 'mpixlC')
+ self.spec.mpif77 = join_path(self.prefix.bin, 'mpixlf')
+ self.spec.mpifc = join_path(self.prefix.bin, 'mpixlf')
+ else:
+ self.spec.mpicc = join_path(self.prefix.bin, 'mpicc')
+ self.spec.mpicxx = join_path(self.prefix.bin, 'mpicxx')
+ self.spec.mpif77 = join_path(self.prefix.bin, 'mpif77')
+ self.spec.mpifc = join_path(self.prefix.bin, 'mpif90')
+
+ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
+ if '%xl' in dependent_spec or '%xl_r' in dependent_spec:
+ spack_env.set('MPICC', join_path(self.prefix.bin, 'mpixlc'))
+ spack_env.set('MPICXX', join_path(self.prefix.bin, 'mpixlC'))
+ spack_env.set('MPIF77', join_path(self.prefix.bin, 'mpixlf'))
+ spack_env.set('MPIF90', join_path(self.prefix.bin, 'mpixlf'))
+ else:
+ spack_env.set('MPICC', join_path(self.prefix.bin, 'mpicc'))
+ spack_env.set('MPICXX', join_path(self.prefix.bin, 'mpic++'))
+ spack_env.set('MPIF77', join_path(self.prefix.bin, 'mpif77'))
+ spack_env.set('MPIF90', join_path(self.prefix.bin, 'mpif90'))
+
+ spack_env.set('OMPI_CC', spack_cc)
+ spack_env.set('OMPI_CXX', spack_cxx)
+ spack_env.set('OMPI_FC', spack_fc)
+ spack_env.set('OMPI_F77', spack_f77)
diff --git a/var/spack/repos/builtin/packages/speex/package.py b/var/spack/repos/builtin/packages/speex/package.py
new file mode 100644
index 0000000000..6e0f50feec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/speex/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Speex(AutotoolsPackage):
+ """Speex is an Open Source/Free Software patent-free
+ audio compression format designed for speech."""
+
+ homepage = "https://speex.org"
+ url = "http://downloads.us.xiph.org/releases/speex/speex-1.2.0.tar.gz"
+
+ version('1.2.0', '8ab7bb2589110dfaf0ed7fa7757dc49c')
diff --git a/var/spack/repos/builtin/packages/sph2pipe/cmake.patch b/var/spack/repos/builtin/packages/sph2pipe/cmake.patch
new file mode 100644
index 0000000000..e5ff6dfc0c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sph2pipe/cmake.patch
@@ -0,0 +1,10 @@
+diff -ruN sph2pipe_v2.5.ori/CMakeLists.txt sph2pipe_v2.5/CMakeLists.txt
+--- sph2pipe_v2.5.ori/CMakeLists.txt 1970-01-01 08:00:00.000000000 +0800
++++ sph2pipe_v2.5/CMakeLists.txt 2017-03-27 17:33:27.000000000 +0800
+@@ -0,0 +1,6 @@
++PROJECT (SPH2PIPE)
++SET(SRC_LIST file_headers.c shorten_x.c sph2pipe.c)
++ADD_EXECUTABLE(sph2pipe ${SRC_LIST})
++TARGET_LINK_LIBRARIES(sph2pipe m)
++INSTALL(TARGETS sph2pipe
++ RUNTIME DESTINATION bin)
diff --git a/var/spack/repos/builtin/packages/sph2pipe/package.py b/var/spack/repos/builtin/packages/sph2pipe/package.py
new file mode 100644
index 0000000000..471461249a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sph2pipe/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sph2pipe(CMakePackage):
+ """Sph2pipe is a portable tool for
+ converting SPHERE files to other formats."""
+
+ homepage = "https://www.ldc.upenn.edu/language-resources/tools/sphere-conversion-tools"
+ url = "https://www.ldc.upenn.edu/sites/www.ldc.upenn.edu/files/ctools/sph2pipe_v2.5.tar.gz"
+
+ version('2.5', '771d9143e9aec0a22c6a14e138974be2')
+
+ patch('cmake.patch')
diff --git a/var/spack/repos/builtin/packages/spherepack/package.py b/var/spack/repos/builtin/packages/spherepack/package.py
new file mode 100644
index 0000000000..792853b51d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/spherepack/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Spherepack(Package):
+ """SPHEREPACK - A Package for Modeling Geophysical Processes"""
+
+ homepage = "https://www2.cisl.ucar.edu/resources/legacy/spherepack"
+ url = "https://www2.cisl.ucar.edu/sites/default/files/spherepack3.2.tar"
+
+ version('3.2', '283627744f36253b4260efd7dfb7c762')
+
+ def install(self, spec, prefix):
+ if self.compiler.fc is None:
+ raise InstallError("SPHEREPACK requires a Fortran 90 compiler")
+ make("MAKE=make", "F90=f90 -O2", "AR=ar", "libspherepack")
+ make("MAKE=make", "F90=f90 -O2", "AR=ar", "testspherepack")
+ install_tree("lib", prefix.lib)
diff --git a/var/spack/repos/builtin/packages/spindle/package.py b/var/spack/repos/builtin/packages/spindle/package.py
index 213d41e970..1b863689c3 100644
--- a/var/spack/repos/builtin/packages/spindle/package.py
+++ b/var/spack/repos/builtin/packages/spindle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Spindle(Package):
+class Spindle(AutotoolsPackage):
"""Spindle improves the library-loading performance of dynamically
linked HPC applications. Without Spindle large MPI jobs can
overload on a shared file system when loading dynamically
@@ -33,13 +33,7 @@ class Spindle(Package):
"""
homepage = "https://computation.llnl.gov/project/spindle/"
url = "https://github.com/hpc/Spindle/archive/v0.8.1.tar.gz"
- list_url = "https://github.com/hpc/Spindle/releases"
version('0.8.1', 'f11793a6b9d8df2cd231fccb2857d912')
depends_on("launchmon")
-
- def install(self, spec, prefix):
- configure("--prefix=" + prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/spot/package.py b/var/spack/repos/builtin/packages/spot/package.py
index 096aa24c02..cd045dae68 100644
--- a/var/spack/repos/builtin/packages/spot/package.py
+++ b/var/spack/repos/builtin/packages/spot/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,19 +25,18 @@
from spack import *
-class Spot(Package):
+class Spot(AutotoolsPackage):
"""Spot is a C++11 library for omega-automata manipulation and model
checking."""
- homepage = "https://spot.lrde.epita.fr/index.html"
+ homepage = "https://spot.lrde.epita.fr/"
url = "http://www.lrde.epita.fr/dload/spot/spot-1.99.3.tar.gz"
version('1.99.3', 'd53adcb2d0fe7c69f45d4e595a58254e')
+ version('1.2.6', '799bf59ccdee646d12e00f0fe6c23902')
- # depends_on("gcc@4.8:", type='build')
- depends_on("python@3.2:")
+ variant('python', default=True, description='Enable python API')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
-
- make()
- make("install")
+ depends_on("python@3.3:", when='@1.99.5: +python')
+ depends_on("python@3.2:", when='@1.99: +python')
+ depends_on("python@2:", when='+python')
+ depends_on('boost', when='@:1.2.6')
diff --git a/var/spack/repos/builtin/packages/sqlite/package.py b/var/spack/repos/builtin/packages/sqlite/package.py
index c57ee72323..de949df998 100644
--- a/var/spack/repos/builtin/packages/sqlite/package.py
+++ b/var/spack/repos/builtin/packages/sqlite/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,25 +26,39 @@ from spack import *
from spack import architecture
-class Sqlite(Package):
+class Sqlite(AutotoolsPackage):
"""SQLite3 is an SQL database engine in a C library. Programs that
link the SQLite3 library can have SQL database access without
running a separate RDBMS process.
"""
homepage = "www.sqlite.org"
+ version('3.20.0', 'e262a28b73cc330e7e83520c8ce14e4d',
+ url='https://www.sqlite.org/2017/sqlite-autoconf-3200000.tar.gz')
+ version('3.18.0', 'a6687a8ae1f66abc8df739aeadecfd0c',
+ url='https://www.sqlite.org/2017/sqlite-autoconf-3180000.tar.gz')
+ version('3.8.10.2', 'a18bfc015cd49a1e7a961b7b77bc3b37',
+ url='https://www.sqlite.org/2015/sqlite-autoconf-3081002.tar.gz')
version('3.8.5', '0544ef6d7afd8ca797935ccc2685a9ed',
url='https://www.sqlite.org/2014/sqlite-autoconf-3080500.tar.gz')
+ depends_on('readline')
+
+ # On some platforms (e.g., PPC) the include chain includes termios.h which
+ # defines a macro B0. Sqlite has a shell.c source file that declares a
+ # variable named B0 and will fail to compile when the macro is found. The
+ # following patch undefines the macro in shell.c
+ patch('sqlite_b0.patch', when='@3.18.0')
+
def get_arch(self):
arch = architecture.Arch()
arch.platform = architecture.platform()
return str(arch.platform.target('default_target'))
- def install(self, spec, prefix):
- config = ["--prefix=" + prefix]
+ def configure_args(self):
+ args = []
+
if self.get_arch() == 'ppc64le':
- config.append("--build=powerpc64le-redhat-linux-gnu")
- configure(*config)
- make()
- make("install")
+ args.append('--build=powerpc64le-redhat-linux-gnu')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/sqlite/sqlite_b0.patch b/var/spack/repos/builtin/packages/sqlite/sqlite_b0.patch
new file mode 100644
index 0000000000..0be1bb95c1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sqlite/sqlite_b0.patch
@@ -0,0 +1,13 @@
+--- a/shell.c 2017-05-03 10:49:13.266276246 -0700
++++ b/shell.c 2017-05-03 10:51:34.868963321 -0700
+@@ -198,6 +198,10 @@
+ #define getrusage(A,B) memset(B,0,sizeof(*B))
+ #endif
+
++#ifdef B0
++#undef B0
++#endif
++
+ /* Saved resource information for the beginning of an operation */
+ static struct rusage sBegin; /* CPU time at start */
+ static sqlite3_int64 iBegin; /* Wall-clock time at start */
diff --git a/var/spack/repos/builtin/packages/squid/package.py b/var/spack/repos/builtin/packages/squid/package.py
new file mode 100644
index 0000000000..379aff577c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/squid/package.py
@@ -0,0 +1,33 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Squid(AutotoolsPackage):
+ """C function library for sequence analysis."""
+
+ homepage = "http://eddylab.org/software.html"
+
+ version('1.9g', 'b9bf480c65d01417b7894c82d094ce07', url='http://eddylab.org/software/squid/squid.tar.gz')
diff --git a/var/spack/repos/builtin/packages/sra-toolkit/package.py b/var/spack/repos/builtin/packages/sra-toolkit/package.py
new file mode 100644
index 0000000000..e1d5b54300
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sra-toolkit/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class SraToolkit(Package):
+ """The NCBI SRA Toolkit enables reading ("dumping") of sequencing files
+ from the SRA database and writing ("loading") files into the .sra
+ format."""
+
+ homepage = "https://trace.ncbi.nlm.nih.gov/Traces/sra"
+ url = "https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.8.2-1/sratoolkit.2.8.2-1-centos_linux64.tar.gz"
+
+ version('2.8.2-1', '3a2910754aea71aba5662804efff2a68')
+
+ def url_for_version(self, version):
+ url = 'https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/{0}/sratoolkit.{0}-centos_linux64.tar.gz'
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('example', prefix.example)
+ install_tree('schema', prefix.schema)
diff --git a/var/spack/repos/builtin/packages/sspace-longread/package.py b/var/spack/repos/builtin/packages/sspace-longread/package.py
new file mode 100644
index 0000000000..4eac8cf177
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sspace-longread/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class SspaceLongread(Package):
+ """SSPACE-LongRead is a stand-alone program for scaffolding pre-assembled
+ contigs using long reads
+
+ Note: A manual download is required for SSPACE-LongRead.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://www.baseclear.com/genomics/bioinformatics/basetools/SSPACE-longread"
+
+ version('1.1', '0bb5d8603d7ead4ff1596135a520cc26')
+
+ depends_on('perl', type=('build', 'run'))
+
+ def url_for_version(self, version):
+ return "file://{0}/40SSPACE-LongRead_v{1}.tar.gz".format(
+ os.getcwd(), version.dashed)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('blasr', prefix.bin)
+ install('SSPACE-LongRead.pl', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sspace-standard/package.py b/var/spack/repos/builtin/packages/sspace-standard/package.py
new file mode 100644
index 0000000000..2724c1022f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sspace-standard/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class SspaceStandard(Package):
+ """SSPACE standard is a stand-alone program for scaffolding pre-assembled
+ contigs using NGS paired-read data
+
+ Note: A manual download is required for SSPACE-Standard.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://www.baseclear.com/genomics/bioinformatics/basetools/SSPACE"
+ url = "file://{0}/41SSPACE-STANDARD-3.0_linux-x86_64.tar.gz".format(os.getcwd())
+
+ version('3.0', '7e171b4861b9d514e80aafc3d9cdf554')
+
+ depends_on('perl', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('bowtie', prefix.bowtie)
+ install_tree('bwa', prefix.bwa)
+ install_tree('dotlib', prefix.dotlib)
+ install_tree('tools', prefix.tools)
+ install('SSPACE_Standard_v{0}.pl'.format(self.version), prefix)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('SSPACE_HOME', prefix)
+ run_env.prepend_path('PATH', prefix)
diff --git a/var/spack/repos/builtin/packages/sst-dumpi/package.py b/var/spack/repos/builtin/packages/sst-dumpi/package.py
new file mode 100644
index 0000000000..6422013871
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sst-dumpi/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+# Author: Samuel Knight <sknigh@sandia.gov>
+# Date: Feb 3, 2017
+#
+from spack import *
+
+
+class SstDumpi(AutotoolsPackage):
+ """The DUMPI package provides libraries to collect and read traces of MPI
+ applications. Traces are created by linking an application with a library
+ that uses the PMPI interface to intercept MPI calls. DUMPI records
+ signatures of all MPI-1 and MPI-2 subroutine calls, return values, request
+ information, and PAPI counters.
+ """
+
+ homepage = "http://sst.sandia.gov/about_dumpi.html"
+ url = "https://github.com/sstsimulator/sst-dumpi/archive/6.1.0.tar.gz"
+
+ depends_on('autoconf@1.68:', type='build')
+ depends_on('automake@1.11.1:', type='build')
+ depends_on('libtool@1.2.4:', type='build')
+ depends_on('m4', type='build')
+
+ version('master',
+ git='https://github.com/sstsimulator/sst-dumpi.git',
+ branch='master')
+
+ version('6.1.0', '31c3f40a697dc85bf23dd34270982319')
diff --git a/var/spack/repos/builtin/packages/sst-macro/package.py b/var/spack/repos/builtin/packages/sst-macro/package.py
new file mode 100644
index 0000000000..3fade2694f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sst-macro/package.py
@@ -0,0 +1,64 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+# Author: Samuel Knight <sknigh@sandia.gov>
+# Date: Feb 3, 2017
+#
+from spack import *
+
+
+class SstMacro(AutotoolsPackage):
+ """The SST/macro software package provides a simulator for large-scale
+ parallel computer architectures for the coarse-grained study of
+ distributed-memory applications. The simulator is driven from either a
+ trace file or skeleton application. SST/macro's modular architecture can
+ be extended with additional network models, trace file formats,
+ software services, and processor models.
+ """
+
+ homepage = "http://sst.sandia.gov/about_sstmacro.html"
+ url = "https://github.com/sstsimulator/sst-macro/releases/download/v6.1.0_Final/sstmacro-6.1.0.tar.gz"
+
+ depends_on('boost@1.59:')
+ depends_on('autoconf@1.68:', type='build', when='@master')
+ depends_on('automake@1.11.1:', type='build', when='@master')
+ depends_on('libtool@1.2.4:', type='build', when='@master')
+ depends_on('m4', type='build', when='@master')
+
+ version('master',
+ git='https://github.com/sstsimulator/sst-macro.git',
+ branch='master')
+
+ version('6.1.0', '98b737be6326b8bd711de832ccd94d14',
+ url='https://github.com/sstsimulator/sst-macro/releases/download/v6.1.0_Final/sstmacro-6.1.0.tar.gz')
+
+ @run_before('autoreconf')
+ def bootstrap(self):
+ if '@master' in self.spec:
+ Executable('./bootstrap.sh')()
+
+ def configure_args(self):
+ args = ['--disable-regex']
+ return args
diff --git a/var/spack/repos/builtin/packages/stacks/package.py b/var/spack/repos/builtin/packages/stacks/package.py
new file mode 100644
index 0000000000..975e1c88b6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stacks/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Stacks(AutotoolsPackage):
+ """Stacks is a software pipeline for building loci from short-read
+ sequences, such as those generated on the Illumina platform."""
+
+ homepage = "http://catchenlab.life.illinois.edu/stacks/"
+ url = "http://catchenlab.life.illinois.edu/stacks/source/stacks-1.46.tar.gz"
+
+ version('1.46', '18b0568a4bba44fb4e5be0eb7ee2c08d')
+
+ variant('sparsehash', default=True, description='Improve Stacks memory usage with SparseHash')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('sparsehash', when='+sparsehash')
+
+ def configure_args(self):
+ args = []
+ if '+sparsehash' in self.spec:
+ args.append('--enable-sparsehash')
+ else:
+ args.append('--disable-sparsehash')
+ return args
diff --git a/var/spack/repos/builtin/packages/staden-io-lib/package.py b/var/spack/repos/builtin/packages/staden-io-lib/package.py
new file mode 100644
index 0000000000..3cb82061aa
--- /dev/null
+++ b/var/spack/repos/builtin/packages/staden-io-lib/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class StadenIoLib(AutotoolsPackage):
+ """Io_lib is a library for reading/writing various bioinformatics
+ file formats."""
+
+ homepage = "http://staden.sourceforge.net/"
+ url = "https://sourceforge.net/projects/staden/files/io_lib/1.14.8/io_lib-1.14.8.tar.gz/download"
+
+ version('1.14.8', 'fe5ee6aaec8111a5bc3ac584a0c0c0c7')
+
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/star-ccm-plus/package.py b/var/spack/repos/builtin/packages/star-ccm-plus/package.py
index ba1516b62a..cc230fe028 100644
--- a/var/spack/repos/builtin/packages/star-ccm-plus/package.py
+++ b/var/spack/repos/builtin/packages/star-ccm-plus/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,6 +31,7 @@ class StarCcmPlus(Package):
"""STAR-CCM+ (Computational Continuum Mechanics) CFD solver."""
homepage = "http://mdx.plm.automation.siemens.com/star-ccm-plus"
+ url = "file://{0}/STAR-CCM+11.06.010_02_linux-x86_64.tar.gz".format(os.getcwd())
version('11.06.010_02', 'd349c6ac8293d8e6e7a53533d695588f')
@@ -40,10 +41,6 @@ class StarCcmPlus(Package):
license_required = True
license_vars = ['CDLMD_LICENSE_FILE', 'LM_LICENSE_FILE']
- def url_for_version(self, version):
- return "file://{0}/STAR-CCM+{1}_linux-x86_64.tar.gz".format(
- os.getcwd(), version)
-
def install(self, spec, prefix):
# There is a known issue with the LaunchAnywhere application.
# Specifically, it cannot handle long prompts or prompts
diff --git a/var/spack/repos/builtin/packages/star/package.py b/var/spack/repos/builtin/packages/star/package.py
new file mode 100644
index 0000000000..3a21e5806e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/star/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Star(Package):
+ """STAR is an ultrafast universal RNA-seq aligner."""
+
+ homepage = "https://github.com/alexdobin/STAR"
+ url = "https://github.com/alexdobin/STAR/archive/2.5.3a.tar.gz"
+
+ version('2.5.3a', 'baf8d1b62a50482cfa13acb7652dc391',
+ url='https://github.com/alexdobin/STAR/archive/2.5.3a.tar.gz')
+ version('2.4.2a', '8b9345f2685a5ec30731e0868e86d506',
+ url='https://github.com/alexdobin/STAR/archive/STAR_2.4.2a.tar.gz')
+
+ def install(self, spec, prefix):
+ with working_dir('source'):
+ make('STAR', 'STARlong')
+ mkdirp(prefix.bin)
+ install('STAR', prefix.bin)
+ install('STARlong', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/stat/package.py b/var/spack/repos/builtin/packages/stat/package.py
index c511fcee70..f2733f8f61 100644
--- a/var/spack/repos/builtin/packages/stat/package.py
+++ b/var/spack/repos/builtin/packages/stat/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,19 @@
from spack import *
-class Stat(Package):
+class Stat(AutotoolsPackage):
"""Library to create, manipulate, and export graphs Graphlib."""
homepage = "http://paradyn.org/STAT/STAT.html"
url = "https://github.com/lee218llnl/stat/archive/v2.0.0.tar.gz"
+ version('3.0.1', 'dac6f23c3639a0b21f923dc6219ba385',
+ url='https://github.com/LLNL/STAT/files/911503/stat-3.0.1.zip')
+ version('3.0.0', 'a97cb235c266371c4a26329112de48a2',
+ url='https://github.com/LLNL/STAT/releases/download/v3.0.0/STAT-3.0.0.tar.gz')
version('2.2.0', '26bd69dd57a15afdd5d0ebdb0b7fb6fc')
version('2.1.0', 'ece26beaf057aa9134d62adcdda1ba91')
version('2.0.0', 'c7494210b0ba26b577171b92838e1a9b')
- version('3.0.0', 'a97cb235c266371c4a26329112de48a2',
- url='https://github.com/LLNL/STAT/releases/download/v3.0.0/STAT-3.0.0.tar.gz')
# TODO: dysect requires Dyninst patch for version 3.0.0b
variant('dysect', default=False, description="enable DySectAPI")
@@ -44,7 +46,6 @@ class Stat(Package):
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
- depends_on('libelf')
depends_on('libdwarf')
depends_on('dyninst', when='~dysect')
depends_on('dyninst@8.2.1+stat_dysect', when='+dysect')
@@ -53,27 +54,25 @@ class Stat(Package):
depends_on('graphviz', type=('build', 'link', 'run'))
depends_on('launchmon')
depends_on('mrnet')
- depends_on('python')
- depends_on('py-pygtk')
+ depends_on('python@:2.8')
+ depends_on('py-pygtk', type=('build', 'run'))
depends_on('swig')
depends_on('mpi', when='+examples')
patch('configure_mpicxx.patch', when='@2.1.0')
- def install(self, spec, prefix):
- configure_args = [
- "--enable-gui",
- "--prefix=%s" % prefix,
+ def configure_args(self):
+ spec = self.spec
+ args = [
"--with-launchmon=%s" % spec['launchmon'].prefix,
"--with-mrnet=%s" % spec['mrnet'].prefix,
"--with-graphlib=%s" % spec['graphlib'].prefix,
"--with-stackwalker=%s" % spec['dyninst'].prefix,
- "--with-libdwarf=%s" % spec['libdwarf'].prefix
+ "--with-libdwarf=%s" % spec['libdwarf'].prefix,
+ "--with-python=%s" % spec['python'].command.path,
]
if '+dysect' in spec:
- configure_args.append('--enable-dysectapi')
+ args.append('--enable-dysectapi')
if '~examples' in spec:
- configure_args.append('--disable-examples')
- configure(*configure_args)
-
- make("install")
+ args.append('--disable-examples')
+ return args
diff --git a/var/spack/repos/builtin/packages/stc/package.py b/var/spack/repos/builtin/packages/stc/package.py
new file mode 100644
index 0000000000..7a55b73873
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stc/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Stc(AutotoolsPackage):
+ """STC: The Swift-Turbine Compiler"""
+
+ homepage = 'http://swift-lang.org/Swift-T'
+ url = 'http://swift-lang.github.io/swift-t-downloads/stc-0.7.3.tar.gz'
+
+ version('0.7.3', '6bf769f406f6c33d1c134521373718d3')
+
+ depends_on('java')
+ depends_on('ant')
+ depends_on('turbine')
+
+ def configure_args(self):
+ args = ['--with-turbine=' + self.spec['turbine'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/stream/package.py b/var/spack/repos/builtin/packages/stream/package.py
index 8b3f32af8a..69ddfe5b07 100644
--- a/var/spack/repos/builtin/packages/stream/package.py
+++ b/var/spack/repos/builtin/packages/stream/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Stream(Package):
+class Stream(MakefilePackage):
"""The STREAM benchmark is a simple synthetic benchmark program that
measures sustainable memory bandwidth (in MB/s) and the corresponding
computation rate for simple vector kernels."""
@@ -36,7 +36,7 @@ class Stream(Package):
variant('openmp', default=False, description='Build with OpenMP support')
- def patch(self):
+ def edit(self, spec, prefix):
makefile = FileFilter('Makefile')
# Use the Spack compiler wrappers
@@ -54,8 +54,6 @@ class Stream(Package):
makefile.filter('FFLAGS = .*', 'FFLAGS = {0}'.format(fflags))
def install(self, spec, prefix):
- make()
-
# Manual installation
mkdir(prefix.bin)
install('stream_c.exe', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/strelka/package.py b/var/spack/repos/builtin/packages/strelka/package.py
new file mode 100644
index 0000000000..19c5de7dc8
--- /dev/null
+++ b/var/spack/repos/builtin/packages/strelka/package.py
@@ -0,0 +1,88 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Strelka(CMakePackage):
+ """Somatic and germline small variant caller for mapped sequencing
+ data."""
+
+ homepage = "https://github.com/Illumina/strelka"
+ url = "https://github.com/Illumina/strelka/releases/download/v2.8.2/strelka-2.8.2.release_src.tar.bz2"
+
+ version('2.8.2', 'c48753997fcf2e4edac4e9854495721e')
+
+ depends_on('python@2.4:')
+ depends_on('zlib')
+ depends_on('bzip2')
+ depends_on('cmake@2.8.5:')
+ depends_on('boost@1.56.0:')
+
+ @run_before('install')
+ def filter_sbang(self):
+ """Run before install so that the standard Spack sbang install hook
+ can fix up the path to the python binary.
+ """
+
+ match = '^#!/usr/bin/env python'
+ python = self.spec['python'].command
+ substitute = "#!{p}".format(p=python)
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ with working_dir('src'):
+ files = [
+ 'config/validate/validateJsonModelFromSchema.py',
+ 'srcqc/run_cppcheck.py',
+ 'python/libexec/cat.py',
+ 'python/libexec/sortVcf.py',
+ 'python/libexec/extractSmallIndelCandidates.py',
+ 'python/libexec/configureStrelkaNoiseWorkflow.py',
+ 'python/libexec/configureSequenceErrorCountsWorkflow.py',
+ 'python/libexec/vcfCmdlineSwapper.py',
+ 'python/libexec/mergeChromDepth.py',
+ 'python/scoringModelTraining/germline/bin/evs_learn.py',
+ 'python/scoringModelTraining/germline/bin/parseAnnotatedTrainingVcf.py', # noqa: E501
+ 'python/scoringModelTraining/germline/bin/filterTrainingVcf.py', # noqa: E501
+ 'python/scoringModelTraining/germline/bin/evs_exportmodel.py',
+ 'python/scoringModelTraining/germline/bin/evs_qq.py',
+ 'python/scoringModelTraining/germline/bin/evs_pr.py',
+ 'python/scoringModelTraining/germline/bin/evs_evaluate.py',
+ 'python/scoringModelTraining/somatic/bin/evs_random_sample_tpfp.py', # noqa: E501
+ 'python/scoringModelTraining/somatic/bin/evs_learn.py',
+ 'python/scoringModelTraining/somatic/bin/evs_random_split_csv.py', # noqa: E501
+ 'python/scoringModelTraining/somatic/bin/vcf_to_feature_csv.py', # noqa: E501
+ 'python/scoringModelTraining/somatic/bin/calc_features.py',
+ 'python/scoringModelTraining/somatic/bin/evs_exportmodel.py',
+ 'python/scoringModelTraining/somatic/bin/evs_pr.py',
+ 'python/scoringModelTraining/somatic/bin/evs_evaluate.py',
+ 'python/bin/configureStrelkaGermlineWorkflow.py',
+ 'python/bin/configureStrelkaSomaticWorkflow.py',
+ ]
+ filter_file(match, substitute, *files, **kwargs)
+
+ with working_dir('spack-build/redist'):
+ files = [
+ 'pyflow-1.1.18/src/pyflow.py',
+ ]
+ filter_file(match, substitute, *files, **kwargs)
diff --git a/var/spack/repos/builtin/packages/stress/package.py b/var/spack/repos/builtin/packages/stress/package.py
new file mode 100644
index 0000000000..497853f73b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stress/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Stress(AutotoolsPackage):
+ """stress is a deliberately simple workload generator for POSIX systems.
+ It imposes a configurable amount of CPU, memory, I/O, and disk stress on
+ the system. It is written in C, and is free software licensed under the
+ GPLv2."""
+
+ homepage = "https://people.seas.harvard.edu/~apw/stress/"
+ url = "https://people.seas.harvard.edu/~apw/stress/stress-1.0.4.tar.gz"
+
+ version('1.0.4', '890a4236dd1656792f3ef9a190cf99ef')
diff --git a/var/spack/repos/builtin/packages/stringtie/package.py b/var/spack/repos/builtin/packages/stringtie/package.py
new file mode 100644
index 0000000000..9e5a690a5d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/stringtie/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Stringtie(MakefilePackage):
+ """StringTie is a fast and highly efficient assembler of RNA-Seq alignments
+ into potential transcripts."""
+
+ homepage = "https://ccb.jhu.edu/software/stringtie"
+ url = "https://github.com/gpertea/stringtie/archive/v1.3.3b.tar.gz"
+
+ version('1.3.3b', '11a43260b18e4272182380e922445d88')
+
+ depends_on('samtools')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('stringtie', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/structure/package.py b/var/spack/repos/builtin/packages/structure/package.py
new file mode 100644
index 0000000000..cbfc1e9850
--- /dev/null
+++ b/var/spack/repos/builtin/packages/structure/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Structure(MakefilePackage):
+ """Structure is a free software package for using multi-locus genotype
+ data to investigate population structure."""
+
+ homepage = "http://web.stanford.edu/group/pritchardlab/structure.html"
+ url = "http://web.stanford.edu/group/pritchardlab/structure_software/release_versions/v2.3.4/structure_kernel_source.tar.gz"
+
+ version('2.3.4', '4e0591678cdbfe79347d272b5dceeda1')
+
+ depends_on('jdk', type=('build', 'run'))
+
+ def url_for_version(self, version):
+ url = "http://web.stanford.edu/group/pritchardlab/structure_software/release_versions/v{0}/structure_kernel_source.tar.gz"
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('structure', prefix.bin)
+ install('mainparams', prefix.bin)
+ install('extraparams', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sublime-text/package.py b/var/spack/repos/builtin/packages/sublime-text/package.py
index 81d8690db8..e28aa04c94 100644
--- a/var/spack/repos/builtin/packages/sublime-text/package.py
+++ b/var/spack/repos/builtin/packages/sublime-text/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,8 +33,8 @@ class SublimeText(Package):
homepage = "http://www.sublimetext.com/"
url = "https://download.sublimetext.com/sublime_text_3_build_3126_x64.tar.bz2"
- version('3126', 'acc34252b0ea7dff1f581c5db1564dcb')
- version('2.0.2', '699cd26d7fe0bada29eb1b2cd7b50e4b')
+ version('3_build_3126', 'acc34252b0ea7dff1f581c5db1564dcb')
+ version('2.0.2', '699cd26d7fe0bada29eb1b2cd7b50e4b')
# Sublime text comes as a pre-compiled binary.
# Since we can't link to Spack packages, we'll just have to
@@ -49,7 +49,7 @@ class SublimeText(Package):
depends_on('libxau', type='run')
def url_for_version(self, version):
- if version.up_to(1) == '2':
+ if version[0] == 2:
return "https://download.sublimetext.com/Sublime%20Text%20{0}%20x64.tar.bz2".format(version)
else:
return "https://download.sublimetext.com/sublime_text_3_build_{0}_x64.tar.bz2".format(version)
diff --git a/var/spack/repos/builtin/packages/subread/package.py b/var/spack/repos/builtin/packages/subread/package.py
new file mode 100644
index 0000000000..86c5efe42e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/subread/package.py
@@ -0,0 +1,52 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import sys
+
+
+class Subread(MakefilePackage):
+ """The Subread software package is a tool kit for processing next-gen
+ sequencing data."""
+
+ homepage = "http://subread.sourceforge.net/"
+ url = "https://downloads.sourceforge.net/project/subread/subread-1.5.2/subread-1.5.2-source.tar.gz"
+
+ version('1.5.2', '817d2a46d87fcef885c8832475b8b247')
+
+ depends_on('zlib')
+
+ def build(self, spec, prefix):
+ plat = sys.platform
+ with working_dir('src'):
+ if plat.startswith('linux'):
+ make('-f', 'Makefile.Linux')
+ elif plat.startswith('darwin'):
+ make('-f', 'Makefile.MacOS')
+ else:
+ raise InstallError("The communication mechanism %s is not"
+ "supported" % plat)
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/subversion/package.py b/var/spack/repos/builtin/packages/subversion/package.py
index 02b7d96378..5d4b998b32 100644
--- a/var/spack/repos/builtin/packages/subversion/package.py
+++ b/var/spack/repos/builtin/packages/subversion/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -27,11 +27,15 @@ from spack import *
class Subversion(Package):
"""Apache Subversion - an open source version control system."""
- homepage = 'https://subversion.apache.org/'
- url = 'http://archive.apache.org/dist/subversion/subversion-1.8.13.tar.gz'
+ homepage = 'https://subversion.apache.org/'
+ url = 'http://archive.apache.org/dist/subversion/subversion-1.8.13.tar.gz'
- version('1.8.13', '8065b3698d799507fb72dd7926ed32b6')
+ version('1.9.5', 'ac9f8ee235f1b667dd6506864af8035aaedfc2d9')
version('1.9.3', 'a92bcfaec4e5038f82c74a7b5bbd2f46')
+ version('1.8.17', 'd1f8d45f97168d6271c58c5b25421cc32954c81b')
+ version('1.8.13', '8065b3698d799507fb72dd7926ed32b6')
+
+ variant('perl', default=False, description='Build with Perl bindings')
depends_on('apr')
depends_on('apr-util')
@@ -39,6 +43,10 @@ class Subversion(Package):
depends_on('sqlite')
depends_on('serf')
+ extends('perl', when='+perl')
+ depends_on('swig@1.3.24:3.0.0', when='+perl')
+ depends_on('perl-term-readkey', when='+perl')
+
# Optional: We need swig if we want the Perl, Python or Ruby
# bindings.
# depends_on('swig')
@@ -60,12 +68,29 @@ class Subversion(Package):
options.append('--with-zlib=%s' % spec['zlib'].prefix)
options.append('--with-sqlite=%s' % spec['sqlite'].prefix)
options.append('--with-serf=%s' % spec['serf'].prefix)
- # options.append('--with-swig=%s' % spec['swig'].prefix)
+
+ if 'swig' in spec:
+ options.append('--with-swig=%s' % spec['swig'].prefix)
+ if 'perl' in spec:
+ options.append('PERL=%s' % spec['perl'].command.path)
configure(*options)
make()
+ if self.run_tests:
+ make('check')
make('install')
+ if spec.satisfies('+perl'):
+ make('swig-pl')
+ if self.run_tests:
+ make('check-swig-pl')
+ make('install-swig-pl-lib')
+ with working_dir(join_path(
+ 'subversion', 'bindings', 'swig', 'perl', 'native')):
+ perl = which('perl')
+ perl('Makefile.PL', 'INSTALL_BASE=%s' % prefix)
+ make('install')
+
# python bindings
# make('swig-py',
# 'swig-pydir=/usr/lib/python2.7/site-packages/libsvn',
@@ -74,10 +99,6 @@ class Subversion(Package):
# 'swig-pydir=/usr/lib/python2.7/site-packages/libsvn',
# 'swig_pydir_extra=/usr/lib/python2.7/site-packages/svn')
- # perl bindings
- # make('swig-pl')
- # make('install-swig-pl')
-
# ruby bindings
# make('swig-rb')
# make('isntall-swig-rb')
diff --git a/var/spack/repos/builtin/packages/suite-sparse/package.py b/var/spack/repos/builtin/packages/suite-sparse/package.py
index aa22e1ecce..429a7f0706 100644
--- a/var/spack/repos/builtin/packages/suite-sparse/package.py
+++ b/var/spack/repos/builtin/packages/suite-sparse/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,11 +32,15 @@ class SuiteSparse(Package):
homepage = 'http://faculty.cse.tamu.edu/davis/suitesparse.html'
url = 'http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-4.5.1.tar.gz'
+ version('4.5.5', '0a5b38af0016f009409a9606d2f1b555')
+ version('4.5.4', 'f6ab689442e64a1624a47aa220072d1b')
version('4.5.3', '8ec57324585df3c6483ad7f556afccbd')
version('4.5.1', 'f0ea9aad8d2d1ffec66a5b6bfeff5319')
- variant('tbb', default=True, description='Build with Intel TBB')
- variant('fpic', default=True, description='Build position independent code (required to link with shared libraries)')
+ variant('tbb', default=False, description='Build with Intel TBB')
+ variant('pic', default=True, description='Build position independent code (required to link with shared libraries)')
+ variant('cuda', default=False, description='Build with CUDA')
+ variant('openmp', default=False, description='Build with OpenMP')
depends_on('blas')
depends_on('lapack')
@@ -46,7 +50,12 @@ class SuiteSparse(Package):
# flags does not seem to be used, which leads to linking errors on Linux.
depends_on('tbb', when='@4.5.3:+tbb')
- patch('tbb_453.patch', when='@4.5.3')
+ depends_on('cuda', when='+cuda')
+
+ patch('tbb_453.patch', when='@4.5.3:+tbb')
+
+ # This patch removes unsupported flags for pgi compiler
+ patch('pgi.patch', when='%pgi')
def install(self, spec, prefix):
# The build system of SuiteSparse is quite old-fashioned.
@@ -55,56 +64,57 @@ class SuiteSparse(Package):
# logic in it. Any kind of customization will need to go through
# filtering of that file
- make_args = ['INSTALL=%s' % prefix]
+ pic_flag = self.compiler.pic_flag if '+pic' in spec else ''
- # inject Spack compiler wrappers
- make_args.extend([
+ make_args = [
+ 'INSTALL=%s' % prefix,
+ # By default, the Makefile uses the Intel compilers if
+ # they are found. The AUTOCC flag disables this behavior,
+ # forcing it to use Spack's compiler wrappers.
'AUTOCC=no',
- 'CC=cc',
- 'CXX=c++',
- 'F77=f77',
- 'CUDA_ROOT =',
- 'GPU_BLAS_PATH =',
- 'GPU_CONFIG =',
- 'CUDA_PATH =',
- 'CUDART_LIB =',
- 'CUBLAS_LIB =',
- 'CUDA_INC_PATH =',
- 'NV20 =',
- 'NV30 =',
- 'NV35 =',
- 'NVCC = echo',
- 'NVCCFLAGS =',
- ])
- if '+fpic' in spec:
- make_args.extend(['CFLAGS=-fPIC', 'FFLAGS=-fPIC'])
-
- # use Spack's metis in CHOLMOD/Partition module,
- # otherwise internal Metis will be compiled
- make_args.extend([
- 'MY_METIS_LIB=-L%s -lmetis' % spec['metis'].prefix.lib,
+ # CUDA=no does NOT disable cuda, it only disables internal search
+ # for CUDA_PATH. If in addition the latter is empty, then CUDA is
+ # completely disabled. See
+ # [SuiteSparse/SuiteSparse_config/SuiteSparse_config.mk] for more.
+ 'CUDA=no',
+ 'CUDA_PATH=%s' % (spec['cuda'].prefix if '+cuda' in spec else ''),
+ 'CFOPENMP=%s' % (self.compiler.openmp_flag
+ if '+openmp' in spec else ''),
+ 'CFLAGS=-O3 %s' % pic_flag,
+ # Both FFLAGS and F77FLAGS are used in SuiteSparse makefiles;
+ # FFLAGS is used in CHOLMOD, F77FLAGS is used in AMD and UMFPACK.
+ 'FFLAGS=%s' % pic_flag,
+ 'F77FLAGS=%s' % pic_flag,
+ # use Spack's metis in CHOLMOD/Partition module,
+ # otherwise internal Metis will be compiled
+ 'MY_METIS_LIB=%s' % spec['metis'].libs.ld_flags,
'MY_METIS_INC=%s' % spec['metis'].prefix.include,
- ])
+ # Make sure Spack's Blas/Lapack is used. Otherwise System's
+ # Blas/Lapack might be picked up. Need to add -lstdc++, following
+ # with the TCOV path of SparseSuite 4.5.1's Suitesparse_config.mk,
+ # even though this fix is ugly
+ 'BLAS=%s' % (spec['blas'].libs.ld_flags + (
+ '-lstdc++' if '@4.5.1' in spec else '')),
+ 'LAPACK=%s' % spec['lapack'].libs.ld_flags,
+ ]
+
+ # SuiteSparse defaults to using '-fno-common -fexceptions' in
+ # CFLAGS, but not all compilers use the same flags for these
+ # optimizations
+ if any([x in spec
+ for x in ('%clang', '%gcc', '%intel')]):
+ make_args += ['CFLAGS+=-fno-common -fexceptions']
+ elif '%pgi' in spec:
+ make_args += ['CFLAGS+=--exceptions']
+
+ if '%xl' in spec or '%xl_r' in spec:
+ make_args += ['CFLAGS+=-DBLAS_NO_UNDERSCORE']
# Intel TBB in SuiteSparseQR
if 'tbb' in spec:
- make_args.extend([
+ make_args += [
'SPQR_CONFIG=-DHAVE_TBB',
'TBB=-L%s -ltbb' % spec['tbb'].prefix.lib,
- ])
-
- # Make sure Spack's Blas/Lapack is used. Otherwise System's
- # Blas/Lapack might be picked up.
- blas = spec['blas'].blas_libs.ld_flags
- lapack = spec['lapack'].lapack_libs.ld_flags
- if '@4.5.1' in spec:
- # adding -lstdc++ is clearly an ugly way to do this, but it follows
- # with the TCOV path of SparseSuite 4.5.1's Suitesparse_config.mk
- blas += ' -lstdc++'
-
- make_args.extend([
- 'BLAS=%s' % blas,
- 'LAPACK=%s' % lapack
- ])
+ ]
make('install', *make_args)
diff --git a/var/spack/repos/builtin/packages/suite-sparse/pgi.patch b/var/spack/repos/builtin/packages/suite-sparse/pgi.patch
new file mode 100644
index 0000000000..f615a57674
--- /dev/null
+++ b/var/spack/repos/builtin/packages/suite-sparse/pgi.patch
@@ -0,0 +1,12 @@
+--- a/SuiteSparse_config/SuiteSparse_config.mk
++++ b/SuiteSparse_config/SuiteSparse_config.mk
+@@ -89,7 +89,8 @@
+
+ # The CF macro is used by SuiteSparse Makefiles as a combination of
+ # CFLAGS, CPPFLAGS, TARGET_ARCH, and system-dependent settings.
+- CF ?= $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $(OPTIMIZATION) -fexceptions -fPIC
++ #CF ?= $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $(OPTIMIZATION) -fexceptions -fPIC
++ CF ?= $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) $(OPTIMIZATION) -fPIC
+
+ #---------------------------------------------------------------------------
+ # OpenMP is used in CHOLMOD
diff --git a/var/spack/repos/builtin/packages/sumaclust/package.py b/var/spack/repos/builtin/packages/sumaclust/package.py
new file mode 100644
index 0000000000..923fb347b4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sumaclust/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Sumaclust(MakefilePackage):
+ """Sumaclust aims to cluster sequences in a way that is fast and exact at
+ the same time."""
+
+ homepage = "https://git.metabarcoding.org/obitools/sumaclust"
+
+ version('1.0.20', '31c7583fbe2e3345d5fe3e9431d9b30c',
+ url="https://git.metabarcoding.org/obitools/sumaclust/uploads/69f757c42f2cd45212c587e87c75a00f/sumaclust_v1.0.20.tar.gz")
+
+ def build(self, spec, prefix):
+ make('CC={0}'.format(spack_cc))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('sumaclust', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/sundials/package.py b/var/spack/repos/builtin/packages/sundials/package.py
index 6ee247b7ea..16cbcbe34f 100644
--- a/var/spack/repos/builtin/packages/sundials/package.py
+++ b/var/spack/repos/builtin/packages/sundials/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -24,126 +24,351 @@
##############################################################################
from spack import *
import os
+import sys
-class Sundials(Package):
+class Sundials(CMakePackage):
"""SUNDIALS (SUite of Nonlinear and DIfferential/ALgebraic equation
Solvers)"""
- homepage = "http://computation.llnl.gov/casc/sundials/"
- url = "http://computation.llnl.gov/projects/sundials-suite-nonlinear-differential-algebraic-equation-solvers/download/sundials-2.6.2.tar.gz"
+ homepage = "https://computation.llnl.gov/projects/sundials"
+ url = "https://computation.llnl.gov/projects/sundials/download/sundials-2.7.0.tar.gz"
+ maintainers = ['cswoodward', 'gardner48']
+ # ==========================================================================
+ # Versions
+ # ==========================================================================
+
+ version('3.1.0', '1a84ca41c7f71067e03d519ddbcd9dae')
+ version('3.0.0', '5163a44cedd7398bddda442ba00313b8')
+ version('2.7.0', 'c304631b9bc82877d7b0e9f4d4fd94d3')
version('2.6.2', '3deeb0ede9f514184c6bd83ecab77d95')
- variant('mpi', default=True, description='Enable MPI support')
- variant('lapack', default=True,
- description='Build with external BLAS/LAPACK libraries')
- variant('klu', default=False,
- description='Build with SuiteSparse KLU libraries')
- variant('superlu', default=False,
- description='Build with SuperLU_MT libraries')
- variant('openmp', default=False, description='Enable OpenMP support')
- variant('pthread', default=True,
- description='Enable POSIX threads support')
-
- depends_on('cmake', type='build')
- depends_on('mpi', when='+mpi')
- depends_on('blas', when='+lapack')
- depends_on('lapack', when='+lapack')
- depends_on('suite-sparse', when='+klu')
- depends_on('superlu-mt+openmp', when='+superlu+openmp')
- depends_on('superlu-mt+pthread', when='+superlu+pthread')
-
- def install(self, spec, prefix):
- cmake_args = std_cmake_args[:]
- cmake_args.extend([
- '-DBUILD_SHARED_LIBS=ON',
- '-DCMAKE_C_FLAGS=-fPIC',
- '-DCMAKE_Fortran_FLAGS=-fPIC',
- '-DEXAMPLES_ENABLE=ON',
- '-DEXAMPLES_INSTALL=ON',
- '-DFCMIX_ENABLE=ON'
+ # ==========================================================================
+ # Variants
+ # ==========================================================================
+
+ # SUNDIALS solvers
+ sun_solvers = ['CVODE', 'CVODES', 'ARKODE', 'IDA', 'IDAS', 'KINSOL']
+
+ for pkg in sun_solvers:
+ variant(pkg, default=True,
+ description='Enable %s solver' % pkg)
+
+ # Real type
+ variant(
+ 'precision',
+ default='double',
+ description='real type precision',
+ values=('single', 'double', 'extended'),
+ multi=False
+ )
+
+ # Index type
+ variant('int64', default=False,
+ description='Use 64bit integers for indices')
+
+ # Parallelism
+ variant('mpi', default=True,
+ description='Enable MPI parallel vector')
+ variant('openmp', default=False,
+ description='Enable OpenMP parallel vector')
+ variant('pthread', default=False,
+ description='Enable Pthreads parallel vector')
+ variant('cuda', default=False,
+ description='Enable CUDA parallel vector')
+ variant('raja', default=False,
+ description='Enable RAJA parallel vector')
+
+ # External libraries
+ variant('lapack', default=False,
+ description='Enable LAPACK direct solvers')
+ variant('klu', default=False,
+ description='Enable KLU sparse, direct solver')
+ variant('superlu-mt', default=False,
+ description='Enable SuperLU_MT sparse, direct solver')
+ variant('hypre', default=False,
+ description='Enable Hypre MPI parallel vector')
+ variant('petsc', default=False,
+ description='Enable PETSc MPI parallel vector')
+
+ # Library type
+ variant('shared', default=True,
+ description='Build shared libraries')
+ variant('static', default=True,
+ description='Build static libraries')
+
+ # Fortran interface
+ variant('fcmix', default=False,
+ description='Enable Fortran interface')
+
+ # Examples
+ variant('examples-c', default=True,
+ description='Enable C examples')
+ variant('examples-cxx', default=False,
+ description='Enable C++ examples')
+ variant('examples-f77', default=True,
+ description='Enable Fortran 77 examples')
+ variant('examples-f90', default=False,
+ description='Enable Fortran 90 examples')
+ variant('examples-cuda', default=False,
+ description='Enable CUDA examples')
+ variant('examples-raja', default=False,
+ description='Enable RAJA examples')
+ variant('examples-install', default=True,
+ description='Install examples')
+
+ # Generic (std-c) math libraries (UNIX only)
+ variant('generic-math', default=True,
+ description='Use generic (std-c) math libraries on unix systems')
+
+ # ==========================================================================
+ # Conflicts
+ # ==========================================================================
+
+ # Options added after v2.6.2
+ conflicts('+hypre', when='@:2.6.2')
+ conflicts('+petsc', when='@:2.6.2')
+
+ # Options added after v2.7.0
+ conflicts('+cuda', when='@:2.7.0')
+ conflicts('+raja', when='@:2.7.0')
+ conflicts('~int64', when='@:2.7.0')
+ conflicts('+examples-cuda', when='@:2.7.0')
+ conflicts('+examples-raja', when='@:2.7.0')
+
+ # External libraries incompatible with 64-bit indices
+ conflicts('+lapack', when='@3.0.0: +int64')
+ conflicts('+hypre', when='+hypre@:2.6.1a +int64')
+
+ # External libraries incompatible with single precision
+ conflicts('+klu', when='precision=single')
+ conflicts('+hypre', when='+hypre@:2.12.0 precision=single')
+
+ # External libraries incompatible with extended (quad) precision
+ conflicts('+lapack', when='precision=extended')
+ conflicts('+superlu-mt', when='precision=extended')
+ conflicts('+klu', when='precision=extended')
+ conflicts('+hypre', when='+hypre@:2.12.0 precision=extended')
+
+ # External libraries that need to be built with MPI
+ conflicts('+hypre', when='~mpi')
+ conflicts('+petsc', when='~mpi')
+
+ # SuperLU_MT interface requires lapack for external blas (before v3.0.0)
+ conflicts('+superlu-mt', when='@:2.7.0 ~lapack')
+
+ # ==========================================================================
+ # Dependencies
+ # ==========================================================================
+
+ # Build dependencies
+ depends_on('cmake@2.8.1:', type='build')
+
+ # MPI related dependencies
+ depends_on('mpi', when='+mpi')
+ depends_on('mpi', when='+hypre')
+ depends_on('mpi', when='+petsc')
+
+ # Other parallelism dependencies
+ depends_on('cuda', when='+cuda')
+ depends_on('raja', when='+raja')
+
+ # External libraries
+ depends_on('blas', when='+lapack')
+ depends_on('lapack', when='+lapack')
+ depends_on('suite-sparse', when='+klu')
+
+ # Require that external libraries built with the same precision
+ depends_on('petsc~double~complex', when='+petsc precision=single')
+ depends_on('petsc+double~complex', when='+petsc precision=double')
+
+ # Require that external libraries built with the same index type
+ depends_on('hypre', when='+hypre')
+ depends_on('hypre~int64', when='+hypre ~int64')
+ depends_on('hypre+int64', when='+hypre +int64')
+ depends_on('petsc', when='+petsc')
+ depends_on('petsc~int64', when='+petsc ~int64')
+ depends_on('petsc+int64', when='+petsc +int64')
+
+ # Require that PETSc is built with MPI
+ depends_on('petsc+mpi', when='+petsc')
+
+ # Require that SuperLU_MT built with external blas
+ depends_on('superlu-mt+blas', when='+superlu-mt')
+
+ # ==========================================================================
+ # Patches
+ # ==========================================================================
+
+ # remove OpenMP header file and function from hypre vector test code
+ patch('test_nvector_parhyp.patch', when='@2.7.0:3.0.0')
+
+ # ==========================================================================
+ # SUNDIALS Settings
+ # ==========================================================================
+
+ def cmake_args(self):
+ spec = self.spec
+
+ def on_off(varstr):
+ return 'ON' if varstr in self.spec else 'OFF'
+
+ fortran_flag = self.compiler.pic_flag
+ if spec.satisfies('%clang platform=darwin'):
+ mpif77 = Executable(self.spec['mpi'].mpif77)
+ libgfortran = LibraryList(mpif77('--print-file-name',
+ 'libgfortran.a', output=str))
+ fortran_flag += ' ' + libgfortran.ld_flags
+
+ # List of CMake arguments
+ # Note: CMAKE_INSTALL_PREFIX and CMAKE_BUILD_TYPE are set automatically
+ args = []
+
+ # SUNDIALS solvers
+ for pkg in self.sun_solvers:
+ args.extend(['-DBUILD_%s=%s' % (pkg, on_off('+' + pkg))])
+
+ # precision
+ args.extend([
+ '-DSUNDIALS_PRECISION=%s' % spec.variants['precision'].value
+ ])
+
+ # index type (v3.0.0 or later)
+ if spec.satisfies('@3.0.0:'):
+ if '+int64' in spec:
+ args.extend(['-DSUNDIALS_INDEX_TYPE=int64_t'])
+ else:
+ args.extend(['-DSUNDIALS_INDEX_TYPE=int32_t'])
+
+ # Fortran interface
+ args.extend(['-DFCMIX_ENABLE=%s' % on_off('+fcmix')])
+
+ # library type
+ args.extend([
+ '-DBUILD_SHARED_LIBS=%s' % on_off('+shared'),
+ '-DBUILD_STATIC_LIBS=%s' % on_off('+static')
+ ])
+
+ # generic (std-c) math libraries
+ args.extend([
+ '-DUSE_GENERIC_MATH=%s' % on_off('+generic-math')
+ ])
+
+ # parallelism
+ args.extend([
+ '-DMPI_ENABLE=%s' % on_off('+mpi'),
+ '-DOPENMP_ENABLE=%s' % on_off('+openmp'),
+ '-DPTHREAD_ENABLE=%s' % on_off('+pthread'),
+ '-DCUDA_ENABLE=%s' % on_off('+cuda'),
+ '-DRAJA_ENABLE=%s' % on_off('+raja')
])
# MPI support
if '+mpi' in spec:
- cmake_args.extend([
- '-DMPI_ENABLE=ON',
- '-DMPI_MPICC={0}'.format(spec['mpi'].mpicc),
- '-DMPI_MPIF77={0}'.format(spec['mpi'].mpif77)
- ])
- else:
- cmake_args.append('-DMPI_ENABLE=OFF')
+ args.extend(['-DMPI_MPICC=%s' % spec['mpi'].mpicc])
+ if 'examples-cxx' in spec:
+ args.extend(['-DMPI_MPICXX=%s' % spec['mpi'].mpicxx])
+ if ('+fcmix' in spec) and ('+examples-f77' in spec):
+ args.extend(['-DMPI_MPIF77=%s' % spec['mpi'].mpif77])
+ if ('+fcmix' in spec) and ('+examples-f90' in spec):
+ args.extend(['-DMPI_MPIF90=%s' % spec['mpi'].mpifc])
# Building with LAPACK and BLAS
if '+lapack' in spec:
- cmake_args.extend([
+ args.extend([
'-DLAPACK_ENABLE=ON',
- '-DLAPACK_LIBRARIES={0}'.format(
- (spec['lapack'].lapack_libs +
- spec['blas'].blas_libs).joined(';')
- )
+ '-DLAPACK_LIBRARIES=%s'
+ % (spec['lapack'].libs + spec['blas'].libs).joined(';')
])
- else:
- cmake_args.append('-DLAPACK_ENABLE=OFF')
# Building with KLU
if '+klu' in spec:
- cmake_args.extend([
+ args.extend([
'-DKLU_ENABLE=ON',
- '-DKLU_INCLUDE_DIR={0}'.format(
- spec['suite-sparse'].prefix.include),
- '-DKLU_LIBRARY_DIR={0}'.format(
- spec['suite-sparse'].prefix.lib)
+ '-DKLU_INCLUDE_DIR=%s' % spec['suite-sparse'].prefix.include,
+ '-DKLU_LIBRARY_DIR=%s' % spec['suite-sparse'].prefix.lib
])
- else:
- cmake_args.append('-DKLU_ENABLE=OFF')
# Building with SuperLU_MT
- if '+superlu' in spec:
- cmake_args.extend([
+ if '+superlu-mt' in spec:
+ if spec.satisfies('@3.0.0:'):
+ args.extend([
+ '-DBLAS_ENABLE=ON',
+ '-DBLAS_LIBRARIES=%s' % spec['blas'].libs
+ ])
+ args.extend([
'-DSUPERLUMT_ENABLE=ON',
- '-DSUPERLUMT_INCLUDE_DIR={0}'.format(
- spec['superlu-mt'].prefix.include),
- '-DSUPERLUMT_LIBRARY_DIR={0}'.format(
- spec['superlu-mt'].prefix.lib)
+ '-DSUPERLUMT_INCLUDE_DIR=%s'
+ % spec['superlu-mt'].prefix.include,
+ '-DSUPERLUMT_LIBRARY_DIR=%s'
+ % spec['superlu-mt'].prefix.lib
])
- if '+openmp' in spec:
- cmake_args.append('-DSUPERLUMT_THREAD_TYPE=OpenMP')
- elif '+pthread' in spec:
- cmake_args.append('-DSUPERLUMT_THREAD_TYPE=Pthread')
+ if spec.satisfies('^superlu-mt+openmp'):
+ args.append('-DSUPERLUMT_THREAD_TYPE=OpenMP')
else:
- msg = 'You must choose either +openmp or +pthread when '
- msg += 'building with SuperLU_MT'
- raise RuntimeError(msg)
- else:
- cmake_args.append('-DSUPERLUMT_ENABLE=OFF')
+ args.append('-DSUPERLUMT_THREAD_TYPE=Pthread')
- # OpenMP support
- if '+openmp' in spec:
- cmake_args.append('-DOPENMP_ENABLE=ON')
- else:
- cmake_args.append('-DOPENMP_ENABLE=OFF')
+ # Building with Hypre
+ if '+hypre' in spec:
+ args.extend([
+ '-DHYPRE_ENABLE=ON',
+ '-DHYPRE_INCLUDE_DIR=%s' % spec['hypre'].prefix.include,
+ '-DHYPRE_LIBRARY_DIR=%s' % spec['hypre'].prefix.lib
+ ])
+
+ # Building with PETSc
+ if '+petsc' in spec:
+ args.extend([
+ '-DPETSC_ENABLE=ON',
+ '-DPETSC_INCLUDE_DIR=%s' % spec['petsc'].prefix.include,
+ '-DPETSC_LIBRARY_DIR=%s' % spec['petsc'].prefix.lib
+ ])
- # POSIX threads support
- if '+pthread' in spec:
- cmake_args.append('-DPTHREAD_ENABLE=ON')
+ # Examples
+ if spec.satisfies('@3.0.0:'):
+ args.extend([
+ '-DEXAMPLES_ENABLE_C=%s' % on_off('+examples-c'),
+ '-DEXAMPLES_ENABLE_CXX=%s' % on_off('+examples-cxx'),
+ '-DEXAMPLES_ENABLE_F77=%s' % on_off('+examples-f77'),
+ '-DEXAMPLES_ENABLE_F90=%s' % on_off('+examples-f90'),
+ '-DEXAMPLES_ENABLE_CUDA=%s' % on_off('+examples-cuda'),
+ '-DEXAMPLES_ENABLE_RAJA=%s' % on_off('+examples-raja')
+ ])
else:
- cmake_args.append('-DPTHREAD_ENABLE=OFF')
+ args.extend([
+ '-DEXAMPLES_ENABLE=%s' % on_off('+examples-c'),
+ '-DCXX_ENABLE=%s' % on_off('+examples-cxx'),
+ '-DF90_ENABLE=%s' % on_off('+examples-f90')
+ ])
+
+ args.extend([
+ '-DEXAMPLES_INSTALL=%s' % on_off('+examples-install')
+ ])
+
+ return args
- with working_dir('build', create=True):
- cmake('..', *cmake_args)
+ # ==========================================================================
+ # Post Install Actions
+ # ==========================================================================
- make()
- make('install')
+ @run_after('install')
+ def post_install(self):
+ """Run after install to fix install name of dynamic libraries
+ on Darwin to have full path and install the LICENSE file."""
+ spec = self.spec
+ prefix = self.spec.prefix
- install('LICENSE', prefix)
+ if (sys.platform == 'darwin'):
+ fix_darwin_install_name(prefix.lib)
- self.filter_compilers()
+ if spec.satisfies('@:3.0.0'):
+ install('LICENSE', prefix)
+ @run_after('install')
def filter_compilers(self):
- """Run after install to tell the Makefiles to use
- the compilers that Spack built the package with.
+ """Run after install to tell the example program Makefiles
+ to use the compilers that Spack built the package with.
If this isn't done, they'll have CC, CPP, and F77 set to
Spack's generic cc and f77. We want them to be bound to
@@ -153,26 +378,101 @@ class Sundials(Package):
dirname = os.path.join(self.prefix, 'examples')
cc_files = [
- 'arkode/C_serial/Makefile', 'arkode/C_parallel/Makefile',
- 'cvode/serial/Makefile', 'cvode/parallel/Makefile',
- 'cvodes/serial/Makefile', 'cvodes/parallel/Makefile',
- 'ida/serial/Makefile', 'ida/parallel/Makefile',
- 'idas/serial/Makefile', 'idas/parallel/Makefile',
- 'kinsol/serial/Makefile', 'kinsol/parallel/Makefile',
- 'nvector/serial/Makefile', 'nvector/parallel/Makefile',
- 'nvector/pthreads/Makefile'
+ 'arkode/C_openmp/Makefile',
+ 'arkode/C_parallel/Makefile',
+ 'arkode/C_parhyp/Makefile',
+ 'arkode/C_serial/Makefile',
+ 'cvode/C_openmp/Makefile',
+ 'cvode/parallel/Makefile',
+ 'cvode/parhyp/Makefile',
+ 'cvode/serial/Makefile',
+ 'cvodes/C_openmp/Makefile',
+ 'cvodes/parallel/Makefile',
+ 'cvodes/serial/Makefile',
+ 'ida/C_openmp/Makefile',
+ 'ida/parallel/Makefile',
+ 'ida/petsc/Makefile',
+ 'ida/serial/Makefile',
+ 'idas/C_openmp/Makefile',
+ 'idas/parallel/Makefile',
+ 'idas/serial/Makefile',
+ 'kinsol/C_openmp/Makefile',
+ 'kinsol/parallel/Makefile',
+ 'kinsol/serial/Makefile',
+ 'nvector/C_openmp/Makefile',
+ 'nvector/parallel/Makefile',
+ 'nvector/parhyp/Makefile',
+ 'nvector/petsc/Makefile',
+ 'nvector/pthreads/Makefile',
+ 'nvector/serial/Makefile',
+ 'sunlinsol/band/Makefile',
+ 'sunlinsol/dense/Makefile',
+ 'sunlinsol/klu/Makefile',
+ 'sunlinsol/lapackband/Makefile',
+ 'sunlinsol/lapackdense/Makefile',
+ 'sunlinsol/pcg/parallel/Makefile',
+ 'sunlinsol/pcg/serial/Makefile',
+ 'sunlinsol/spbcgs/parallel/Makefile',
+ 'sunlinsol/spbcgs/serial/Makefile',
+ 'sunlinsol/spfgmr/parallel/Makefile',
+ 'sunlinsol/spfgmr/serial/Makefile',
+ 'sunlinsol/spgmr/parallel/Makefile',
+ 'sunlinsol/spgmr/serial/Makefile',
+ 'sunlinsol/sptfqmr/parallel/Makefile',
+ 'sunlinsol/sptfqmr/serial/Makefile',
+ 'sunlinsol/superlumt/Makefile',
+ 'sunmatrix/band/Makefile',
+ 'sunmatrix/dense/Makefile',
+ 'sunmatrix/sparse/Makefile'
+ ]
+
+ cxx_files = [
+ 'arkode/CXX_parallel/Makefile',
+ 'arkode/CXX_serial/Makefile'
+ 'cvode/cuda/Makefile',
+ 'cvode/raja/Makefile',
+ 'nvector/cuda/Makefile',
+ 'nvector/raja/Makefile'
]
f77_files = [
- 'arkode/F77_serial/Makefile', 'cvode/fcmix_serial/Makefile',
- 'ida/fcmix_serial/Makefile', 'ida/fcmix_pthreads/Makefile',
+ 'arkode/F77_parallel/Makefile',
+ 'arkode/F77_serial/Makefile',
+ 'cvode/fcmix_parallel/Makefile',
+ 'cvode/fcmix_serial/Makefile',
+ 'ida/fcmix_openmp/Makefile',
+ 'ida/fcmix_parallel/Makefile',
+ 'ida/fcmix_pthreads/Makefile',
+ 'ida/fcmix_serial/Makefile',
+ 'kinsol/fcmix_parallel/Makefile',
'kinsol/fcmix_serial/Makefile'
]
+ f90_files = [
+ 'arkode/F90_parallel/Makefile',
+ 'arkode/F90_serial/Makefile'
+ ]
+
for filename in cc_files:
filter_file(os.environ['CC'], self.compiler.cc,
os.path.join(dirname, filename), **kwargs)
+ for filename in cc_files:
+ filter_file(r'^CPP\s*=.*', self.compiler.cc,
+ os.path.join(dirname, filename), **kwargs)
+
+ for filename in cxx_files:
+ filter_file(os.environ['CXX'], self.compiler.cxx,
+ os.path.join(dirname, filename), **kwargs)
+
+ for filename in cxx_files:
+ filter_file(r'^CPP\s*=.*', self.compiler.cc,
+ os.path.join(dirname, filename), **kwargs)
+
for filename in f77_files:
filter_file(os.environ['F77'], self.compiler.f77,
os.path.join(dirname, filename), **kwargs)
+
+ for filename in f90_files:
+ filter_file(os.environ['FC'], self.compiler.fc,
+ os.path.join(dirname, filename), **kwargs)
diff --git a/var/spack/repos/builtin/packages/sundials/test_nvector_parhyp.patch b/var/spack/repos/builtin/packages/sundials/test_nvector_parhyp.patch
new file mode 100644
index 0000000000..ecb71d4a5f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sundials/test_nvector_parhyp.patch
@@ -0,0 +1,18 @@
+--- a/examples/nvector/parhyp/test_nvector_parhyp.c
++++ b/examples/nvector/parhyp/test_nvector_parhyp.c
+@@ -24,7 +24,6 @@
+ #include "test_nvector.h"
+
+ #include <mpi.h>
+-#include <omp.h>
+
+ #if defined( SUNDIALS_HAVE_POSIX_TIMERS) && defined(_POSIX_TIMERS)
+ #include <time.h>
+@@ -74,7 +73,6 @@ int main(int argc, char *argv[])
+ /* printf("\nRunning with vector length %ld \n \n", veclen); */
+ /* Get processor number and total number of processes */
+ MPI_Init(&argc, &argv);
+- /* omp_set_num_threads(4); */
+ comm = MPI_COMM_WORLD;
+ MPI_Comm_size(comm, &nprocs);
+ MPI_Comm_rank(comm, &myid);
diff --git a/var/spack/repos/builtin/packages/superlu-dist/package.py b/var/spack/repos/builtin/packages/superlu-dist/package.py
index f076358e90..cc7058236a 100644
--- a/var/spack/repos/builtin/packages/superlu-dist/package.py
+++ b/var/spack/repos/builtin/packages/superlu-dist/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,9 +22,9 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
import glob
import os
+from spack import *
class SuperluDist(Package):
@@ -34,6 +34,10 @@ class SuperluDist(Package):
url = "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/superlu_dist_4.1.tar.gz"
version('develop', git='https://github.com/xiaoyeli/superlu_dist', tag='master')
+ version('xsdk-0.2.0', git='https://github.com/xiaoyeli/superlu_dist', tag='xsdk-0.2.0')
+ version('5.2.2', 'a685ef7fb7859b24c8c9d5d5f121a8a5')
+ version('5.2.1', 'af857778ffeb04aea02aa4843e6e8e1d')
+ version('5.1.3', '3a9e88a8469aa7f319f0364364b8da35')
version('5.1.1', '12638c631733a27dcbd87110e9f9cb1e')
version('5.1.0', '6bb86e630bd4bd8650243aed8fd92eb9')
version('5.0.0', '2b53baf1b0ddbd9fcf724992577f0670')
@@ -53,7 +57,7 @@ class SuperluDist(Package):
depends_on('metis@5:')
def install(self, spec, prefix):
- lapack_blas = spec['lapack'].lapack_libs + spec['blas'].blas_libs
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
makefile_inc = []
makefile_inc.extend([
'PLAT = _mac_x',
@@ -61,24 +65,31 @@ class SuperluDist(Package):
'DSUPERLULIB = $(DSuperLUroot)/lib/libsuperlu_dist.a',
'BLASDEF = -DUSE_VENDOR_BLAS',
'BLASLIB = %s' % lapack_blas.ld_flags,
- 'METISLIB = -L%s -lmetis' % spec['metis'].prefix.lib,
- 'PARMETISLIB = -L%s -lparmetis' % spec['parmetis'].prefix.lib,
+ 'METISLIB = %s' % spec['metis'].libs.ld_flags,
+ 'PARMETISLIB = %s' % spec['parmetis'].libs.ld_flags,
'FLIBS =',
'LIBS = $(DSUPERLULIB) $(BLASLIB) $(PARMETISLIB) $(METISLIB)', # noqa
'ARCH = ar',
'ARCHFLAGS = cr',
'RANLIB = true',
'CC = {0}'.format(self.spec['mpi'].mpicc),
- 'CFLAGS = -fPIC -std=c99 -O2 -I%s -I%s %s' % (
- spec['parmetis'].prefix.include,
- spec['metis'].prefix.include,
- '-D_LONGINT' if '+int64' in spec else ''),
- 'NOOPTS = -fPIC -std=c99',
+ 'CFLAGS = %s %s -O2 %s %s %s' % (
+ self.compiler.pic_flag,
+ '' if '%pgi' in spec else '-std=c99',
+ spec['parmetis'].headers.cpp_flags,
+ spec['metis'].headers.cpp_flags,
+ '-D_LONGINT' if '+int64' in spec and not
+ self.spec.satisfies('@5.2.0:') else ''),
+ 'XSDK_INDEX_SIZE = %s' % ('64' if '+int64' in spec else '32'),
+ 'NOOPTS = %s -std=c99' % (
+ self.compiler.pic_flag),
'FORTRAN = {0}'.format(self.spec['mpi'].mpif77),
'F90FLAGS = -O2',
'LOADER = {0}'.format(self.spec['mpi'].mpif77),
'LOADOPTS =',
- 'CDEFS = -DAdd_'
+ 'CDEFS = %s' % ("-DNoChange"
+ if '%xl' in spec or '%xl_r' in spec
+ else "-DAdd_")
])
with open('make.inc', 'w') as fh:
diff --git a/var/spack/repos/builtin/packages/superlu-mt/package.py b/var/spack/repos/builtin/packages/superlu-mt/package.py
index ea94c2d4c5..99ecdcc642 100644
--- a/var/spack/repos/builtin/packages/superlu-mt/package.py
+++ b/var/spack/repos/builtin/packages/superlu-mt/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -86,7 +86,7 @@ class SuperluMt(Package):
if '+blas' in spec:
config.extend([
'BLASDEF = -DUSE_VENDOR_BLAS',
- 'BLASLIB = {0}'.format(spec['blas'].blas_libs.ld_flags)
+ 'BLASLIB = {0}'.format(spec['blas'].libs.ld_flags)
])
else:
config.append('BLASLIB = ../lib/libblas$(PLAT).a')
diff --git a/var/spack/repos/builtin/packages/superlu/package.py b/var/spack/repos/builtin/packages/superlu/package.py
index 829949e504..72f13ffde7 100644
--- a/var/spack/repos/builtin/packages/superlu/package.py
+++ b/var/spack/repos/builtin/packages/superlu/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,8 +38,8 @@ class Superlu(Package):
version('5.2.1', '3a1a9bff20cb06b7d97c46d337504447')
version('4.3', 'b72c6309f25e9660133007b82621ba7c')
- variant('fpic', default=False,
- description='Build with position independent code')
+ variant('pic', default=True,
+ description='Build with position independent code')
depends_on('cmake', when='@5.2.1:', type='build')
depends_on('blas')
@@ -48,10 +48,10 @@ class Superlu(Package):
def install(self, spec, prefix):
cmake_args = [
'-Denable_blaslib=OFF',
- '-DBLAS_blas_LIBRARY={0}'.format(spec['blas'].blas_libs.joined())
+ '-DBLAS_blas_LIBRARY={0}'.format(spec['blas'].libs.joined())
]
- if '+fpic' in spec:
+ if '+pic' in spec:
cmake_args.extend([
'-DCMAKE_POSITION_INDEPENDENT_CODE=ON'
])
@@ -76,7 +76,7 @@ class Superlu(Package):
'SUPERLULIB = $(SuperLUroot)/lib/libsuperlu_{0}.a' \
.format(self.spec.version),
'BLASDEF = -DUSE_VENDOR_BLAS',
- 'BLASLIB = {0}'.format(spec['blas'].blas_libs.ld_flags),
+ 'BLASLIB = {0}'.format(spec['blas'].libs.ld_flags),
# or BLASLIB = -L/usr/lib64 -lblas
'TMGLIB = libtmglib.a',
'LIBS = $(SUPERLULIB) $(BLASLIB)',
@@ -89,7 +89,7 @@ class Superlu(Package):
'CDEFS = -DAdd_'
])
- if '+fpic' in spec:
+ if '+pic' in spec:
config.extend([
# Use these lines instead when pic_flag capability arrives
'CFLAGS = -O3 {0}'.format(self.compiler.pic_flag),
@@ -117,4 +117,4 @@ class Superlu(Package):
headers = glob.glob(join_path('SRC', '*.h'))
mkdir(prefix.include)
for h in headers:
- install(h, prefix.include)
+ install(h, prefix.include)
diff --git a/var/spack/repos/builtin/packages/sw4lite/package.py b/var/spack/repos/builtin/packages/sw4lite/package.py
new file mode 100644
index 0000000000..868fc88ec2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sw4lite/package.py
@@ -0,0 +1,98 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Sw4lite(MakefilePackage):
+ """Sw4lite is a bare bone version of SW4 intended for testing
+ performance optimizations in a few important numerical kernels of SW4."""
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "https://geodynamics.org/cig/software/sw4"
+ url = "https://github.com/geodynamics/sw4lite/archive/v1.0.zip"
+
+ version('develop', git='https://github.com/geodynamics/sw4lite',
+ branch='master')
+ version('1.0', '3d911165f4f2ff6d5f9c1bd56ab6723f')
+
+ variant('openmp', default=True, description='Build with OpenMP support')
+ variant('precision', default='double', values=('float', 'double'),
+ multi=False, description='Floating point precision')
+ variant('ckernel', default=False, description='C or Fortran kernel')
+
+ depends_on('blas')
+ depends_on('lapack')
+ depends_on('mpi')
+
+ parallel = False
+
+ @property
+ def build_targets(self):
+ targets = []
+ spec = self.spec
+
+ if spec.variants['precision'].value == 'double':
+ cxxflags = ['-I../src', '-I../src/double']
+ else:
+ cxxflags = ['-I../src', '-I../src/float']
+ cflags = []
+ fflags = []
+
+ if '+openmp' in self.spec:
+ cflags.append('-DSW4_OPENMP')
+ cflags.append(self.compiler.openmp_flag)
+ cxxflags.append('-DSW4_OPENMP')
+ cxxflags.append(self.compiler.openmp_flag)
+ fflags.append(self.compiler.openmp_flag)
+
+ if spec.variants['ckernel'].value is True:
+ cxxflags.append('-DSW4_CROUTINES')
+ targets.append('ckernel=yes')
+
+ targets.append('FC=' + spec['mpi'].mpifc)
+ targets.append('CXX=' + spec['mpi'].mpicxx)
+
+ targets.append('CFLAGS={0}'.format(' '.join(cflags)))
+ targets.append('CXXFLAGS={0}'.format(' '.join(cxxflags)))
+ targets.append('FFLAGS={0}'.format(' '.join(fflags)))
+
+ targets.append('EXTRA_CXX_FLAGS=')
+ targets.append('EXTRA_FORT_FLAGS=')
+ lapack_blas = spec['lapack'].libs + spec['blas'].libs
+ if spec.satisfies('%gcc'):
+ targets.append('EXTRA_LINK_FLAGS={0} -lgfortran'
+ .format(lapack_blas.ld_flags))
+ else:
+ targets.append('EXTRA_LINK_FLAGS={0}'.format(lapack_blas.ld_flags))
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ exe_name = glob.glob('*/sw4lite')[0]
+ install(exe_name, prefix.bin)
+ install_tree('tests', prefix.tests)
diff --git a/var/spack/repos/builtin/packages/swarm/package.py b/var/spack/repos/builtin/packages/swarm/package.py
new file mode 100644
index 0000000000..0f52b9774e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/swarm/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Swarm(MakefilePackage):
+ """A robust and fast clustering method for amplicon-based studies."""
+
+ homepage = "https://github.com/torognes/swarm"
+ url = "https://github.com/torognes/swarm/archive/v2.1.13.tar.gz"
+
+ version('2.1.13', 'ab6aff0ba5d20a53b9f13f8f3d85839f')
+
+ build_directory = 'src'
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('scripts', prefix.scripts)
+ install_tree('man', prefix.share.man)
diff --git a/var/spack/repos/builtin/packages/swfft/package.py b/var/spack/repos/builtin/packages/swfft/package.py
new file mode 100644
index 0000000000..aeb7e00293
--- /dev/null
+++ b/var/spack/repos/builtin/packages/swfft/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Swfft(MakefilePackage):
+ """A stand-alone version of HACC's distributed-memory, pencil-decomposed,
+ parallel 3D FFT."""
+
+ homepage = 'https://xgitlab.cels.anl.gov/hacc/SWFFT'
+
+ url = "https://xgitlab.cels.anl.gov/hacc/SWFFT/repository/v1.0/archive.tar.gz"
+
+ version('1.0', '0fbc34544b97ba9c3fb19ef2d7a0f076')
+ version('develop', git='https://xgitlab.cels.anl.gov/hacc/SWFFT',
+ branch='master')
+
+ depends_on('mpi')
+ depends_on('fftw')
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('build/CheckDecomposition', prefix.bin)
+ install('build/TestDfft', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/swiftsim/package.py b/var/spack/repos/builtin/packages/swiftsim/package.py
index 1c424b5ca0..4f094c561f 100644
--- a/var/spack/repos/builtin/packages/swiftsim/package.py
+++ b/var/spack/repos/builtin/packages/swiftsim/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -58,13 +58,6 @@ class Swiftsim(AutotoolsPackage):
tty.warn('This is needed to clone SWIFT repository')
spack_env.set('GIT_SSL_NO_VERIFY', 1)
- def autoreconf(self, spec, prefix):
- libtoolize()
- aclocal()
- autoconf()
- autogen = Executable('./autogen.sh')
- autogen()
-
def configure_args(self):
return ['--prefix=%s' % self.prefix,
'--enable-mpi' if '+mpi' in self.spec else '--disable-mpi',
diff --git a/var/spack/repos/builtin/packages/swig/package.py b/var/spack/repos/builtin/packages/swig/package.py
index b43246dcee..e9148333de 100644
--- a/var/spack/repos/builtin/packages/swig/package.py
+++ b/var/spack/repos/builtin/packages/swig/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,10 +22,13 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
+import os
+
+
from spack import *
-class Swig(Package):
+class Swig(AutotoolsPackage):
"""SWIG is an interface compiler that connects programs written in
C and C++ with scripting languages such as Perl, Python, Ruby,
and Tcl. It works by taking the declarations found in C/C++
@@ -36,18 +39,22 @@ class Swig(Package):
application."""
homepage = "http://www.swig.org"
- url = "http://prdownloads.sourceforge.net/swig/swig-3.0.8.tar.gz"
+ url = "http://prdownloads.sourceforge.net/swig/swig-3.0.12.tar.gz"
+ version('3.0.12', '82133dfa7bba75ff9ad98a7046be687c')
+ version('3.0.11', '13732eb0f1ab2123d180db8425c1edea')
version('3.0.10', 'bb4ab8047159469add7d00910e203124')
- version('3.0.8', 'c96a1d5ecb13d38604d7e92148c73c97')
- version('3.0.2', '62f9b0d010cef36a13a010dc530d0d41')
+ version('3.0.8', 'c96a1d5ecb13d38604d7e92148c73c97')
+ version('3.0.2', '62f9b0d010cef36a13a010dc530d0d41')
version('2.0.12', 'c3fb0b2d710cc82ed0154b91e43085a4')
- version('2.0.2', 'eaf619a4169886923e5f828349504a29')
+ version('2.0.2', 'eaf619a4169886923e5f828349504a29')
version('1.3.40', '2df766c9e03e02811b1ab4bba1c7b9cc')
depends_on('pcre')
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
- make()
- make('install')
+ build_directory = 'spack-build'
+
+ @run_after('install')
+ def create_symlink(self):
+ with working_dir(self.prefix.bin):
+ os.symlink('swig', 'swig%i.0' % self.spec.version[0])
diff --git a/var/spack/repos/builtin/packages/symengine/package.py b/var/spack/repos/builtin/packages/symengine/package.py
index f3fc13474c..844e0c2e5e 100644
--- a/var/spack/repos/builtin/packages/symengine/package.py
+++ b/var/spack/repos/builtin/packages/symengine/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,91 +23,105 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
-class Symengine(Package):
+class Symengine(CMakePackage):
"""SymEngine is a fast symbolic manipulation library, written in C++."""
homepage = "https://github.com/symengine/symengine"
url = "https://github.com/symengine/symengine/archive/v0.2.0.tar.gz"
+ version('0.3.0', 'e61d7513cca4963cd062616891de54c6')
version('0.2.0', '45401561add36a13c1f0b0c5f8d7422d')
version('0.1.0', '41ad7daed61fc5a77c285eb6c7303425')
version('develop', git='https://github.com/symengine/symengine.git')
- variant('flint', default=True,
+ variant('boostmp', default=False,
+ description='Compile with Boost multi-precision integer library')
+ variant('flint', default=False,
description='Compile with Flint integer library')
+ variant('llvm', default=False,
+ description='Compile with LLVM JIT compiler support')
variant('mpc', default=True,
description='Compile with MPC library')
variant('mpfr', default=True,
description='Compile with MPFR library')
+ variant('openmp', default=False,
+ description='Enable OpenMP support')
variant('piranha', default=False,
description='Compile with Piranha integer library')
variant('thread_safe', default=True,
description='Enable thread safety option')
- variant('openmp', default=False,
- description='Enable OpenMP support')
variant('shared', default=True,
description='Enables the build of shared libraries')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
- # Build dependencies
- depends_on('cmake', type='build')
+ # NOTE: mpir is a drop-in replacement for gmp
+ # NOTE: [mpc,mpfr,flint,piranha] could also be built against mpir
+ depends_on('boost', when='+boostmp')
+ depends_on('gmp', when='~boostmp')
+ depends_on('llvm', when='+llvm')
+ depends_on('mpc', when='+mpc~boostmp')
+ depends_on('mpfr', when='+mpfr~boostmp')
+ depends_on('flint', when='+flint~boostmp')
+ depends_on('piranha', when='+piranha~flint~boostmp')
- # Other dependencies
- depends_on('gmp') # mpir is a drop-in replacement for this
- depends_on('mpc', when='+mpc') # Could also be built against mpir
- depends_on('mpfr', when='+mpfr') # Could also be built against mpir
- depends_on('flint', when='+flint') # Could also be built against mpir
- depends_on('piranha', when='+piranha~flint') # Could also be built against mpir # NOQA
-
- def install(self, spec, prefix):
+ def cmake_args(self):
+ spec = self.spec
options = []
- options.extend(std_cmake_args)
-
- # CMAKE_BUILD_TYPE should be Debug | Release
- for word in options[:]:
- if word.startswith('-DCMAKE_BUILD_TYPE'):
- options.remove(word)
# See https://github.com/symengine/symengine/blob/master/README.md
# for build options
options.extend([
- '-DCMAKE_BUILD_TYPE=Release',
'-DWITH_SYMENGINE_RCP:BOOL=ON',
'-DWITH_SYMENGINE_THREAD_SAFE:BOOL=%s' % (
'ON' if ('+thread_safe' or '+openmp') in spec else 'OFF'),
- '-DBUILD_TESTS:BOOL=ON',
+ '-DBUILD_TESTS:BOOL=%s' % (
+ 'ON' if self.run_tests else 'OFF'),
'-DBUILD_BENCHMARKS:BOOL=ON',
- '-DWITH_MPC:BOOL=%s' % (
- 'ON' if '+mpc' in spec else 'OFF'),
- '-DWITH_MPFR:BOOL=%s' % (
- 'ON' if '+mpfr' in spec else 'OFF'),
- '-DINTEGER_CLASS:STRING=gmp',
+ '-DWITH_LLVM:BOOL=%s' % (
+ 'ON' if '+llvm' in spec else 'OFF'),
'-DWITH_OPENMP:BOOL=%s' % (
'ON' if '+openmp' in spec else 'OFF'),
'-DBUILD_SHARED_LIBS:BOOL=%s' % (
'ON' if '+shared' in spec else 'OFF'),
])
- if '+flint' in spec:
+ if sys.platform == 'darwin':
options.extend([
- '-DWITH_FLINT:BOOL=ON',
- '-DINTEGER_CLASS:STRING=flint'
+ '-DCMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOL=on'
])
- elif '+piranha' in spec:
+
+ if '+boostmp' in spec:
options.extend([
- '-DWITH_PIRANHA:BOOL=ON',
- '-DINTEGER_CLASS:STRING=piranha'
+ '-DINTEGER_CLASS:STRING=boostmp',
+ '-DBoost_INCLUDE_DIR=%s' % spec['boost'].prefix.include,
+ '-DWITH_MPC:BOOL=OFF',
+ '-DWITH_MPFR:BOOL=OFF',
])
else:
options.extend([
- '-DINTEGER_CLASS:STRING=gmp'
+ '-DWITH_MPC:BOOL=%s' % (
+ 'ON' if '+mpc' in spec else 'OFF'),
+ '-DWITH_MPFR:BOOL=%s' % (
+ 'ON' if '+mpfr' in spec else 'OFF'),
])
+ if '+flint' in spec:
+ options.extend([
+ '-DWITH_FLINT:BOOL=ON',
+ '-DINTEGER_CLASS:STRING=flint'
+ ])
+ elif '+piranha' in spec:
+ options.extend([
+ '-DWITH_PIRANHA:BOOL=ON',
+ '-DINTEGER_CLASS:STRING=piranha'
+ ])
+ else:
+ options.extend([
+ '-DINTEGER_CLASS:STRING=gmp'
+ ])
- with working_dir('spack-build', create=True):
- cmake('..', *options)
-
- make()
- make('install')
- if self.run_tests:
- ctest()
+ return options
diff --git a/var/spack/repos/builtin/packages/sympol/package.py b/var/spack/repos/builtin/packages/sympol/package.py
index 7ce4995f03..215c23ae98 100644
--- a/var/spack/repos/builtin/packages/sympol/package.py
+++ b/var/spack/repos/builtin/packages/sympol/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,14 +26,14 @@
from spack import *
-class Sympol(Package):
+class Sympol(CMakePackage):
"""SymPol is a C++ tool to work with symmetric polyhedra"""
homepage = "http://www.math.uni-rostock.de/~rehn/software/sympol.html"
url = "http://www.math.uni-rostock.de/~rehn/software/sympol-0.1.8.tar.gz"
version('0.1.8', '7cba1997f8532c754cb7259bf70caacb')
- depends_on("cmake", type='build')
+ depends_on("cmake@2.6:", type="build")
depends_on("bliss")
depends_on("boost")
@@ -41,8 +41,3 @@ class Sympol(Package):
depends_on("lrslib")
patch("lrs_mp_close.patch")
-
- def install(self, spec, prefix):
- cmake(".", *std_cmake_args)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/sz/package.py b/var/spack/repos/builtin/packages/sz/package.py
new file mode 100644
index 0000000000..5ff44d18b2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sz/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Sz(AutotoolsPackage):
+ """Error-bounded Lossy Compressor for HPC Data."""
+
+ homepage = "https://collab.cels.anl.gov/display/ESR/SZ"
+ url = "https://github.com/disheng222/SZ/archive/v1.4.11.0.tar.gz"
+
+ version('develop', git='https://github.com/disheng222/SZ.git',
+ branch='master')
+ version('1.4.11.0', '10dee28b3503821579ce35a50e352cc6')
+ version('1.4.10.0', '82e23dc5a51bcce1f70ba7e3b68a5965')
+ version('1.4.9.2', '028ce90165b7a4c4051d4c0189f193c0')
+
+ variant('fortran', default=False,
+ description='Enable fortran compilation')
+
+ def configure_args(self):
+ args = []
+ if '+fortran' in self.spec:
+ args += ['--enable-fortran']
+ else:
+ args += ['--disable-fortran']
+ return args
diff --git a/var/spack/repos/builtin/packages/tabix/package.py b/var/spack/repos/builtin/packages/tabix/package.py
new file mode 100644
index 0000000000..85c1b03e59
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tabix/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tabix(MakefilePackage):
+ """Generic indexer for TAB-delimited genome position files"""
+
+ homepage = "https://github.com/samtools/tabix"
+ url = "https://github.com/samtools/tabix"
+
+ version('2013-12-16', git='https://github.com/samtools/tabix.git', commit='1ae158ac79b459f5feeed7490c67519b14ce9f35')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('python', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.share.man.man1)
+ install('tabix', prefix.bin)
+ install('bgzip', prefix.bin)
+ install('tabix.py', prefix.bin)
+ install('tabix.1', prefix.share.man.man1)
+ install('tabix.tex', prefix.share)
+ install('TabixReader.java', prefix.bin)
+ install('libtabix.a', prefix.lib)
+ install_tree('perl', prefix.perl)
+ install_tree('python', prefix.python)
diff --git a/var/spack/repos/builtin/packages/talloc/package.py b/var/spack/repos/builtin/packages/talloc/package.py
new file mode 100644
index 0000000000..b2d7160a00
--- /dev/null
+++ b/var/spack/repos/builtin/packages/talloc/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Talloc(AutotoolsPackage):
+ """Talloc provides a hierarchical, reference counted memory pool system
+ with destructors. It is the core memory allocator used in Samba."""
+
+ homepage = "https://talloc.samba.org"
+ url = "https://www.samba.org/ftp/talloc/talloc-2.1.9.tar.gz"
+
+ version('2.1.9', '19ba14eba97d79a169fa92ea824d2b9e')
diff --git a/var/spack/repos/builtin/packages/tar/argp-pgi.patch b/var/spack/repos/builtin/packages/tar/argp-pgi.patch
new file mode 100644
index 0000000000..d4f2ccbdc9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/argp-pgi.patch
@@ -0,0 +1,25 @@
+From 8b3e22b18791f2148da46e60040fc4d9270936b5 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Tue, 14 Feb 2017 08:40:23 -0800
+Subject: argp: port to PGI 16.10
+
+* gnu/argp-pin.c (dummy): Declare as needed to make file nonempty.
+
+diff --git a/gnu/argp-pin.c b/gnu/argp-pin.c
+index 261191f..64d831d 100644
+--- a/gnu/argp-pin.c
++++ b/gnu/argp-pin.c
+@@ -24,3 +24,10 @@ char *program_invocation_short_name = 0;
+ #ifndef HAVE_PROGRAM_INVOCATION_NAME
+ char *program_invocation_name = 0;
+ #endif
++
++#if (defined HAVE_PROGRAM_INVOCATION_SHORT_NAME \
++ && defined HAVE_PROGRAM_INVOCATION_NAME)
++/* This declaration is solely to ensure that after preprocessing
++ this file is never empty. */
++typedef int dummy;
++#endif
+--
+cgit v1.0-41-gc330
+
diff --git a/var/spack/repos/builtin/packages/tar/config-pgi.patch b/var/spack/repos/builtin/packages/tar/config-pgi.patch
new file mode 100644
index 0000000000..fb6ebd5b2a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/config-pgi.patch
@@ -0,0 +1,10 @@
+--- a/config.h.in
++++ b/config.h.in
+@@ -2182,6 +2182,7 @@
+ ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \
+ : (199901L <= __STDC_VERSION__ \
+ && !defined __HP_cc \
++ && !defined __PGI \
+ && !(defined __SUNPRO_C && __STDC__))) \
+ && !defined _GL_EXTERN_INLINE_STDHEADER_BUG)
+ # define _GL_INLINE inline
diff --git a/var/spack/repos/builtin/packages/tar/gnutar-configure-xattrs.patch b/var/spack/repos/builtin/packages/tar/gnutar-configure-xattrs.patch
index e5c183b720..8b65ebab22 100644
--- a/var/spack/repos/builtin/packages/tar/gnutar-configure-xattrs.patch
+++ b/var/spack/repos/builtin/packages/tar/gnutar-configure-xattrs.patch
@@ -1,3 +1,7 @@
+Fixes major build errors on macOS
+
+See http://lists.gnu.org/archive/html/bug-tar/2014-08/msg00001.html
+
diff --git a/Makefile.in b/Makefile.in
index f9f1d1d..b403e46 100644
--- a/Makefile.in
@@ -479,4 +483,4 @@ index 82b2d46..42daaef 100644
-tar_LDADD += -lattr
-endif
--
-1.9.3 \ No newline at end of file
+1.9.3
diff --git a/var/spack/repos/builtin/packages/tar/package.py b/var/spack/repos/builtin/packages/tar/package.py
index 7b6313827f..d6b660016a 100644
--- a/var/spack/repos/builtin/packages/tar/package.py
+++ b/var/spack/repos/builtin/packages/tar/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,13 +28,15 @@ from spack import *
class Tar(AutotoolsPackage):
"""GNU Tar provides the ability to create tar archives, as well as various
other kinds of manipulation."""
+
homepage = "https://www.gnu.org/software/tar/"
- url = "https://ftp.gnu.org/gnu/tar/tar-1.28.tar.gz"
+ url = "https://ftp.gnu.org/gnu/tar/tar-1.29.tar.gz"
version('1.29', 'cae466e6e58c7292355e7080248f244db3a4cf755f33f4fa25ca7f9a7ed09af0')
version('1.28', '6ea3dbea1f2b0409b234048e021a9fd7')
- # see http://lists.gnu.org/archive/html/bug-tar/2014-08/msg00001.html and
- # https://github.com/Homebrew/homebrew-core/commit/aef9a1792de4648d0322b4b04d32287532f046bb
- # TODO: when=sys.platform=='darwin' ?
+ patch('tar-pgi.patch', when='@1.29')
+ patch('config-pgi.patch', when='@:1.29')
+ patch('se-selinux.patch', when='@:1.29')
+ patch('argp-pgi.patch', when='@:1.29')
patch('gnutar-configure-xattrs.patch', when='@1.28')
diff --git a/var/spack/repos/builtin/packages/tar/se-selinux.patch b/var/spack/repos/builtin/packages/tar/se-selinux.patch
new file mode 100644
index 0000000000..1146b9838e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/se-selinux.patch
@@ -0,0 +1,66 @@
+From e041ac5f63e23b20c322f2777d6330074c8a7215 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Tue, 14 Feb 2017 08:46:05 -0800
+Subject: selinux-h: port to PGI 16.10
+
+* gnu/se-selinux.in.h: Don't assume that include_next skips over
+duplicate -I DIR options.
+
+diff --git a/gnu/se-selinux.in.h b/gnu/se-selinux.in.h
+index cd19951..1cf7c00 100644
+--- a/gnu/se-selinux.in.h
++++ b/gnu/se-selinux.in.h
+@@ -14,26 +14,25 @@
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+-#ifndef _@GUARD_PREFIX@_SELINUX_SELINUX_H
+-# define _@GUARD_PREFIX@_SELINUX_SELINUX_H
+-
+-# if __GNUC__ >= 3
++#if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+-# endif
++#endif
+ @PRAGMA_COLUMNS@
+
+-# if HAVE_SELINUX_SELINUX_H
++#if HAVE_SELINUX_SELINUX_H
+
+ #@INCLUDE_NEXT@ @NEXT_SELINUX_SELINUX_H@
+
+-# else
++#else
++# if !defined _@GUARD_PREFIX@_SELINUX_SELINUX_H
++# define _@GUARD_PREFIX@_SELINUX_SELINUX_H
+
+ # include <sys/types.h>
+ # include <errno.h>
+
+-#ifndef _GL_INLINE_HEADER_BEGIN
+- #error "Please include config.h first."
+-#endif
++# ifndef _GL_INLINE_HEADER_BEGIN
++ #error "Please include config.h first."
++# endif
+ _GL_INLINE_HEADER_BEGIN
+ # ifndef SE_SELINUX_INLINE
+ # define SE_SELINUX_INLINE _GL_INLINE
+@@ -114,10 +113,10 @@ matchpathcon_init_prefix (char const *path _GL_UNUSED_PARAMETER,
+ # define GNULIB_defined_security_types 1
+ # endif
+
+-#ifndef _GL_INLINE_HEADER_BEGIN
+- #error "Please include config.h first."
+-#endif
++# ifndef _GL_INLINE_HEADER_BEGIN
++ #error "Please include config.h first."
++# endif
+ _GL_INLINE_HEADER_BEGIN
+
+ # endif
+-#endif /* _@GUARD_PREFIX@_SELINUX_SELINUX_H */
++#endif
+--
+cgit v1.0-41-gc330
+
diff --git a/var/spack/repos/builtin/packages/tar/tar-pgi.patch b/var/spack/repos/builtin/packages/tar/tar-pgi.patch
new file mode 100644
index 0000000000..1cfed1839a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tar/tar-pgi.patch
@@ -0,0 +1,66 @@
+From 2be02a7c9afa5b4f01261e5b66c64217f7f3c29a Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Tue, 14 Feb 2017 08:55:05 -0800
+Subject: Fix incompatibility with PGI 16.10
+
+* src/tar.c (options): Fix incompatibility with the C standard,
+which says that arguments to macro calls cannot contain # directives.
+
+diff --git a/src/tar.c b/src/tar.c
+index fd29cd3..ea68c82 100644
+--- a/src/tar.c
++++ b/src/tar.c
+@@ -548,11 +548,11 @@ static struct argp_option options[] = {
+ N_("cancel the effect of --delay-directory-restore option"), GRID+1 },
+ {"sort", SORT_OPTION, N_("ORDER"), 0,
+ #if D_INO_IN_DIRENT
+- N_("directory sorting order: none (default), name or inode"
++ N_("directory sorting order: none (default), name or inode")
+ #else
+- N_("directory sorting order: none (default) or name"
++ N_("directory sorting order: none (default) or name")
+ #endif
+- ), GRID+1 },
++ , GRID+1 },
+ #undef GRID
+
+ #define GRID 55
+@@ -1758,7 +1758,7 @@ parse_opt (int key, char *arg, struct argp_state *state)
+ case GROUP_MAP_OPTION:
+ group_map_read (arg);
+ break;
+-
++
+ case MODE_OPTION:
+ mode_option = mode_compile (arg);
+ if (!mode_option)
+@@ -1829,7 +1829,7 @@ parse_opt (int key, char *arg, struct argp_state *state)
+ case OWNER_MAP_OPTION:
+ owner_map_read (arg);
+ break;
+-
++
+ case QUOTE_CHARS_OPTION:
+ for (;*arg; arg++)
+ set_char_quoting (NULL, *arg, 1);
+@@ -2123,7 +2123,7 @@ find_argp_option (struct argp *ap, int key)
+ {
+ struct argp_option const *p = NULL;
+ struct argp_child const *child;
+-
++
+ p = find_argp_option_key (ap->options, key);
+ if (!p && ap->children)
+ {
+@@ -2136,7 +2136,7 @@ find_argp_option (struct argp *ap, int key)
+ }
+ return p;
+ }
+-
++
+ static const char *tar_authors[] = {
+ "John Gilmore",
+ "Jay Fenlason",
+--
+cgit v1.0-41-gc330
+
diff --git a/var/spack/repos/builtin/packages/targetp/package.py b/var/spack/repos/builtin/packages/targetp/package.py
new file mode 100644
index 0000000000..5b7fde557c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/targetp/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Targetp(Package):
+ """TargetP predicts the subcellular location of eukaryotic protein sequences.
+
+ Note: A manual download is required for TargetP.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "http://www.cbs.dtu.dk/services/TargetP/"
+ url = "file://{0}/targetp-1.1b.Linux.tar.gz".format(os.getcwd())
+
+ version('1.1b', '80233d0056e11abfd22a4ce73d1808c6')
+
+ depends_on('perl', type='run')
+ depends_on('awk', type='run')
+ depends_on('chlorop')
+ depends_on('signalp')
+
+ def patch(self):
+ targetp = FileFilter('targetp')
+ targetp.filter('TARGETP=', '#TARGETP=')
+ targetp.filter('CHLOROP=/usr/cbs/bio/bin/chlorop',
+ self.spec['chlorop'].prefix.bin.chlorop)
+ targetp.filter('SIGNALP=/usr/cbs/bio/bin/signalp',
+ self.spec['signalp'].prefix.signalp)
+ targetp.filter('TMP=/scratch', 'TMP=/tmp')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('etc', prefix.etc)
+ install_tree('how', prefix.how)
+ install_tree('test', prefix.test)
+ install_tree('tmp', prefix.tmp)
+ install('targetp', prefix.targetp)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('TARGETP', self.prefix)
+ run_env.prepend_path('PATH', self.prefix)
diff --git a/var/spack/repos/builtin/packages/task/package.py b/var/spack/repos/builtin/packages/task/package.py
index 785023fd03..b4fdd020de 100644
--- a/var/spack/repos/builtin/packages/task/package.py
+++ b/var/spack/repos/builtin/packages/task/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,22 +25,15 @@
from spack import *
-class Task(Package):
+class Task(CMakePackage):
"""Feature-rich console based todo list manager"""
homepage = "http://www.taskwarrior.org"
url = "http://taskwarrior.org/download/task-2.4.4.tar.gz"
version('2.4.4', '517450c4a23a5842df3e9905b38801b3')
- depends_on('cmake', type='build')
- depends_on("gnutls")
- depends_on("libuuid")
- # depends_on("gcc@4.8:")
+ depends_on('cmake@2.8:', type='build')
+ depends_on('gnutls')
+ depends_on('libuuid')
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('-DCMAKE_BUILD_TYPE=release',
- '..',
- *std_cmake_args)
- make()
- make("install")
+ conflicts('%gcc@:4.7')
diff --git a/var/spack/repos/builtin/packages/taskd/package.py b/var/spack/repos/builtin/packages/taskd/package.py
index bfe77aaa5c..56adbf619f 100644
--- a/var/spack/repos/builtin/packages/taskd/package.py
+++ b/var/spack/repos/builtin/packages/taskd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Taskd(Package):
+class Taskd(CMakePackage):
"""TaskWarrior task synchronization daemon"""
homepage = "http://www.taskwarrior.org"
@@ -33,14 +33,8 @@ class Taskd(Package):
version('1.1.0', 'ac855828c16f199bdbc45fbc227388d0')
- depends_on('cmake', type='build')
- depends_on("libuuid")
- depends_on("gnutls")
+ depends_on('libuuid')
+ depends_on('gnutls')
+ depends_on('cmake@2.8:', type='build')
- def install(self, spec, prefix):
- with working_dir('spack-build', create=True):
- cmake('-DCMAKE_BUILD_TYPE=release',
- '..',
- *std_cmake_args)
- make()
- make("install")
+ conflicts('%gcc@:4.7')
diff --git a/var/spack/repos/builtin/packages/tassel/package.py b/var/spack/repos/builtin/packages/tassel/package.py
new file mode 100644
index 0000000000..eb48897e0e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tassel/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tassel(Package):
+ """TASSEL is a software package to evaluate traits associations,
+ evolutionary patterns, and linkage disequilibrium."""
+
+ homepage = "http://www.maizegenetics.net/tassel"
+ url = "https://bitbucket.org/tasseladmin/tassel-5-source/get/master.tar.gz"
+
+ version('2017-07-22', git='https://bitbucket.org/tasseladmin/tassel-5-standalone.git',
+ commit='ae96ae75c3c9a9e8026140b6c775fa4685bdf531')
+
+ depends_on('java', type=('build', 'run'))
+ depends_on('perl', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ install_tree('.', prefix.bin)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('CLASSPATH', prefix.bin.lib)
diff --git a/var/spack/repos/builtin/packages/tau/package.py b/var/spack/repos/builtin/packages/tau/package.py
index 991841f137..26b1e38b27 100644
--- a/var/spack/repos/builtin/packages/tau/package.py
+++ b/var/spack/repos/builtin/packages/tau/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/tcl/package.py b/var/spack/repos/builtin/packages/tcl/package.py
index d9b535305d..219c63e62b 100644
--- a/var/spack/repos/builtin/packages/tcl/package.py
+++ b/var/spack/repos/builtin/packages/tcl/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,9 @@ class Tcl(AutotoolsPackage):
that is truly cross platform, easily deployed and highly
extensible."""
homepage = "http://www.tcl.tk"
+ url = "http://prdownloads.sourceforge.net/tcl/tcl8.6.5-src.tar.gz"
+ version('8.6.6', '5193aea8107839a79df8ac709552ecb7')
version('8.6.5', '0e6426a4ca9401825fbc6ecf3d89a326')
version('8.6.4', 'd7cbb91f1ded1919370a30edd1534304')
version('8.6.3', 'db382feca91754b7f93da16dc4cdad1f')
@@ -42,20 +44,22 @@ class Tcl(AutotoolsPackage):
depends_on('zlib')
- def url_for_version(self, version):
- base_url = 'http://prdownloads.sourceforge.net/tcl'
- return '{0}/tcl{1}-src.tar.gz'.format(base_url, version)
+ configure_directory = 'unix'
- def setup_environment(self, spack_env, env):
+ def setup_environment(self, spack_env, run_env):
# When using Tkinter from within spack provided python+tk, python
# will not be able to find Tcl/Tk unless TCL_LIBRARY is set.
- env.set('TCL_LIBRARY', join_path(self.prefix.lib, 'tcl{0}'.format(
- self.spec.version.up_to(2))))
+ run_env.set('TCL_LIBRARY', join_path(self.prefix.lib, 'tcl{0}'.format(
+ self.spec.version.up_to(2))))
- def build_directory(self):
- return 'unix'
+ def install(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('install')
- @AutotoolsPackage.sanity_check('install')
+ # Some applications like Expect require private Tcl headers.
+ make('install-private-headers')
+
+ @run_after('install')
def symlink_tclsh(self):
with working_dir(self.prefix.bin):
symlink('tclsh{0}'.format(self.version.up_to(2)), 'tclsh')
diff --git a/var/spack/repos/builtin/packages/tcoffee/package.py b/var/spack/repos/builtin/packages/tcoffee/package.py
new file mode 100644
index 0000000000..667f876dd9
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tcoffee/package.py
@@ -0,0 +1,57 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tcoffee(MakefilePackage):
+ """T-Coffee is a multiple sequence alignment program."""
+
+ homepage = "http://www.tcoffee.org/"
+ url = "https://github.com/cbcrg/tcoffee"
+
+ version('2017-08-17', git='https://github.com/cbcrg/tcoffee.git', commit='f389b558e91d0f82e7db934d9a79ce285f853a71')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('blast-plus')
+ depends_on('dialign-tx')
+ depends_on('viennarna')
+ depends_on('clustalw')
+ depends_on('tmalign')
+ depends_on('muscle')
+ depends_on('mafft')
+ depends_on('pcma')
+ depends_on('poamsa')
+ depends_on('probconsrna')
+
+ build_directory = 'compile'
+
+ def build(self, spec, prefix):
+ with working_dir(self.build_directory):
+ make('t_coffee')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir(self.build_directory):
+ install('t_coffee', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/tcsh/package.py b/var/spack/repos/builtin/packages/tcsh/package.py
new file mode 100644
index 0000000000..84d0ed28b0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tcsh/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tcsh(AutotoolsPackage):
+ """Tcsh is an enhanced but completely compatible version of csh, the C
+ shell. Tcsh is a command language interpreter which can be used both as
+ an interactive login shell and as a shell script command processor. Tcsh
+ includes a command line editor, programmable word completion, spelling
+ correction, a history mechanism, job control and a C language like
+ syntax."""
+
+ homepage = "http://www.tcsh.org/"
+ url = "ftp://ftp.astron.com/pub/tcsh/tcsh-6.20.00.tar.gz"
+
+ version('6.20.00', '59d40ef40a68e790d95e182069431834')
+
+ def fedora_patch(commit, file, **kwargs):
+ prefix = 'https://src.fedoraproject.org/rpms/tcsh/raw/{0}/f/'.format(commit)
+ patch('{0}{1}'.format(prefix, file), **kwargs)
+
+ # Upstream patches
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-000-add-all-flags-for-gethost-build.patch', when='@6.20.00', sha256='f8266916189ebbdfbad5c2c28ac00ed25f07be70f054d9830eb84ba84b3d03ef')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-001-delay-arginp-interpreting.patch', when='@6.20.00', sha256='57c7a9b0d94dd41e4276b57b0a4a89d91303d36180c1068b9e3ab8f6149b18dd')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-002-type-of-read-in-prompt-confirm.patch', when='@6.20.00', sha256='837a6a82f815c0905cf7ea4c4ef0112f36396fc8b2138028204000178a1befa5')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-003-fix-out-of-bounds-read.patch', when='@6.20.00', sha256='f973bd33a7fd8af0002a9b8992216ffc04fdf2927917113e42e58f28b702dc14')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-004-do-not-use-old-pointer-tricks.patch', when='@6.20.00', sha256='333e111ed39f7452f904590b47b996812590b8818f1c51ad68407dc05a1b18b0')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-005-reset-fixes-numbering.patch', when='@6.20.00', sha256='d1b54b5c5432faed9791ffde813560e226896a68fc5933d066172bcf3b2eb8bd')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-006-cleanup-in-readme-files.patch', when='@6.20.00', sha256='b4e7428ac6c2918beacc1b73f33e784ac520ef981d87e98285610b1bfa299d7b')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-007-look-for-tgetent-in-libtinfo.patch', when='@6.20.00', sha256='e6c88ffc291c9d4bda4d6bedf3c9be89cb96ce7dc245163e251345221fa77216')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-008-guard-ascii-only-reversion.patch', when='@6.20.00', sha256='7ee195e4ce4c9eac81920843b4d4d27254bec7b43e0b744f457858a9f156e621')
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-009-fix-regexp-for-backlash-quoting-tests.patch', when='@6.20.00', sha256='d2358c930d5ab89e5965204dded499591b42a22d0a865e2149b8c0f1446fac34')
+
+ # Downstream patches
+ fedora_patch('8a6066c901fb4fc75013dd488ba958387f00c74d', 'tcsh-6.20.00-manpage-memoryuse.patch', sha256='3a4e60fe56a450632140c48acbf14d22850c1d72835bf441e3f8514d6c617a9f') # noqa: E501
+
+ depends_on('ncurses')
+
+ @run_after('install')
+ def link_csh(self):
+ symlink('tcsh', '{0}/csh'.format(self.prefix.bin))
+ symlink('tcsh.1', '{0}/csh.1'.format(self.prefix.share.man.man1))
diff --git a/var/spack/repos/builtin/packages/tealeaf/package.py b/var/spack/repos/builtin/packages/tealeaf/package.py
new file mode 100644
index 0000000000..c5031e9bd4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tealeaf/package.py
@@ -0,0 +1,77 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import glob
+
+from spack import *
+
+
+class Tealeaf(MakefilePackage):
+ """Proxy Application. TeaLeaf is a mini-app that solves
+ the linear heat conduction equation on a spatially decomposed
+ regularly grid using a 5 point stencil with implicit solvers.
+ """
+
+ homepage = "http://uk-mac.github.io/TeaLeaf/"
+ url = "http://mantevo.org/downloads/releaseTarballs/miniapps/TeaLeaf/TeaLeaf-1.0.tar.gz"
+
+ tags = ['proxy-app']
+
+ version('1.0', '02a907281ad2d09e70ca0a17551c6d79')
+
+ depends_on('mpi')
+
+ @property
+ def build_targets(self):
+ targets = [
+ '--directory=TeaLeaf_ref',
+ 'MPI_COMPILER={0}'.format(self.spec['mpi'].mpifc),
+ 'C_MPI_COMPILER={0}'.format(self.spec['mpi'].mpicc),
+ ]
+
+ if '%gcc' in self.spec:
+ targets.append('COMPILER=GNU')
+ elif '%cce' in self.spec:
+ targets.append('COMPILER=CRAY')
+ elif '%intel' in self.spec:
+ targets.append('COMPILER=INTEL')
+ elif '%pgi' in self.spec:
+ targets.append('COMPILER=PGI')
+ elif '%xl' in self.spec:
+ targets.append('COMPILER=XL')
+
+ return targets
+
+ def install(self, spec, prefix):
+ # Manual Installation
+ mkdirp(prefix.bin)
+ mkdirp(prefix.doc.tests)
+
+ install('README.md', prefix.doc)
+ install('TeaLeaf_ref/tea_leaf', prefix.bin)
+ install('TeaLeaf_ref/tea.in', prefix.bin)
+
+ for f in glob.glob('TeaLeaf_ref/*.in'):
+ install(f, prefix.doc.tests)
diff --git a/var/spack/repos/builtin/packages/tetgen/package.py b/var/spack/repos/builtin/packages/tetgen/package.py
index 6e5ed79c36..b7091c097c 100644
--- a/var/spack/repos/builtin/packages/tetgen/package.py
+++ b/var/spack/repos/builtin/packages/tetgen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,7 @@ class Tetgen(Package):
boundary conforming Delaunay meshes, and Voronoi paritions.
"""
- homepage = "http://www.tetgen.org"
+ homepage = "http://wias-berlin.de/software/tetgen/"
version('1.5.0', '3b9fd9cdec121e52527b0308f7aad5c1', url='http://www.tetgen.org/1.5/src/tetgen1.5.0.tar.gz')
version('1.4.3', 'd6a4bcdde2ac804f7ec66c29dcb63c18', url='http://www.tetgen.org/files/tetgen1.4.3.tar.gz')
diff --git a/var/spack/repos/builtin/packages/tethex/package.py b/var/spack/repos/builtin/packages/tethex/package.py
index 624942498e..4ebe564522 100644
--- a/var/spack/repos/builtin/packages/tethex/package.py
+++ b/var/spack/repos/builtin/packages/tethex/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Tethex(Package):
+class Tethex(CMakePackage):
"""Tethex is designed to convert triangular (in 2D) or tetrahedral (in 3D)
Gmsh's mesh to quadrilateral or hexahedral one respectively. These meshes
can be used in software packages working with hexahedrals only - for
@@ -35,15 +35,18 @@ class Tethex(Package):
homepage = "https://github.com/martemyev/tethex"
url = "https://github.com/martemyev/tethex/archive/v0.0.7.tar.gz"
+ maintainers = ['davydden']
+
version('0.0.7', '6c9e4a18a6637deb4400c6d77ec03184')
version('develop', git='https://github.com/martemyev/tethex.git')
- depends_on('cmake', type='build')
+ variant('build_type', default='Release',
+ description='The build type to build',
+ values=('Debug', 'Release'))
- def install(self, spec, prefix):
- cmake('.')
- make()
+ depends_on('cmake@2.8:', type='build')
+ def install(self, spec, prefix):
# install by hand
mkdirp(prefix.bin)
install('tethex', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/texinfo/package.py b/var/spack/repos/builtin/packages/texinfo/package.py
index e4fbc37235..47d65bcc80 100644
--- a/var/spack/repos/builtin/packages/texinfo/package.py
+++ b/var/spack/repos/builtin/packages/texinfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/texlive/package.py b/var/spack/repos/builtin/packages/texlive/package.py
index a960e5b68d..3b26d2de94 100644
--- a/var/spack/repos/builtin/packages/texlive/package.py
+++ b/var/spack/repos/builtin/packages/texlive/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -28,21 +28,24 @@ import os
class Texlive(Package):
"""TeX Live is a free software distribution for the TeX typesetting
- system"""
+ system. Heads up, it's is not a reproducible installation."""
homepage = "http://www.tug.org/texlive"
- # Pull from specific site because the texlive mirrors do not all
- # update in synchrony.
+ # Install from specific site because the texlive mirrors do not
+ # all update in synchrony.
#
# BEWARE: TexLive updates their installs frequently (probably why
- # they call it *Live*...). There is no good way to provide a
- # repeatable install of the package. We try to keep up with the
- # digest values, but don't be surprised if this package is
- # briefly unbuildable.
+ # they call it *Live*...). There is no good way to provide a
+ # repeatable install of the package.
#
- version('live', '01461ec2cc49fe0b14812eb67abbea46',
- url="http://ctan.math.utah.edu/ctan/tex-archive/systems/texlive/tlnet/install-tl-unx.tar.gz")
+ # We're now pulling the installation bits from tug.org's repo of
+ # historic bits. This means that the checksum for the installer
+ # itself is stable. Don't let that fool you though, it's still
+ # installing TeX **LIVE** from e.g. ctan.math.... below, which is
+ # not reproducible.
+ version('live', '8f8fc301514c08a89a2e97197369c648',
+ url='ftp://tug.org/historic/systems/texlive/2017/install-tl-unx.tar.gz')
# There does not seem to be a complete list of schemes.
# Examples include:
@@ -53,15 +56,24 @@ class Texlive(Package):
# minimal scheme (plain only)
# See:
# https://www.tug.org/texlive/doc/texlive-en/texlive-en.html#x1-25025r6
- variant('scheme', default="small",
- description='Package subset to install (e.g. full, small, basic)')
+ variant(
+ 'scheme',
+ default='small',
+ values=('minimal', 'basic', 'small', 'medium', 'full'),
+ description='Package subset to install'
+ )
depends_on('perl', type='build')
def install(self, spec, prefix):
+ # Using texlive's mirror system leads to mysterious problems,
+ # in lieu of being able to specify a repository as a variant, hardwire
+ # a particular (slow, but central) one for now.
+ _repository = 'http://ctan.math.washington.edu/tex-archive/systems/texlive/tlnet/'
env = os.environ
env['TEXLIVE_INSTALL_PREFIX'] = prefix
perl = which('perl')
scheme = spec.variants['scheme'].value
perl('./install-tl', '-scheme', scheme,
+ '-repository', _repository,
'-portable', '-profile', '/dev/null')
diff --git a/var/spack/repos/builtin/packages/the-platinum-searcher/package.py b/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
index eeddf194ea..212bc0d75e 100644
--- a/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
+++ b/var/spack/repos/builtin/packages/the-platinum-searcher/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/the-silver-searcher/package.py b/var/spack/repos/builtin/packages/the-silver-searcher/package.py
index c98e964efa..31b269e286 100644
--- a/var/spack/repos/builtin/packages/the-silver-searcher/package.py
+++ b/var/spack/repos/builtin/packages/the-silver-searcher/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,17 @@
from spack import *
-class TheSilverSearcher(Package):
+class TheSilverSearcher(AutotoolsPackage):
"""Fast recursive grep alternative"""
+
homepage = "http://geoff.greer.fm/ag/"
url = "http://geoff.greer.fm/ag/releases/the_silver_searcher-0.32.0.tar.gz"
+ version('2.1.0', '3e7207b060424174323236932bf76ec2')
version('0.32.0', '3fdfd5836924246073d5344257a06823')
version('0.30.0', '95e2e7859fab1156c835aff7413481db')
depends_on('pcre')
depends_on('xz')
+ depends_on('zlib')
depends_on('pkg-config', type='build')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
-
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/thrift/package.py b/var/spack/repos/builtin/packages/thrift/package.py
index 755f7a80b9..9e296123fd 100644
--- a/var/spack/repos/builtin/packages/thrift/package.py
+++ b/var/spack/repos/builtin/packages/thrift/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -38,6 +38,8 @@ class Thrift(Package):
homepage = "http://thrift.apache.org"
url = "http://apache.mirrors.ionfish.org/thrift/0.9.2/thrift-0.9.2.tar.gz"
+ version('0.10.0', '795c5dd192e310ffff38cfd9430d6b29')
+ version('0.9.3', '88d667a8ae870d5adeca8cb7d6795442')
version('0.9.2', '89f63cc4d0100912f4a1f8a9dee63678')
# Currently only support for c-family and python
@@ -46,7 +48,7 @@ class Thrift(Package):
variant('python', default=True,
description="Build support for python")
- depends_on('jdk')
+ depends_on('java')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
@@ -63,7 +65,7 @@ class Thrift(Package):
def install(self, spec, prefix):
env['PY_PREFIX'] = prefix
- env['JAVA_HOME'] = spec['jdk'].prefix
+ env['JAVA_HOME'] = spec['java'].prefix
# configure options
options = ['--prefix=%s' % prefix]
diff --git a/var/spack/repos/builtin/packages/thrust/package.py b/var/spack/repos/builtin/packages/thrust/package.py
new file mode 100644
index 0000000000..c3d7c8dadb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/thrust/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Thrust(Package):
+ """Thrust is a parallel algorithms library
+ which resembles the C++ Standard Template Library (STL)."""
+
+ homepage = "https://thrust.github.io"
+ url = "https://github.com/thrust/thrust/archive/1.8.2.tar.gz"
+
+ version('1.8.2', 'fc7fc807cba98640c816463b511fb53f')
+
+ def install(self, spec, prefix):
+ install_tree('doc', join_path(prefix, 'doc'))
+ install_tree('examples', join_path(prefix, 'examples'))
+ install_tree('thrust', join_path(prefix, 'include', 'thrust'))
diff --git a/var/spack/repos/builtin/packages/tig/package.py b/var/spack/repos/builtin/packages/tig/package.py
new file mode 100644
index 0000000000..18c0597c46
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tig/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tig(AutotoolsPackage):
+ """Text-mode interface for git"""
+
+ homepage = "https://jonas.github.io/tig/"
+ url = "https://github.com/jonas/tig/releases/download/tig-2.2.2/tig-2.2.2.tar.gz"
+
+ version('2.2.2', '3b4a9f0fd8d18c1039863e6c4ace6e46')
+
+ depends_on('ncurses')
diff --git a/var/spack/repos/builtin/packages/tinyxml/package.py b/var/spack/repos/builtin/packages/tinyxml/package.py
index 1789d9022e..46f3c32a75 100644
--- a/var/spack/repos/builtin/packages/tinyxml/package.py
+++ b/var/spack/repos/builtin/packages/tinyxml/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,6 +23,7 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+from shutil import copyfile
import os.path
@@ -30,10 +31,14 @@ class Tinyxml(CMakePackage):
"""Simple, small, efficient, C++ XML parser"""
homepage = "http://grinninglizard.com/tinyxml/"
- url = "https://sourceforge.net/projects/tinyxml/files/tinyxml/2.6.2/tinyxml_2_6_2.tar.gz"
+ url = "https://downloads.sourceforge.net/project/tinyxml/tinyxml/2.6.2/tinyxml_2_6_2.tar.gz"
version('2.6.2', 'cba3f50dd657cb1434674a03b21394df9913d764')
+ def url_for_version(self, version):
+ url = "https://sourceforge.net/projects/tinyxml/files/tinyxml/{0}/tinyxml_{1}.tar.gz"
+ return url.format(version.dotted, version.underscored)
+
def patch(self):
copyfile(join_path(os.path.dirname(__file__),
"CMakeLists.txt"), "CMakeLists.txt")
diff --git a/var/spack/repos/builtin/packages/tinyxml2/package.py b/var/spack/repos/builtin/packages/tinyxml2/package.py
index d36bb5fa9b..d54418e099 100644
--- a/var/spack/repos/builtin/packages/tinyxml2/package.py
+++ b/var/spack/repos/builtin/packages/tinyxml2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/tk/package.py b/var/spack/repos/builtin/packages/tk/package.py
index 071db04e63..b03d07013a 100644
--- a/var/spack/repos/builtin/packages/tk/package.py
+++ b/var/spack/repos/builtin/packages/tk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -33,18 +33,16 @@ class Tk(AutotoolsPackage):
applications that run unchanged across Windows, Mac OS X, Linux
and more."""
homepage = "http://www.tcl.tk"
+ url = "http://prdownloads.sourceforge.net/tcl/tk8.6.5-src.tar.gz"
+ version('8.6.6', 'dd7dbb3a6523c42d05f6ab6e86096e99')
version('8.6.5', '11dbbd425c3e0201f20d6a51482ce6c4')
version('8.6.3', '85ca4dbf4dcc19777fd456f6ee5d0221')
- variant('X', default=False, description='Enable X11 support')
+ depends_on('tcl')
+ depends_on('libx11')
- depends_on("tcl")
- depends_on("libx11", when='+X')
-
- def url_for_version(self, version):
- base_url = "http://prdownloads.sourceforge.net/tcl"
- return "{0}/tk{1}-src.tar.gz".format(base_url, version)
+ configure_directory = 'unix'
def setup_environment(self, spack_env, run_env):
# When using Tkinter from within spack provided python+tk, python
@@ -52,9 +50,11 @@ class Tk(AutotoolsPackage):
run_env.set('TK_LIBRARY', join_path(self.prefix.lib, 'tk{0}'.format(
self.spec.version.up_to(2))))
- def build_directory(self):
- return 'unix'
-
def configure_args(self):
spec = self.spec
return ['--with-tcl={0}'.format(spec['tcl'].prefix.lib)]
+
+ @run_after('install')
+ def symlink_wish(self):
+ with working_dir(self.prefix.bin):
+ symlink('wish{0}'.format(self.version.up_to(2)), 'wish')
diff --git a/var/spack/repos/builtin/packages/tmalign/package.py b/var/spack/repos/builtin/packages/tmalign/package.py
new file mode 100644
index 0000000000..ac7df4fb15
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tmalign/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tmalign(Package):
+ """TM-align is an algorithm for sequence-order independent protein
+ structure comparisons."""
+
+ homepage = "http://zhanglab.ccmb.med.umich.edu/TM-align"
+ url = "http://zhanglab.ccmb.med.umich.edu/TM-align/TM-align-C/TMalignc.tar.gz"
+
+ version('2016-05-25', 'c1027e4b65c07d1c5df9717de7417118')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('TMalign', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/tmhmm/package.py b/var/spack/repos/builtin/packages/tmhmm/package.py
new file mode 100644
index 0000000000..2fe2517444
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tmhmm/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Tmhmm(Package):
+ """Transmembrane helices in proteins
+
+ Note: A manual download is required for TMHMM.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "http://www.cbs.dtu.dk/cgi-bin/nph-sw_request?tmhmm"
+ url = "file://{0}/tmhmm-2.0c.Linux.tar.gz".format(os.getcwd())
+
+ version('2.0c', '359db0c4ecf84d1ade5786abe844d54e')
+
+ depends_on('perl', type='run')
+
+ def patch(self):
+ with working_dir('bin'):
+ tmhmm = FileFilter('tmhmmformat.pl')
+ tmhmm.filter('#!/usr/local/bin/perl -w',
+ '#!/usr/bin/env perl')
+ tmhmm = FileFilter('tmhmm')
+ tmhmm.filter('#!/usr/local/bin/perl',
+ '#!/usr/bin/env perl')
+
+ def install(self, spec, prefix):
+ install_tree('bin', prefix.bin)
+ install_tree('lib', prefix.lib)
diff --git a/var/spack/repos/builtin/packages/tmux/package.py b/var/spack/repos/builtin/packages/tmux/package.py
index 89c9751486..52c6c530d1 100644
--- a/var/spack/repos/builtin/packages/tmux/package.py
+++ b/var/spack/repos/builtin/packages/tmux/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,16 +25,19 @@
from spack import *
-class Tmux(Package):
- """tmux is a terminal multiplexer. What is a terminal multiplexer? It lets
- you switch easily between several programs in one terminal, detach them
- (they keep running in the background) and reattach them to a different
- terminal. And do a lot more.
+class Tmux(AutotoolsPackage):
+ """Tmux is a terminal multiplexer.
+
+ What is a terminal multiplexer? It lets you switch easily between several
+ programs in one terminal, detach them (they keep running in the
+ background) and reattach them to a different terminal. And do a lot more.
"""
homepage = "http://tmux.github.io"
url = "https://github.com/tmux/tmux/releases/download/2.2/tmux-2.2.tar.gz"
+ version('2.5', '4a5d73d96d8f11b0bdf9b6f15ab76d15')
+ version('2.4', '6165d3aca811a3225ef8afbd1afcf1c5')
version('2.3', 'fcfd1611d705d8b31df3c26ebc93bd3e')
version('2.2', 'bd95ee7205e489c62c616bb7af040099')
version('2.1', '74a2855695bccb51b6e301383ad4818c')
@@ -43,15 +46,5 @@ class Tmux(Package):
depends_on('libevent')
depends_on('ncurses')
- def install(self, spec, prefix):
- pkg_config_path = ':'.join([
- spec['libevent'].prefix,
- spec['ncurses'].prefix
- ])
-
- configure(
- "--prefix=%s" % prefix,
- "PKG_CONFIG_PATH=%s" % pkg_config_path)
-
- make()
- make("install")
+ def configure_args(self):
+ return ['LIBTINFO_LIBS=-lncurses']
diff --git a/var/spack/repos/builtin/packages/tmuxinator/package.py b/var/spack/repos/builtin/packages/tmuxinator/package.py
index 66da4006f2..0f79d1f5bf 100644
--- a/var/spack/repos/builtin/packages/tmuxinator/package.py
+++ b/var/spack/repos/builtin/packages/tmuxinator/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/tophat/package.py b/var/spack/repos/builtin/packages/tophat/package.py
new file mode 100644
index 0000000000..682e9581eb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tophat/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tophat(AutotoolsPackage):
+ """Spliced read mapper for RNA-Seq."""
+
+ homepage = "http://ccb.jhu.edu/software/tophat/index.shtml"
+ url = "https://github.com/infphilo/tophat/archive/v2.1.1.tar.gz"
+
+ version('2.1.1', 'ffd18de2f893a95eb7e9d0c5283d241f')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ depends_on('boost@1.47:')
+ depends_on('bowtie2', type='run')
+
+ parallel = False
+
+ def configure_args(self):
+ return ["--with-boost={0}".format(self.spec['boost'].prefix)]
diff --git a/var/spack/repos/builtin/packages/tppred/package.py b/var/spack/repos/builtin/packages/tppred/package.py
new file mode 100644
index 0000000000..15bf756f7a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tppred/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tppred(Package):
+ """TPPRED is a software package for the prediction of mitochondrial
+ targeting peptides from protein primary sequence."""
+
+ homepage = "https://tppred2.biocomp.unibo.it/tppred2/default/software"
+ url = "http://biocomp.unibo.it/savojard/tppred2.tar.gz"
+
+ version('2.0', 'cd848569f6a8aa51d18fbe55fe45d624')
+
+ depends_on('python@2.7:2.999', type='run')
+ depends_on('py-scikit-learn@0.13.1', type='run')
+ depends_on('emboss')
+
+ def url_for_version(self, version):
+ url = 'http://biocomp.unibo.it/savojard/tppred{0}.tar.gz'
+ return url.format(version.up_to(1))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ with working_dir('bin'):
+ install('tppred2.py', prefix.bin)
+ install_tree('data', prefix.data)
+ install_tree('example', prefix.example)
+ install_tree('tppred2modules', prefix.modules)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('TPPRED_ROOT', prefix)
diff --git a/var/spack/repos/builtin/packages/transabyss/package.py b/var/spack/repos/builtin/packages/transabyss/package.py
new file mode 100644
index 0000000000..32a266f9f2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/transabyss/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Transabyss(Package):
+ """De novo assembly of RNAseq data using ABySS"""
+
+ homepage = "http://www.bcgsc.ca/platform/bioinfo/software/trans-abyss"
+ url = "http://www.bcgsc.ca/platform/bioinfo/software/trans-abyss/releases/1.5.5/transabyss-1.5.5.zip"
+
+ version('1.5.5', '9ebe0394243006f167135cac4df9bee6')
+
+ depends_on('abyss@1.5.2')
+ depends_on('python@2.7.6:', type=('build', 'run'))
+ depends_on('py-igraph@0.7.0:', type=('build', 'run'))
+ depends_on('blat')
+
+ def install(self, spec, prefix):
+ install('transabyss', prefix)
+ install('transabyss-merge', prefix)
+ install_tree('bin', prefix.bin)
+ install_tree('utilities', prefix.utilities)
diff --git a/var/spack/repos/builtin/packages/transdecoder/package.py b/var/spack/repos/builtin/packages/transdecoder/package.py
new file mode 100644
index 0000000000..022f205d67
--- /dev/null
+++ b/var/spack/repos/builtin/packages/transdecoder/package.py
@@ -0,0 +1,50 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Transdecoder(MakefilePackage):
+ """TransDecoder identifies candidate coding regions within transcript
+ sequences, such as those generated by de novo RNA-Seq transcript
+ assembly using Trinity, or constructed based on RNA-Seq alignments to
+ the genome using Tophat and Cufflinks."""
+
+ homepage = "http://transdecoder.github.io/"
+ url = "https://github.com/TransDecoder/TransDecoder/archive/v3.0.1.tar.gz"
+
+ version('3.0.1', 'f62b86a15fcb78b1dada9f80cc25f300')
+
+ depends_on('perl', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('TransDecoder.LongOrfs', prefix)
+ install('TransDecoder.Predict', prefix)
+ install_tree('PerlLib', prefix.PerlLib)
+ install_tree('util', prefix.util)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PATH', prefix.util.bin)
+ run_env.prepend_path('PATH', prefix)
diff --git a/var/spack/repos/builtin/packages/transposome/package.py b/var/spack/repos/builtin/packages/transposome/package.py
new file mode 100644
index 0000000000..63e7d47f41
--- /dev/null
+++ b/var/spack/repos/builtin/packages/transposome/package.py
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Transposome(PerlPackage):
+ """A toolkit for annotation of transposable element families from
+ unassembled sequence reads."""
+
+ homepage = "https://sestaton.github.io/Transposome/"
+ url = "https://github.com/sestaton/Transposome/archive/v0.11.2.tar.gz"
+
+ version('0.11.2', '157c1fc090b0aa30050d03df885dcde0')
+
+ depends_on('blast-plus')
diff --git a/var/spack/repos/builtin/packages/transset/package.py b/var/spack/repos/builtin/packages/transset/package.py
index 0f60738741..52f83c6edf 100644
--- a/var/spack/repos/builtin/packages/transset/package.py
+++ b/var/spack/repos/builtin/packages/transset/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Transset(Package):
+class Transset(AutotoolsPackage):
"""transset is an utility for setting opacity property."""
homepage = "http://cgit.freedesktop.org/xorg/app/transset"
@@ -38,9 +38,3 @@ class Transset(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/trapproto/package.py b/var/spack/repos/builtin/packages/trapproto/package.py
index eebab74410..c7b2f3727d 100644
--- a/var/spack/repos/builtin/packages/trapproto/package.py
+++ b/var/spack/repos/builtin/packages/trapproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Trapproto(Package):
+class Trapproto(AutotoolsPackage):
"""X.org TrapProto protocol headers."""
homepage = "https://cgit.freedesktop.org/xorg/proto/trapproto"
url = "https://www.x.org/archive/individual/proto/trapproto-3.4.3.tar.gz"
version('3.4.3', '1344759ae8d7d923e64f5eec078a679b')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/tree/package.py b/var/spack/repos/builtin/packages/tree/package.py
index 795f8c997e..339ce2c139 100644
--- a/var/spack/repos/builtin/packages/tree/package.py
+++ b/var/spack/repos/builtin/packages/tree/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/trf/package.py b/var/spack/repos/builtin/packages/trf/package.py
new file mode 100644
index 0000000000..f02e30302d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trf/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Trf(Package):
+ """Tandem Repeats Finder is a program to locate and display tandem repeats
+ in DNA sequences.
+
+ Note: A manual download is required for TRF.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://tandem.bu.edu/trf/trf.html"
+
+ version('4.09', '0c594fe666e0332db1df9d160d7fabc8', expand=False,
+ url='file://{0}/trf409.linux64'.format(os.getcwd()))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('trf409.linux64', prefix.bin.trf)
diff --git a/var/spack/repos/builtin/packages/triangle/package.py b/var/spack/repos/builtin/packages/triangle/package.py
index f4ee9ca1c9..9e20a4d964 100644
--- a/var/spack/repos/builtin/packages/triangle/package.py
+++ b/var/spack/repos/builtin/packages/triangle/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/trilinos/package.py b/var/spack/repos/builtin/packages/trilinos/package.py
index 4b3412ce7a..db0b1b3ba6 100644
--- a/var/spack/repos/builtin/packages/trilinos/package.py
+++ b/var/spack/repos/builtin/packages/trilinos/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,9 +22,10 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-from spack import *
import os
import sys
+from spack import *
+from spack.operating_systems.mac_os import macOS_version
# Trilinos is complicated to build, as an inspiration a couple of links to
# other repositories which build it:
@@ -43,13 +44,20 @@ class Trilinos(CMakePackage):
A unique design feature of Trilinos is its focus on packages.
"""
homepage = "https://trilinos.org/"
- base_url = "https://github.com/trilinos/Trilinos/archive"
+ url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-12-12-1.tar.gz"
+
+ maintainers = ['aprokop']
+
+ # ###################### Versions ##########################
+ version('xsdk-0.2.0',
+ git='https://github.com/trilinos/Trilinos.git', tag='xsdk-0.2.0')
version('develop',
git='https://github.com/trilinos/Trilinos.git', tag='develop')
version('master',
git='https://github.com/trilinos/Trilinos.git', tag='master')
- version('12.10.1', '40f28628b63310f9bd17c26d9ebe32b1')
+ version('12.12.1', 'ecd4606fa332212433c98bf950a69cc7')
+ version('12.10.1', '667333dbd7c0f031d47d7c5511fd0810')
version('12.8.1', '01c0026f1e2050842857db941060ecd5')
version('12.6.4', 'c2ea7b5aa0d10bcabdb9b9a6e3bac3ea')
version('12.6.3', '8de5cc00981a0ca0defea6199b2fe4c1')
@@ -62,11 +70,11 @@ class Trilinos(CMakePackage):
version('11.14.2', 'e7c3cdbbfe3279a8a68838b873ad6d51')
version('11.14.1', 'b7760b142eef66c79ed13de7c9560f81')
- def url_for_version(self, version):
- return '%s/trilinos-release-%s.tar.gz' % \
- (Trilinos.base_url, version.dashed)
+ # ###################### Variants ##########################
- variant('xsdkflags', default=False,
+ variant('alloptpkgs', default=False,
+ description='Compile with all optional packages')
+ variant('xsdkflags', default=False,
description='Compile using the default xSDK configuration')
variant('metis', default=True,
description='Compile with METIS and ParMETIS')
@@ -74,34 +82,129 @@ class Trilinos(CMakePackage):
description='Compile with support for MUMPS solvers')
variant('superlu-dist', default=True,
description='Compile with SuperluDist solvers')
- variant('superlu', default=False,
+ variant('superlu', default=False,
description='Compile with SuperLU solvers')
variant('hypre', default=True,
description='Compile with Hypre preconditioner')
- variant('hdf5', default=True, description='Compile with HDF5')
+ variant('hdf5', default=True,
+ description='Compile with HDF5')
variant('suite-sparse', default=True,
description='Compile with SuiteSparse solvers')
# not everyone has py-numpy activated, keep it disabled by default to avoid
# configure errors
- variant('python', default=False, description='Build python wrappers')
+ variant('python', default=False,
+ description='Build python wrappers')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
- variant('boost', default=True, description='Compile with Boost')
+ variant('boost', default=True,
+ description='Compile with Boost')
+ variant('tpetra', default=True,
+ description='Compile with Tpetra')
+ variant('epetra', default=True,
+ description='Compile with Epetra')
+ variant('epetraext', default=True,
+ description='Compile with EpetraExt')
+ variant('exodus', default=True,
+ description='Compile with Exodus from SEACAS')
+ variant('pnetcdf', default=False,
+ description='Compile with parallel-netcdf')
+ variant('zlib', default=False,
+ description='Compile with zlib')
+ variant('stk', default=False,
+ description='Compile with STK')
+ variant('teuchos', default=True,
+ description='Compile with Teuchos')
+ variant('belos', default=True,
+ description='Compile with Belos')
+ variant('zoltan', default=True,
+ description='Compile with Zoltan')
+ variant('zoltan2', default=True,
+ description='Compile with Zoltan2')
+ variant('amesos', default=True,
+ description='Compile with Amesos')
+ variant('amesos2', default=True,
+ description='Compile with Amesos2')
+ variant('anasazi', default=True,
+ description='Compile with Anasazi')
+ variant('ifpack', default=True,
+ description='Compile with Ifpack')
+ variant('ifpack2', default=True,
+ description='Compile with Ifpack2')
+ variant('muelu', default=True,
+ description='Compile with Muelu')
+ variant('fortran', default=True,
+ description='Compile with Fortran support')
+ variant('ml', default=True,
+ description='Compile with ML')
+ variant('gtest', default=True,
+ description='Compile with Gtest')
+ variant('aztec', default=True,
+ description='Compile with Aztec')
+ variant('sacado', default=True,
+ description='Compile with Sacado')
+ variant('x11', default=False,
+ description='Compile with X11')
+ variant('instantiate', default=True,
+ description='Compile with explicit instantiation')
+ variant('instantiate_cmplx', default=False,
+ description='Compile with explicit instantiation for complex')
+ variant('dtk', default=False,
+ description='Enable DataTransferKit')
+ variant('fortrilinos', default=False,
+ description='Enable ForTrilinos')
+ variant('openmp', default=False,
+ description='Enable OpenMP')
+ variant('rol', default=False,
+ description='Enable ROL')
+ variant('nox', default=False,
+ description='Enable NOX')
+ variant('shards', default=False,
+ description='Enable Shards')
+ variant('intrepid', default=False,
+ description='Enable Intrepid')
+ variant('intrepid2', default=False,
+ description='Enable Intrepid2')
+
+ resource(name='dtk',
+ git='https://github.com/ornl-cees/DataTransferKit',
+ tag='master',
+ placement='DataTransferKit',
+ when='+dtk')
+ resource(name='fortrilinos',
+ git='https://github.com/trilinos/ForTrilinos',
+ tag='develop',
+ placement='packages/ForTrilinos',
+ when='+fortrilinos')
+
+ conflicts('+dtk', when='~tpetra')
+ conflicts('+fortrilinos', when='~fortran')
+ conflicts('+fortrilinos', when='@:99')
+ conflicts('+fortrilinos', when='@master')
+ # Can only use one type of SuperLU
+ conflicts('+superlu-dist', when='+superlu')
+ # For Trilinos v11 we need to force SuperLUDist=OFF, since only the
+ # deprecated SuperLUDist v3.3 together with an Amesos patch is working.
+ conflicts('+superlu-dist', when='@11.4.1:11.14.3')
+ # PnetCDF was only added after v12.10.1
+ conflicts('+pnetcdf', when='@0:12.10.1')
+
+ # ###################### Dependencies ##########################
- # Everything should be compiled with -fpic
+ # Everything should be compiled position independent (-fpic)
depends_on('blas')
depends_on('lapack')
depends_on('boost', when='+boost')
+ depends_on('boost', when='+dtk')
depends_on('matio')
depends_on('glm')
depends_on('metis@5:', when='+metis')
depends_on('suite-sparse', when='+suite-sparse')
+ depends_on('zlib', when="+zlib")
# MPI related dependencies
depends_on('mpi')
- depends_on('netcdf+mpi')
+ depends_on('netcdf+mpi', when="~pnetcdf")
+ depends_on('netcdf+mpi+parallel-netcdf', when="+pnetcdf@master,12.12.1:")
depends_on('parmetis', when='+metis')
# Trilinos' Tribits config system is limited which makes it very tricky to
# link Amesos with static MUMPS, see
@@ -112,73 +215,179 @@ class Trilinos(CMakePackage):
# work at the end. But let's avoid all this by simply using shared libs
depends_on('mumps@5.0:+mpi+shared', when='+mumps')
depends_on('scalapack', when='+mumps')
+ depends_on('superlu-dist', when='+superlu-dist')
depends_on('superlu-dist@:4.3', when='@:12.6.1+superlu-dist')
- depends_on('superlu-dist', when='@12.6.2:+superlu-dist')
- depends_on('superlu+fpic@4.3', when='+superlu')
- depends_on('hypre~internal-superlu', when='+hypre')
- depends_on('hdf5+mpi', when='+hdf5')
+ depends_on('superlu-dist@develop', when='@develop+superlu-dist')
+ depends_on('superlu-dist@xsdk-0.2.0', when='@xsdk-0.2.0+superlu-dist')
+ depends_on('superlu+pic@4.3', when='+superlu')
+ # Trilinos can not be built against 64bit int hypre
+ depends_on('hypre~internal-superlu~int64', when='+hypre')
+ depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0+hypre')
+ depends_on('hypre@develop~internal-superlu', when='@develop+hypre')
+ # FIXME: concretizer bug? 'hl' req by netcdf is affecting this code.
+ depends_on('hdf5+hl+mpi', when='+hdf5')
depends_on('python', when='+python')
- depends_on('py-numpy', when='+python')
+ depends_on('py-numpy', when='+python', type=('build', 'run'))
depends_on('swig', when='+python')
- patch('umfpack_from_suitesparse.patch', when='@:12.8.1')
-
- # check that the combination of variants makes sense
- def variants_check(self):
- if '+superlu-dist' in self.spec and self.spec.satisfies('@:11.4.3'):
- # For Trilinos v11 we need to force SuperLUDist=OFF, since only the
- # deprecated SuperLUDist v3.3 together with an Amesos patch is
- # working.
- raise RuntimeError('The superlu-dist variant can only be used' +
- ' with Trilinos @12.0.1:')
- if '+superlu-dist' in self.spec and '+superlu' in self.spec:
- # Only choose one type of superlu
- raise RuntimeError('The superlu-dist and superlu variant' +
- ' cannot be used together')
+ patch('umfpack_from_suitesparse.patch', when='@11.14.1:12.8.1')
+ patch('xlf_seacas.patch', when='@12.10.1%xl')
+ patch('xlf_seacas.patch', when='@12.10.1%xl_r')
+
+ def url_for_version(self, version):
+ url = "https://github.com/trilinos/Trilinos/archive/trilinos-release-{0}.tar.gz"
+ return url.format(version.dashed)
def cmake_args(self):
spec = self.spec
- self.variants_check()
cxx_flags = []
options = []
+ # #################### Base Settings #######################
+
mpi_bin = spec['mpi'].prefix.bin
- # Note: -DXYZ_LIBRARY_NAMES= needs semicolon separated list of names
- blas = spec['blas'].blas_libs
- lapack = spec['lapack'].lapack_libs
options.extend([
- '-DTrilinos_ENABLE_ALL_PACKAGES:BOOL=ON',
- '-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=ON',
'-DTrilinos_VERBOSE_CONFIGURE:BOOL=OFF',
'-DTrilinos_ENABLE_TESTS:BOOL=OFF',
'-DTrilinos_ENABLE_EXAMPLES:BOOL=OFF',
- '-DCMAKE_BUILD_TYPE:STRING=%s' % (
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
+ '-DTrilinos_ENABLE_CXX11:BOOL=ON',
'-DBUILD_SHARED_LIBS:BOOL=%s' % (
'ON' if '+shared' in spec else 'OFF'),
+
+ # The following can cause problems on systems that don't have
+ # static libraries available for things like dl and pthreads
+ # for example when trying to build static libs
+ # '-DTPL_FIND_SHARED_LIBS:BOOL=%s' % (
+ # 'ON' if '+shared' in spec else 'OFF'),
+ # '-DTrilinos_LINK_SEARCH_START_STATIC:BOOL=%s' % (
+ # 'OFF' if '+shared' in spec else 'ON'),
+
+ # Force Trilinos to use the MPI wrappers instead of raw compilers
+ # this is needed on Apple systems that require full resolution of
+ # all symbols when linking shared libraries
'-DTPL_ENABLE_MPI:BOOL=ON',
- '-DMPI_BASE_DIR:PATH=%s' % spec['mpi'].prefix,
+ '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
+ '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
+ '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
+ '-DMPI_BASE_DIR:PATH=%s' % spec['mpi'].prefix
+ ])
+
+ # ################## Trilinos Packages #####################
+
+ options.extend([
+ '-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=%s' % (
+ 'ON' if '+alloptpkgs' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Tpetra:BOOL=%s' % (
+ 'ON' if '+tpetra' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Epetra:BOOL=%s' % (
+ 'ON' if '+epetra' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_EpetraExt:BOOL=%s' % (
+ 'ON' if '+epetraext' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_ML:BOOL=%s' % (
+ 'ON' if '+ml' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_AztecOO:BOOL=%s' % (
+ 'ON' if '+aztec' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Sacado:BOOL=%s' % (
+ 'ON' if '+sacado' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Belos:BOOL=%s' % (
+ 'ON' if '+belos' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Zoltan:BOOL=%s' % (
+ 'ON' if '+zoltan' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Zoltan2:BOOL=%s' % (
+ 'ON' if '+zoltan2' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Amesos:BOOL=%s' % (
+ 'ON' if '+amesos' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Amesos2:BOOL=%s' % (
+ 'ON' if '+amesos2' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_MueLu:BOOL=%s' % (
+ 'ON' if '+muelu' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Ifpack:BOOL=%s' % (
+ 'ON' if '+ifpack' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Ifpack2:BOOL=%s' % (
+ 'ON' if '+ifpack2' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Gtest:BOOL=%s' % (
+ 'ON' if '+gtest' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Teuchos:BOOL=%s' % (
+ 'ON' if '+teuchos' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Anasazi:BOOL=%s' % (
+ 'ON' if '+anasazi' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_ROL:BOOL=%s' % (
+ 'ON' if '+rol' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_NOX:BOOL=%s' % (
+ 'ON' if '+nox' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Shards=%s' % (
+ 'ON' if '+shards' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Intrepid=%s' % (
+ 'ON' if '+intrepid' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_Intrepid2=%s' % (
+ 'ON' if '+intrepid2' in spec else 'OFF'),
+ ])
+
+ if '+xsdkflags' in spec:
+ options.extend(['-DUSE_XSDK_DEFAULTS=YES'])
+
+ if '+stk' in spec:
+ # Currently these are fairly specific to the Nalu package
+ # They can likely change when necessary in the future
+ options.extend([
+ '-DTrilinos_ENABLE_STKMesh:BOOL=ON',
+ '-DTrilinos_ENABLE_STKSimd:BOOL=ON',
+ '-DTrilinos_ENABLE_STKIO:BOOL=ON',
+ '-DTrilinos_ENABLE_STKTransfer:BOOL=ON',
+ '-DTrilinos_ENABLE_STKSearch:BOOL=ON',
+ '-DTrilinos_ENABLE_STKUtil:BOOL=ON',
+ '-DTrilinos_ENABLE_STKTopology:BOOL=ON',
+ '-DTrilinos_ENABLE_STKUnit_tests:BOOL=ON',
+ '-DTrilinos_ENABLE_STKUnit_test_utils:BOOL=ON',
+ '-DTrilinos_ENABLE_STKClassic:BOOL=OFF'
+ ])
+
+ if '+dtk' in spec:
+ options.extend([
+ '-DTrilinos_EXTRA_REPOSITORIES:STRING=DataTransferKit',
+ '-DTpetra_INST_INT_UNSIGNED_LONG:BOOL=ON',
+ '-DTrilinos_ENABLE_DataTransferKit:BOOL=ON'
+ ])
+
+ if '+exodus' in spec:
+ # Currently these are fairly specific to the Nalu package
+ # They can likely change when necessary in the future
+ options.extend([
+ '-DTrilinos_ENABLE_SEACAS:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASExodus:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASEpu:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASExodiff:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASNemspread:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASNemslice:BOOL=ON',
+ '-DTrilinos_ENABLE_SEACASIoss:BOOL=ON'
+ ])
+ else:
+ options.extend([
+ '-DTrilinos_ENABLE_SEACAS:BOOL=OFF',
+ '-DTrilinos_ENABLE_SEACASExodus:BOOL=OFF'
+ ])
+
+ # ######################### TPLs #############################
+
+ blas = spec['blas'].libs
+ lapack = spec['lapack'].libs
+ # Note: -DXYZ_LIBRARY_NAMES= needs semicolon separated list of names
+ options.extend([
'-DTPL_ENABLE_BLAS=ON',
'-DBLAS_LIBRARY_NAMES=%s' % ';'.join(blas.names),
'-DBLAS_LIBRARY_DIRS=%s' % ';'.join(blas.directories),
'-DTPL_ENABLE_LAPACK=ON',
'-DLAPACK_LIBRARY_NAMES=%s' % ';'.join(lapack.names),
'-DLAPACK_LIBRARY_DIRS=%s' % ';'.join(lapack.directories),
- '-DTrilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON',
- '-DTrilinos_ENABLE_CXX11:BOOL=ON',
'-DTPL_ENABLE_Netcdf:BOOL=ON',
- '-DCMAKE_INSTALL_NAME_DIR:PATH=%s/lib' % self.prefix
+ '-DNetCDF_ROOT:PATH=%s' % spec['netcdf'].prefix,
+ '-DTPL_ENABLE_X11:BOOL=%s' % (
+ 'ON' if '+x11' in spec else 'OFF'),
+ '-DTrilinos_ENABLE_PyTrilinos:BOOL=%s' % (
+ 'ON' if '+python' in spec else 'OFF'),
])
- # Force Trilinos to use the MPI wrappers instead of raw compilers
- # this is needed on Apple systems that require full resolution of
- # all symbols when linking shared libraries
- options.extend([
- '-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
- '-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
- '-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc
- ])
if '+hypre' in spec:
options.extend([
'-DTPL_ENABLE_HYPRE:BOOL=ON',
@@ -186,25 +395,6 @@ class Trilinos(CMakePackage):
'-DHYPRE_LIBRARY_DIRS:PATH=%s' % spec['hypre'].prefix.lib
])
- if spec.satisfies('%intel') and spec.satisfies('@12.6.2'):
- # Panzer uses some std:chrono that is not recognized by Intel
- # Don't know which (maybe all) Trilinos versions this applies to
- # Don't know which (maybe all) Intel versions this applies to
- options.extend([
- '-DTrilinos_ENABLE_Panzer:BOOL=OFF'
- ])
-
- if '+xsdkflags' in spec:
- options.extend(['-DUSE_XSDK_DEFAULTS=YES'])
- if '+hdf5' in spec:
- options.extend([
- '-DTPL_ENABLE_HDF5:BOOL=ON',
- '-DHDF5_INCLUDE_DIRS:PATH=%s' % spec['hdf5'].prefix.include,
- '-DHDF5_LIBRARY_DIRS:PATH=%s' % spec['hdf5'].prefix.lib
- ])
- else:
- options.extend(['-DTPL_ENABLE_HDF5:BOOL=OFF'])
-
if '+boost' in spec:
options.extend([
'-DTPL_ENABLE_Boost:BOOL=ON',
@@ -223,18 +413,6 @@ class Trilinos(CMakePackage):
else:
options.extend(['-DTPL_ENABLE_HDF5:BOOL=OFF'])
- # Fortran lib
- if spec.satisfies('%gcc') or spec.satisfies('%clang'):
- libgfortran = os.path.dirname(os.popen(
- '%s --print-file-name libgfortran.a' %
- join_path(mpi_bin, 'mpif90')).read())
- options.extend([
- '-DTrilinos_EXTRA_LINK_FLAGS:STRING=-L%s/ -lgfortran' % (
- libgfortran),
- '-DTrilinos_ENABLE_Fortran=ON'
- ])
-
- # suite-sparse related
if '+suite-sparse' in spec:
options.extend([
# FIXME: Trilinos seems to be looking for static libs only,
@@ -259,7 +437,6 @@ class Trilinos(CMakePackage):
'-DTPL_ENABLE_UMFPACK:BOOL=OFF',
])
- # metis / parmetis
if '+metis' in spec:
options.extend([
'-DTPL_ENABLE_METIS:BOOL=ON',
@@ -279,16 +456,16 @@ class Trilinos(CMakePackage):
'-DTPL_ENABLE_ParMETIS:BOOL=OFF',
])
- # mumps / scalapack
if '+mumps' in spec:
+ scalapack = spec['scalapack'].libs
options.extend([
'-DTPL_ENABLE_MUMPS:BOOL=ON',
'-DMUMPS_LIBRARY_DIRS=%s' % spec['mumps'].prefix.lib,
# order is important!
'-DMUMPS_LIBRARY_NAMES=dmumps;mumps_common;pord',
'-DTPL_ENABLE_SCALAPACK:BOOL=ON',
- # FIXME: for MKL it's mkl_scalapack_lp64;mkl_blacs_mpich_lp64
- '-DSCALAPACK_LIBRARY_NAMES=scalapack'
+ '-DSCALAPACK_LIBRARY_NAMES=%s' % ';'.join(scalapack.names),
+ '-DSCALAPACK_LIBRARY_DIRS=%s' % ';'.join(scalapack.directories)
])
# see
# https://github.com/trilinos/Trilinos/blob/master/packages/amesos/README-MUMPS
@@ -301,7 +478,6 @@ class Trilinos(CMakePackage):
'-DTPL_ENABLE_SCALAPACK:BOOL=OFF',
])
- # superlu-dist:
if '+superlu-dist' in spec:
# Amesos, conflicting types of double and complex SLU_D
# see
@@ -328,7 +504,6 @@ class Trilinos(CMakePackage):
'-DTPL_ENABLE_SuperLUDist:BOOL=OFF',
])
- # superlu:
if '+superlu' in spec:
options.extend([
'-DTPL_ENABLE_SuperLU:BOOL=ON',
@@ -342,14 +517,91 @@ class Trilinos(CMakePackage):
'-DTPL_ENABLE_SuperLU:BOOL=OFF',
])
- # python
- if '+python' in spec:
+ if '+pnetcdf' in spec:
options.extend([
- '-DTrilinos_ENABLE_PyTrilinos:BOOL=ON'
+ '-DTPL_ENABLE_Pnetcdf:BOOL=ON',
+ '-DTPL_Netcdf_Enables_Netcdf4:BOOL=ON',
+ '-DTPL_Netcdf_PARALLEL:BOOL=ON',
+ '-DPNetCDF_ROOT:PATH=%s' % spec['parallel-netcdf'].prefix
])
else:
options.extend([
- '-DTrilinos_ENABLE_PyTrilinos:BOOL=OFF'
+ '-DTPL_ENABLE_Pnetcdf:BOOL=OFF'
+ ])
+
+ if '+zlib' in spec:
+ options.extend([
+ '-DTPL_ENABLE_Zlib:BOOL=ON',
+ '-DZlib_ROOT:PATH=%s' % spec['zlib'].prefix,
+ ])
+ else:
+ options.extend([
+ '-DTPL_ENABLE_Zlib:BOOL=OFF'
+ ])
+
+ # ################# Miscellaneous Stuff ######################
+
+ # OpenMP
+ if '+openmp' in spec:
+ options.extend([
+ '-DTrilinos_ENABLE_OpenMP:BOOL=ON',
+ '-DKokkos_ENABLE_OpenMP:BOOL=ON'
+ ])
+ if '+tpetra' in spec:
+ options.extend([
+ '-DTpetra_INST_OPENMP:BOOL=ON'
+ ])
+
+ # Fortran lib
+ if '+fortran' in spec:
+ if spec.satisfies('%gcc') or spec.satisfies('%clang'):
+ libgfortran = os.path.dirname(os.popen(
+ '%s --print-file-name libgfortran.a' %
+ join_path(mpi_bin, 'mpif90')).read())
+ options.extend([
+ '-DTrilinos_EXTRA_LINK_FLAGS:STRING=-L%s/ -lgfortran' % (
+ libgfortran),
+ '-DTrilinos_ENABLE_Fortran=ON'
+ ])
+
+ # Explicit instantiation
+ if '+instantiate' in spec:
+ options.extend([
+ '-DTrilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON'
+ ])
+ if '+tpetra' in spec:
+ options.extend([
+ '-DTpetra_INST_DOUBLE:BOOL=ON',
+ '-DTpetra_INST_INT_LONG:BOOL=ON'
+ '-DTpetra_INST_COMPLEX_DOUBLE=%s' % (
+ 'ON' if '+instantiate_cmplx' in spec else 'OFF'
+ )
+ ])
+
+ # disable due to compiler / config errors:
+ if spec.satisfies('%xl') or spec.satisfies('%xl_r'):
+ options.extend([
+ '-DTrilinos_ENABLE_Pamgen:BOOL=OFF',
+ '-DTrilinos_ENABLE_Stokhos:BOOL=OFF'
+ ])
+
+ if sys.platform == 'darwin':
+ options.extend([
+ '-DTrilinos_ENABLE_FEI=OFF'
+ ])
+
+ if sys.platform == 'darwin' and macOS_version() >= Version('10.12'):
+ # use @rpath on Sierra due to limit of dynamic loader
+ options.append('-DCMAKE_MACOSX_RPATH=ON')
+ else:
+ options.append('-DCMAKE_INSTALL_NAME_DIR:PATH=%s' % prefix.lib)
+
+ if spec.satisfies('%intel') and spec.satisfies('@12.6.2'):
+ # Panzer uses some std:chrono that is not recognized by Intel
+ # Don't know which (maybe all) Trilinos versions this applies to
+ # Don't know which (maybe all) Intel versions this applies to
+ options.extend([
+ '-DTrilinos_ENABLE_Panzer:BOOL=OFF'
])
# collect CXX flags:
@@ -359,17 +611,12 @@ class Trilinos(CMakePackage):
# disable due to compiler / config errors:
options.extend([
- '-DTrilinos_ENABLE_SEACAS=OFF',
- '-DTrilinos_ENABLE_Pike=OFF',
- '-DTrilinos_ENABLE_STK=OFF'
+ '-DTrilinos_ENABLE_Pike=OFF'
])
- if sys.platform == 'darwin':
- options.extend([
- '-DTrilinos_ENABLE_FEI=OFF'
- ])
+
return options
- @CMakePackage.sanity_check('install')
+ @run_after('install')
def filter_python(self):
# When trilinos is built with Python, libpytrilinos is included
# through cmake configure files. Namely, Trilinos_LIBRARIES in
diff --git a/var/spack/repos/builtin/packages/trilinos/xlf_seacas.patch b/var/spack/repos/builtin/packages/trilinos/xlf_seacas.patch
new file mode 100644
index 0000000000..04e84d93fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trilinos/xlf_seacas.patch
@@ -0,0 +1,12 @@
+--- a/packages/seacas/cmake/FortranSettings.cmake 2017-06-26 15:28:54.660570160 -0400
++++ b/pacakges/seacas/cmake/FortranSettings.cmake 2017-06-26 15:28:05.650565259 -0400
+@@ -7,7 +7,7 @@
+ IF ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "GNU")
+ SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fcray-pointer -fdefault-real-8 -fdefault-integer-8 -fno-range-check")
+ ELSEIF ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "XL")
+- SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -WF,-D__XLF__ -qintsize=8 -qrealsize=8")
++ SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -qfixed -WF,-D__XLF__ -qintsize=8 -qrealsize=8")
+ ELSE()
+ SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -r8 -i8")
+ ENDIF()
+
diff --git a/var/spack/repos/builtin/packages/trimgalore/package.py b/var/spack/repos/builtin/packages/trimgalore/package.py
new file mode 100644
index 0000000000..e1dca34f43
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trimgalore/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Trimgalore(Package):
+ """Trim Galore! is a wrapper around Cutadapt and FastQC to consistently
+ apply adapter and quality trimming to FastQ files, with extra
+ functionality for RRBS data."""
+
+ homepage = "https://github.com/FelixKrueger/TrimGalore"
+ url = "https://github.com/FelixKrueger/TrimGalore/archive/0.4.4.tar.gz"
+
+ version('0.4.4', 'aae1b807b48e38bae7074470203997bb')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('py-cutadapt', type=('build', 'run'))
+ depends_on('fastqc')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('trim_galore', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/trimmomatic/package.py b/var/spack/repos/builtin/packages/trimmomatic/package.py
new file mode 100644
index 0000000000..da741d5017
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trimmomatic/package.py
@@ -0,0 +1,65 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+from distutils.dir_util import copy_tree
+from shutil import copyfile
+import os.path
+
+
+class Trimmomatic(Package):
+ """A flexible read trimming tool for Illumina NGS data."""
+
+ homepage = "http://www.usadellab.org/cms/?page=trimmomatic"
+ url = "http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.36.zip"
+
+ # Older version aren't explicitly made available, but the URL
+ # works as we'd like it to, so...
+ version('0.36', '8549130d86b6f0382b1a71a2eb45de39')
+ version('0.33', '924fc8eb38fdff71740a0e05d32d6a2b')
+
+ depends_on('java@8:', type='run')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ jar_file = 'trimmomatic-{v}.jar'.format(v=self.version.dotted)
+ install(jar_file, prefix.bin)
+
+ # Put the adapter files someplace sensible
+ copy_tree('adapters', join_path(self.prefix.share, 'adapters'))
+
+ # Set up a helper script to call java on the jar file,
+ # explicitly codes the path for java and the jar file.
+ script_sh = join_path(os.path.dirname(__file__), "trimmomatic.sh")
+ script = join_path(prefix.bin, "trimmomatic")
+ copyfile(script_sh, script)
+ set_executable(script)
+
+ # Munge the helper script to explicitly point to java and the
+ # jar file.
+ java = join_path(self.spec['java'].prefix, 'bin', 'java')
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('trimmomatic.jar', join_path(prefix.bin, jar_file),
+ script, **kwargs)
diff --git a/var/spack/repos/builtin/packages/trimmomatic/trimmomatic.sh b/var/spack/repos/builtin/packages/trimmomatic/trimmomatic.sh
new file mode 100644
index 0000000000..88990aa3ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/trimmomatic/trimmomatic.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the trimmomatic.jar file
+java $JAVA_ARGS $JAVA_OPTS -jar trimmomatic.jar "$@"
diff --git a/var/spack/repos/builtin/packages/turbine/package.py b/var/spack/repos/builtin/packages/turbine/package.py
new file mode 100644
index 0000000000..d12fa0a41c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/turbine/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Turbine(AutotoolsPackage):
+ """Turbine: The Swift/T runtime"""
+
+ homepage = 'http://swift-lang.org/Swift-T'
+ url = 'http://swift-lang.github.io/swift-t-downloads/turbine-1.0.0.tar.gz'
+
+ version('1.0.0', '7ed56d65d6db0bfe15a439d818b4259e')
+
+ depends_on('adlbx')
+ depends_on('tcl')
+ depends_on('zsh', type='run')
+
+ def configure_args(self):
+ args = ['--with-c-utils=' + self.spec['exmcutils'].prefix,
+ '--with-adlb=' + self.spec['adlbx'].prefix,
+ '--with-tcl=' + self.spec['tcl'].prefix,
+ '--with-mpi=' + self.spec['mpi'].prefix]
+ return args
diff --git a/var/spack/repos/builtin/packages/turbomole/package.py b/var/spack/repos/builtin/packages/turbomole/package.py
index cf14259da4..14af3e4bdf 100644
--- a/var/spack/repos/builtin/packages/turbomole/package.py
+++ b/var/spack/repos/builtin/packages/turbomole/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/tut/package.py b/var/spack/repos/builtin/packages/tut/package.py
new file mode 100644
index 0000000000..c0d2bbcc8f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tut/package.py
@@ -0,0 +1,43 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Tut(WafPackage):
+ """TUT is a small and portable unit test framework for C++."""
+
+ homepage = "http://mrzechonek.github.io/tut-framework/"
+ url = "https://github.com/mrzechonek/tut-framework/tarball/2016-12-19"
+
+ version('2016-12-19', '8b1967fa295ae1ce4d4431c2f811e521')
+
+ def build_args(self):
+ args = []
+
+ if self.run_tests:
+ # Run unit tests
+ args.append('--test')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/twm/package.py b/var/spack/repos/builtin/packages/twm/package.py
index 3e37f4903d..b467420c82 100644
--- a/var/spack/repos/builtin/packages/twm/package.py
+++ b/var/spack/repos/builtin/packages/twm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Twm(Package):
+class Twm(AutotoolsPackage):
"""twm is a window manager for the X Window System. It provides
titlebars, shaped windows, several forms of icon management,
user-defined macro functions, click-to-type and pointer-driven
@@ -48,9 +48,3 @@ class Twm(Package):
depends_on('flex', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/tycho2/package.py b/var/spack/repos/builtin/packages/tycho2/package.py
new file mode 100644
index 0000000000..0f54c2e661
--- /dev/null
+++ b/var/spack/repos/builtin/packages/tycho2/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Tycho2(MakefilePackage):
+ """A neutral particle transport mini-app to study performance of sweeps
+ on unstructured, 3D tetrahedral meshes.
+ """
+ homepage = "https://github.com/lanl/tycho2"
+ url = "https://github.com/lanl/tycho2/tarball/v0.1"
+
+ version('develop', git='https://github.com/lanl/tycho2', branch='master')
+
+ depends_on("mpi")
+
+ def patch(self):
+ # make.inc is included by Makefile to set MPICC, but we that
+ # through build_targets() below, so any empty include file is fine.
+ touch('make.inc')
+
+ @property
+ def build_targets(self):
+ targets = [
+ 'MPICC={0} -std=c++11 {1}'.format(self.spec['mpi'].mpicxx,
+ self.compiler.openmp_flag)
+ ]
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('sweep.x', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/typhonio/package.py b/var/spack/repos/builtin/packages/typhonio/package.py
new file mode 100644
index 0000000000..35fe269fd6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/typhonio/package.py
@@ -0,0 +1,60 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/llnl/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Typhonio(CMakePackage):
+ """TyphonIO is a library of routines that perform input/output (I/O)
+ of scientific data within application codes"""
+
+ homepage = "http://uk-mac.github.io/typhonio/"
+ url = "https://github.com/UK-MAC/typhonio/archive/v1.6_CMake.tar.gz"
+
+ version('1.6_CMake', '8e8b2940a57874205e6d451856db5c2755884bf9')
+ version('develop', git='https://github.com/UK-MAC/typhonio.git',
+ branch='cmake_build')
+
+ variant('build_type', default='Release', description='The build type to build',
+ values=('Debug', 'Release'))
+ variant('fortran', default=False, description='Enable Fortran support')
+ variant('shared', default=False, description='Build shared libraries')
+ variant('docs', default=False, description='Build user guide and doxygen documentation')
+
+ depends_on('mpi')
+ depends_on('hdf5')
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
+
+ if "+fortran" in spec:
+ cmake_args.append("-DBUILD_FORTRAN_LIBRARY=ON")
+ if "+shared" in spec:
+ cmake_args.append("-DBUILD_TIO_SHARED=ON")
+ if "+docs" in spec:
+ cmake_args.append("-DBUILD_DOXYGEN_DOCS=ON")
+ cmake_args.append("-DBUILD_USER_GUIDE=ON")
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/uberftp/package.py b/var/spack/repos/builtin/packages/uberftp/package.py
index b0c6c8a42f..040434f1b1 100644
--- a/var/spack/repos/builtin/packages/uberftp/package.py
+++ b/var/spack/repos/builtin/packages/uberftp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Uberftp(Package):
+class Uberftp(AutotoolsPackage):
"""UberFTP is an interactive (text-based) client for GridFTP"""
homepage = "http://toolkit.globus.org/grid_software/data/uberftp.php"
@@ -36,9 +36,3 @@ class Uberftp(Package):
version('2_6', '784210976f259f9d19c0798c19778d34')
depends_on('globus-toolkit')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/udunits2/package.py b/var/spack/repos/builtin/packages/udunits2/package.py
index cfc8e30c41..0e273f60ab 100644
--- a/var/spack/repos/builtin/packages/udunits2/package.py
+++ b/var/spack/repos/builtin/packages/udunits2/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,11 +29,10 @@ class Udunits2(AutotoolsPackage):
"""Automated units conversion"""
homepage = "http://www.unidata.ucar.edu/software/udunits"
- url = "ftp://ftp.unidata.ucar.edu/pub/udunits/udunits-2.2.21.tar.gz"
+ url = "https://www.gfd-dennou.org/arch/ucar/unidata/pub/udunits/udunits-2.2.24.tar.gz"
- version('2.2.21', '1f6d3375efc1f124790a4efb7102cdb7')
+ version('2.2.24', '898b90dc1890f172c493406d0f26f531')
+ version('2.2.23', '9f66006accecd621a4c3eda4ba9fa7c9')
+ version('2.2.21', '1585a5efb2c40c00601abab036a81299')
depends_on('expat')
-
- depends_on('bison', type='build')
- depends_on('flex', type='build')
diff --git a/var/spack/repos/builtin/packages/uncrustify/package.py b/var/spack/repos/builtin/packages/uncrustify/package.py
index c3182d0dc8..fdd7a49ec7 100644
--- a/var/spack/repos/builtin/packages/uncrustify/package.py
+++ b/var/spack/repos/builtin/packages/uncrustify/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Uncrustify(Package):
+class Uncrustify(AutotoolsPackage):
"""Source Code Beautifier for C, C++, C#, ObjectiveC, Java, and others."""
homepage = "http://uncrustify.sourceforge.net/"
url = "http://downloads.sourceforge.net/project/uncrustify/uncrustify/uncrustify-0.61/uncrustify-0.61.tar.gz"
version('0.61', 'b6140106e74c64e831d0b1c4b6cf7727')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/unibilium/package.py b/var/spack/repos/builtin/packages/unibilium/package.py
index 943e4737e1..74cea8c8e2 100644
--- a/var/spack/repos/builtin/packages/unibilium/package.py
+++ b/var/spack/repos/builtin/packages/unibilium/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/unison/package.py b/var/spack/repos/builtin/packages/unison/package.py
index 181e1e6410..3d94ca7f49 100644
--- a/var/spack/repos/builtin/packages/unison/package.py
+++ b/var/spack/repos/builtin/packages/unison/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -34,7 +34,7 @@ class Unison(Package):
other."""
homepage = "https://www.cis.upenn.edu/~bcpierce/unison/"
- url = "https://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.48.3.tar.gz"
+ url = "https://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.48.4.tar.gz"
version('2.48.4', '5334b78c7e68169df7de95f4c6c4b60f')
diff --git a/var/spack/repos/builtin/packages/units/package.py b/var/spack/repos/builtin/packages/units/package.py
new file mode 100644
index 0000000000..502dc999b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/units/package.py
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Units(AutotoolsPackage):
+ """GNU units converts between different systems of units"""
+
+ homepage = "https://www.gnu.org/software/units/"
+ url = "https://ftp.gnu.org/gnu/units/units-2.13.tar.gz"
+
+ version('2.13', '5cbf2a6af76e94ba0ac55fc8d99d5a3e')
+
+ depends_on('python', type=('build', 'run'))
diff --git a/var/spack/repos/builtin/packages/unixodbc/package.py b/var/spack/repos/builtin/packages/unixodbc/package.py
index 15de127b7e..30a771cdf2 100644
--- a/var/spack/repos/builtin/packages/unixodbc/package.py
+++ b/var/spack/repos/builtin/packages/unixodbc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,18 +25,15 @@
from spack import *
-class Unixodbc(Package):
+class Unixodbc(AutotoolsPackage):
"""ODBC is an open specification for providing application developers with
a predictable API with which to access Data Sources. Data Sources include
SQL Servers and any Data Source with an ODBC Driver."""
homepage = "http://www.unixodbc.org/"
- url = "ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz"
+ url = "http://www.unixodbc.org/unixODBC-2.3.4.tar.gz"
version('2.3.4', 'bd25d261ca1808c947cb687e2034be81')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
+ depends_on('libiconv')
+ depends_on('libtool')
diff --git a/var/spack/repos/builtin/packages/usearch/package.py b/var/spack/repos/builtin/packages/usearch/package.py
new file mode 100644
index 0000000000..b426376404
--- /dev/null
+++ b/var/spack/repos/builtin/packages/usearch/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class Usearch(Package):
+ """USEARCH is a unique sequence analysis tool with thousands of users
+ world-wide.
+
+ Note: A manual download is required for USEARCH.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "http://www.drive5.com/usearch/"
+
+ version('10.0.240', '05192b6d5e291530c190a19a3cc82b53', expand=False)
+
+ def url_for_version(self, version):
+ return "file://{0}/usearch{1}_i86linux32".format(os.getcwd(), version)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('usearch{0}_i86linux32'.format(self.version),
+ prefix.bin.usearch)
diff --git a/var/spack/repos/builtin/packages/util-linux/package.py b/var/spack/repos/builtin/packages/util-linux/package.py
index 99af170ca1..f013737347 100644
--- a/var/spack/repos/builtin/packages/util-linux/package.py
+++ b/var/spack/repos/builtin/packages/util-linux/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,20 +25,29 @@
from spack import *
-class UtilLinux(Package):
+class UtilLinux(AutotoolsPackage):
"""Util-linux is a suite of essential utilities for any Linux system."""
homepage = "http://freecode.com/projects/util-linux"
- url = "https://www.kernel.org/pub/linux/utils/util-linux/v2.25/util-linux-2.25.tar.gz"
+ url = "https://www.kernel.org/pub/linux/utils/util-linux/v2.29/util-linux-2.29.2.tar.gz"
+ list_url = "https://www.kernel.org/pub/linux/utils/util-linux"
+ list_depth = 1
- version('2.25', 'f6d7fc6952ec69c4dc62c8d7c59c1d57')
+ version('2.29.2', '24e0c67aac6f5c2535208866a42aeea2')
+ version('2.29.1', 'c7d5c111ef6bc5df65659e0b523ac9d9')
+ version('2.25', 'f6d7fc6952ec69c4dc62c8d7c59c1d57')
- depends_on("python@2.7:")
+ depends_on('python@2.7:')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "PKG_CONFIG_PATH=%s/pkgconfig" % spec['python'].prefix.lib,
- "--disable-use-tty-group")
+ def url_for_version(self, version):
+ url = "https://www.kernel.org/pub/linux/utils/util-linux/v{0}/util-linux-{1}.tar.gz"
+ return url.format(version.up_to(2), version)
- make()
- make("install")
+ def configure_args(self):
+ spec = self.spec
+
+ return [
+ 'PKG_CONFIG_PATH={0}'.format(
+ join_path(spec['python'].prefix.lib, 'pkgconfig')),
+ '--disable-use-tty-group',
+ ]
diff --git a/var/spack/repos/builtin/packages/util-macros/package.py b/var/spack/repos/builtin/packages/util-macros/package.py
index 486d4463b0..e49987a57f 100644
--- a/var/spack/repos/builtin/packages/util-macros/package.py
+++ b/var/spack/repos/builtin/packages/util-macros/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,17 +25,13 @@
from spack import *
-class UtilMacros(Package):
+class UtilMacros(AutotoolsPackage):
"""This is a set of autoconf macros used by the configure.ac scripts in
other Xorg modular packages, and is needed to generate new versions
of their configure scripts with autoconf."""
homepage = "http://cgit.freedesktop.org/xorg/util/macros/"
- url = "https://www.x.org/archive/individual/util/util-macros-1.19.0.tar.bz2"
+ url = "https://www.x.org/archive/individual/util/util-macros-1.19.1.tar.bz2"
+ version('1.19.1', '6e76e546a4e580f15cebaf8019ef1625')
version('1.19.0', '1cf984125e75f8204938d998a8b6c1e1')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/uuid/package.py b/var/spack/repos/builtin/packages/uuid/package.py
index 5bcf59d9bf..5ad2e75341 100644
--- a/var/spack/repos/builtin/packages/uuid/package.py
+++ b/var/spack/repos/builtin/packages/uuid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/valgrind/package.py b/var/spack/repos/builtin/packages/valgrind/package.py
index e7ae227c27..b950e1cffd 100644
--- a/var/spack/repos/builtin/packages/valgrind/package.py
+++ b/var/spack/repos/builtin/packages/valgrind/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -22,11 +22,11 @@
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
-
from spack import *
+import sys
-class Valgrind(Package):
+class Valgrind(AutotoolsPackage):
"""An instrumentation framework for building dynamic analysis.
There are Valgrind tools that can automatically detect many memory
@@ -40,20 +40,39 @@ class Valgrind(Package):
homepage = "http://valgrind.org/"
url = "http://valgrind.org/downloads/valgrind-3.11.0.tar.bz2"
+ version('3.12.0', '6eb03c0c10ea917013a7622e483d61bb')
version('3.11.0', '4ea62074da73ae82e0162d6550d3f129')
version('3.10.1', '60ddae962bc79e7c95cfc4667245707f')
version('3.10.0', '7c311a72a20388aceced1aa5573ce970')
+ version('develop', svn='svn://svn.valgrind.org/valgrind/trunk')
- variant('mpi', default=True, description='Activates MPI support for valgrind')
+ variant('mpi', default=True,
+ description='Activates MPI support for valgrind')
variant('boost', default=True,
description='Activates boost support for valgrind')
depends_on('mpi', when='+mpi')
depends_on('boost', when='+boost')
- def install(self, spec, prefix):
- options = ['--prefix=%s' % prefix,
- '--enable-ubsan']
- configure(*options)
- make()
- make("install")
+ depends_on("autoconf", type='build', when='@develop')
+ depends_on("automake", type='build', when='@develop')
+ depends_on("libtool", type='build', when='@develop')
+
+ # Apply the patch suggested here:
+ # http://valgrind.10908.n7.nabble.com/Unable-to-compile-on-Mac-OS-X-10-11-td57237.html
+ patch('valgrind_3_12_0_osx.patch', when='@3.12.0 platform=darwin')
+
+ def configure_args(self):
+ spec = self.spec
+ options = []
+ if not (spec.satisfies('%clang') and sys.platform == 'darwin'):
+ # Otherwise with (Apple's) clang there is a linker error:
+ # clang: error: unknown argument: '-static-libubsan'
+ options.append('--enable-ubsan')
+
+ if sys.platform == 'darwin':
+ options.extend([
+ '--build=amd64-darwin',
+ '--enable-only64bit'
+ ])
+ return options
diff --git a/var/spack/repos/builtin/packages/valgrind/valgrind_3_12_0_osx.patch b/var/spack/repos/builtin/packages/valgrind/valgrind_3_12_0_osx.patch
new file mode 100644
index 0000000000..109cbc31f7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/valgrind/valgrind_3_12_0_osx.patch
@@ -0,0 +1,13 @@
+diff --git a/coregrind/m_main.c b/coregrind/m_main.c
+index d008ab3..42d8f30 100644
+--- a/coregrind/m_main.c
++++ b/coregrind/m_main.c
+@@ -4058,7 +4058,7 @@ UWord voucher_mach_msg_set ( UWord arg1 )
+
+ #endif
+
+-#if defined(VGO_darwin) && DARWIN_VERS == DARWIN_10_10
++#if defined(VGO_darwin)
+
+ /* This might also be needed for > DARWIN_10_10, but I have no way
+ to test for that. Hence '==' rather than '>=' in the version
diff --git a/var/spack/repos/builtin/packages/vampirtrace/package.py b/var/spack/repos/builtin/packages/vampirtrace/package.py
new file mode 100644
index 0000000000..bc53cc6008
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vampirtrace/package.py
@@ -0,0 +1,73 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vampirtrace(AutotoolsPackage):
+ """VampirTrace is an open source library that allows detailed logging of
+ program execution for parallel applications using message passing (MPI)
+ and threads (OpenMP, Pthreads)."""
+
+ homepage = "https://tu-dresden.de/zih/forschung/projekte/vampirtrace"
+ url = "http://wwwpub.zih.tu-dresden.de/~mlieber/dcount/dcount.php?package=vampirtrace&get=VampirTrace-5.14.4.tar.gz"
+
+ version('5.14.4', '1c92b23169df9bcc860e5fc737dbc9c9')
+
+ variant('mpi', default=True, description='Enable MPI support')
+
+ depends_on('mpi', when='+mpi')
+ depends_on('otf')
+ depends_on('papi')
+ depends_on('zlib')
+
+ def patch(self):
+ path = 'tools/vtwrapper/vt{0}-wrapper-data.txt.in'
+
+ for wrapper in ('cc', 'c++', 'fort'):
+ filter_file('@VT_WRAPPER_OPARI_TAB_COMPILER@',
+ '@VT_WRAPPER_CC_COMPILER@',
+ path.format(wrapper))
+
+ def configure_args(self):
+ spec = self.spec
+ compiler = self.compiler
+
+ args = [
+ '--with-extern-otf',
+ '--with-extern-otf-dir={0}'.format(spec['otf'].prefix),
+ '--with-papi-dir={0}'.format(spec['papi'].prefix),
+ '--with-zlib-dir={0}'.format(spec['zlib'].prefix),
+ '--with-wrapper-cc-compiler={0}'.format(compiler.cc),
+ '--with-wrapper-cc-cpp={0} -E'.format(compiler.cc),
+ '--with-wrapper-cxx-compiler={0}'.format(compiler.cxx),
+ '--with-wrapper-cxx-cpp={0} -E'.format(compiler.cxx),
+ '--with-wrapper-fc-compiler={0}'.format(compiler.fc),
+ '--with-wrapper-fc-cpp={0} -E'.format(compiler.fc)
+ ]
+
+ if '+mpi' in spec:
+ args.append('--with-mpi-dir={0}'.format(spec['mpi'].prefix))
+
+ return args
diff --git a/var/spack/repos/builtin/packages/vardictjava/package.py b/var/spack/repos/builtin/packages/vardictjava/package.py
new file mode 100644
index 0000000000..66745a6a58
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vardictjava/package.py
@@ -0,0 +1,47 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import glob
+
+
+class Vardictjava(Package):
+ """VarDictJava is a variant discovery program written in Java.
+ It is a partial Java port of VarDict variant caller."""
+
+ homepage = "https://github.com/AstraZeneca-NGS/VarDictJava"
+ url = "https://github.com/AstraZeneca-NGS/VarDictJava/releases/download/v1.5.1/VarDict-1.5.1.tar"
+
+ version('1.5.1', '8c0387bcc1f7dc696b04e926c48b27e6')
+
+ depends_on('java@8:', type='run')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('bin/VarDict', prefix.bin)
+
+ mkdirp(prefix.lib)
+ files = [x for x in glob.glob("lib/*jar")]
+ for f in files:
+ install(f, prefix.lib)
diff --git a/var/spack/repos/builtin/packages/varscan/package.py b/var/spack/repos/builtin/packages/varscan/package.py
new file mode 100644
index 0000000000..0ce5c6b634
--- /dev/null
+++ b/var/spack/repos/builtin/packages/varscan/package.py
@@ -0,0 +1,59 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os.path
+
+
+class Varscan(Package):
+ """Variant calling and somatic mutation/CNV detection for next-generation
+ sequencing data"""
+
+ homepage = "http://dkoboldt.github.io/varscan/"
+ url = "https://github.com/dkoboldt/varscan/releases/download/2.4.2/VarScan.v2.4.2.jar"
+
+ version('2.4.2', '4b810741505a8145a7f8f9f6791bbacf', expand=False)
+
+ depends_on('java', type=('build', 'run'))
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ mkdirp(prefix.jar)
+ jar_file = 'VarScan.v{v}.jar'.format(v=self.version.dotted)
+ install(jar_file, prefix.jar)
+
+ script_sh = join_path(os.path.dirname(__file__), "varscan.sh")
+ script = prefix.bin.varscan
+ install(script_sh, script)
+ set_executable(script)
+
+ java = join_path(self.spec['java'].prefix, 'bin', 'java')
+ kwargs = {'ignore_absent': False, 'backup': False, 'string': False}
+ filter_file('^java', java, script, **kwargs)
+ filter_file('varscan.jar', join_path(prefix.jar, jar_file),
+ script, **kwargs)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.set('VARSCAN_HOME', self.prefix)
+ run_env.set('CLASSPATH', self.prefix.jar)
diff --git a/var/spack/repos/builtin/packages/varscan/varscan.sh b/var/spack/repos/builtin/packages/varscan/varscan.sh
new file mode 100644
index 0000000000..71824a46c6
--- /dev/null
+++ b/var/spack/repos/builtin/packages/varscan/varscan.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# convenience wrapper for the astral jar file
+java $JAVA_ARGS $JAVA_OPTS -jar varscan.jar "$@"
diff --git a/var/spack/repos/builtin/packages/vc/package.py b/var/spack/repos/builtin/packages/vc/package.py
new file mode 100644
index 0000000000..048955205b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vc/package.py
@@ -0,0 +1,41 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vc(CMakePackage):
+ """SIMD Vector Classes for C++"""
+
+ homepage = "https://github.com/VcDevel/Vc"
+ url = "https://github.com/VcDevel/Vc/archive/1.3.0.tar.gz"
+
+ version('1.3.0', '77efc1c16691c7925d4b58f9b30cf03b')
+ version('1.2.0', 'a5236df286b845d2fee5ef1e4d27549f')
+ version('1.1.0', 'e354c1e3ea1d674b6f2af9c6fd230d81')
+
+ variant('build_type', default='RelWithDebInfo',
+ description='The build type to build',
+ values=('Debug', 'Release', 'RelWithDebug',
+ 'RelWithDebInfo', 'MinSizeRel'))
diff --git a/var/spack/repos/builtin/packages/vcftools/package.py b/var/spack/repos/builtin/packages/vcftools/package.py
new file mode 100644
index 0000000000..f62702a0eb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vcftools/package.py
@@ -0,0 +1,75 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vcftools(AutotoolsPackage):
+ """VCFtools is a program package designed for working with VCF files,
+ such as those generated by the 1000 Genomes Project. The aim of
+ VCFtools is to provide easily accessible methods for working
+ with complex genetic variation data in the form of VCF files.
+ """
+
+ homepage = "https://vcftools.github.io/"
+ url = "https://github.com/vcftools/vcftools/releases/download/v0.1.14/vcftools-0.1.14.tar.gz"
+
+ # this is "a pre-release"
+ # version('0.1.15', '61045197848dea20a0158d2faf02e5be')
+ version('0.1.14', 'a110662535651caa6cc8c876216a9f77')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('zlib')
+
+ # this needs to be in sync with what setup_environment adds to
+ # PERL5LIB below
+ def configure_args(self):
+ return ['--with-pmdir={0}'.format(self.prefix.lib)]
+
+ @run_before('install')
+ def filter_sbang(self):
+ """Run before install so that the standard Spack sbang install hook
+ can fix up the path to the perl binary.
+ """
+
+ with working_dir('src/perl'):
+ match = '^#!/usr/bin/env perl'
+ perl = join_path(self.spec['perl'].prefix.bin, 'perl')
+ substitute = "#!{perl}".format(perl=perl)
+ # tab-to-vcf added in 0.1.15
+ files = ['fill-aa', 'fill-an-ac', 'fill-fs',
+ 'fill-ref-md5', 'tab-to-vcf', 'vcf-annotate',
+ 'vcf-compare', 'vcf-concat', 'vcf-consensus',
+ 'vcf-contrast', 'vcf-convert',
+ 'vcf-fix-newlines', 'vcf-fix-ploidy',
+ 'vcf-indel-stats', 'vcf-isec', 'vcf-merge',
+ 'vcf-phased-join', 'vcf-query',
+ 'vcf-shuffle-cols', 'vcf-sort', 'vcf-stats',
+ 'vcf-subset', 'vcf-to-tab', 'vcf-tstv',
+ 'vcf-validator', ]
+ kwargs = {'ignore_absent': True, 'backup': False, 'string': False}
+ filter_file(match, substitute, *files, **kwargs)
+
+ def setup_environment(self, spack_env, run_env):
+ run_env.prepend_path('PERL5LIB', self.prefix.lib)
diff --git a/var/spack/repos/builtin/packages/vcsh/package.py b/var/spack/repos/builtin/packages/vcsh/package.py
new file mode 100644
index 0000000000..76cdaf3b7b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vcsh/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Vcsh(Package):
+ """config manager based on git"""
+ homepage = "https://github.com/RichiH/vcsh"
+ url = "https://github.com/RichiH/vcsh/archive/v1.20151229.tar.gz"
+
+ version('1.20151229-1', '85c18fb15e5837d417b22980683e69ed')
+ version('1.20151229', '61edf032807bba98c41c62bb2bd3d497')
+ version('1.20150502', 'a6c75b5754e04bd74ae701967bb38e19')
+ version('1.20141026', 'e8f42a9dbb7460f641545bea5ca1cbc4')
+ version('1.20141025', '93c7fad67ab4300d76d753a32c300831')
+
+ depends_on('git', type='run')
+
+ # vcsh provides a makefile, if needed the install method should be adapted
+ def install(self, spec, prefix):
+ install('vcsh', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/vdt/package.py b/var/spack/repos/builtin/packages/vdt/package.py
new file mode 100644
index 0000000000..1ff2d014e3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vdt/package.py
@@ -0,0 +1,38 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vdt(CMakePackage):
+ """Vectorised math. A collection of fast and inline implementations of
+ mathematical functions."""
+
+ homepage = "https://github.com/dpiparo/vdt"
+ url = "https://github.com/dpiparo/vdt/archive/v0.3.9.tar.gz"
+
+ version('0.3.9', '80a2d73a82f7ef8257a8206ca22dd145')
+ version('0.3.8', '25b07c72510aaa95fffc11e33579061c')
+ version('0.3.7', 'd2621d4c489894fd1fe8e056d9a0a67c')
+ version('0.3.6', '6eaff3bbbd5175332ccbd66cd71a741d')
diff --git a/var/spack/repos/builtin/packages/vecgeom/package.py b/var/spack/repos/builtin/packages/vecgeom/package.py
new file mode 100644
index 0000000000..05c1519220
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vecgeom/package.py
@@ -0,0 +1,54 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import platform
+
+
+class Vecgeom(CMakePackage):
+ """The vectorized geometry library for particle-detector simulation
+ (toolkits)."""
+
+ homepage = "https://gitlab.cern.ch/VecGeom/VecGeom"
+
+ version('0.3.rc', git='https://gitlab.cern.ch/VecGeom/VecGeom.git',
+ tag='v0.3.rc')
+
+ depends_on('cmake@3.5:', type='build')
+
+ def cmake_args(self):
+ options = [
+ '-DBACKEND=Scalar',
+ '-DGEANT4=OFF',
+ '-DUSOLIDS=ON',
+ '-DUSOLIDS_VECGEOM=ON'
+ ]
+
+ arch = platform.machine()
+ if arch == 'x86_64':
+ options.append('-DVECGEOM_VECTOR=sse4.2')
+ else:
+ options.append('-DVECGEOM_VECTOR=' + arch)
+ return options
diff --git a/var/spack/repos/builtin/packages/veclibfort/package.py b/var/spack/repos/builtin/packages/veclibfort/package.py
index b906d4f9c9..e57384fd2c 100644
--- a/var/spack/repos/builtin/packages/veclibfort/package.py
+++ b/var/spack/repos/builtin/packages/veclibfort/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -45,26 +45,30 @@ class Veclibfort(Package):
provides('lapack')
@property
- def blas_libs(self):
+ def libs(self):
shared = True if '+shared' in self.spec else False
return find_libraries(
- ['libvecLibFort'], root=self.prefix, shared=shared, recurse=True
+ 'libvecLibFort', root=self.prefix, shared=shared, recurse=True
)
- @property
- def lapack_libs(self):
- return self.blas_libs
-
def install(self, spec, prefix):
if sys.platform != 'darwin':
raise InstallError('vecLibFort can be installed on macOS only')
- make('all')
- make('PREFIX=%s' % prefix, 'install')
+ filter_file(r'^PREFIX=.*', '', 'Makefile')
+
+ make_args = []
+
+ if spec.satisfies('%gcc@6:'):
+ make_args += ['CFLAGS=-flax-vector-conversions']
+
+ make_args += ['PREFIX=%s' % prefix, 'install']
+
+ make(*make_args)
# test
fc = which('fc')
flags = ['-o', 'tester', '-O', 'tester.f90']
- flags.extend(self.lapack_libs.ld_flags.split())
+ flags.extend(spec['veclibfort'].libs.ld_flags.split())
fc(*flags)
Executable('./tester')()
diff --git a/var/spack/repos/builtin/packages/vegas2/package.py b/var/spack/repos/builtin/packages/vegas2/package.py
new file mode 100644
index 0000000000..ad452b3384
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vegas2/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vegas2(Package):
+ """"VEGAS2 is an extension that uses 1,000 Genomes data to model SNP
+ correlations across the autosomes and chromosome X"""
+
+ homepage = "https://vegas2.qimrberghofer.edu.au/"
+ url = "https://vegas2.qimrberghofer.edu.au/vegas2v2"
+
+ version('2', '815d80b86e9e294f99332bb5181e897a', expand=False)
+
+ depends_on('perl', type='run')
+ depends_on('r', type='run')
+ depends_on('plink')
+ depends_on('r-mvtnorm', type='run')
+ depends_on('r-corpcor', type='run')
+
+ def url_for_version(self, version):
+ url = 'https://vegas2.qimrberghofer.edu.au/vegas2v{0}'
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('vegas2v{0}'.format(self.version), prefix.bin)
diff --git a/var/spack/repos/builtin/packages/velvet/package.py b/var/spack/repos/builtin/packages/velvet/package.py
new file mode 100644
index 0000000000..45e10f4ce2
--- /dev/null
+++ b/var/spack/repos/builtin/packages/velvet/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Velvet(MakefilePackage):
+ """Velvet is a de novo genomic assembler specially designed for short read
+ sequencing technologies."""
+
+ homepage = "http://www.ebi.ac.uk/~zerbino/velvet/"
+ url = "http://www.ebi.ac.uk/~zerbino/velvet/velvet_1.2.10.tgz"
+
+ version('1.2.10', '6e28c4b9bedc5f7ab2b947e7266a02f6')
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('velvetg', prefix.bin)
+ install('velveth', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/videoproto/package.py b/var/spack/repos/builtin/packages/videoproto/package.py
index 93b0e61ca4..21a40f98ff 100644
--- a/var/spack/repos/builtin/packages/videoproto/package.py
+++ b/var/spack/repos/builtin/packages/videoproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Videoproto(Package):
+class Videoproto(AutotoolsPackage):
"""X Video Extension.
This extension provides a protocol for a video output mechanism,
@@ -38,8 +38,3 @@ class Videoproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/viennarna/package.py b/var/spack/repos/builtin/packages/viennarna/package.py
new file mode 100644
index 0000000000..c3fad661db
--- /dev/null
+++ b/var/spack/repos/builtin/packages/viennarna/package.py
@@ -0,0 +1,61 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Viennarna(AutotoolsPackage):
+ """The ViennaRNA Package consists of a C code library and several
+ stand-alone programs for the prediction and comparison of RNA secondary
+ structures.
+ """
+
+ homepage = "https://www.tbi.univie.ac.at/RNA/"
+ url = "https://www.tbi.univie.ac.at/RNA/download/sourcecode/2_3_x/ViennaRNA-2.3.5.tar.gz"
+
+ version('2.3.5', '4542120adae9b7abb605e2304c2a1326')
+
+ variant('sse', default=True, description='Enable SSE in order to substantially speed up execution')
+ variant('perl', default=True, description='Build ViennaRNA with Perl interface')
+ variant('python', default=True, description='Build ViennaRNA with Python interface')
+
+ depends_on('perl', type=('build', 'run'))
+ depends_on('python', type=('build', 'run'))
+ depends_on('libsvm')
+ depends_on('gsl')
+
+ def url_for_version(self, version):
+ url = 'https://www.tbi.univie.ac.at/RNA/download/sourcecode/{0}_x/ViennaRNA-{1}.tar.gz'
+ return url.format(version.up_to(2).underscored, version)
+
+ def configure_args(self):
+
+ args = self.enable_or_disable('sse')
+ args += self.with_or_without('python')
+ args += self.with_or_without('perl')
+
+ if 'python@3:' in self.spec:
+ args.append('--with-python3')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/viewres/package.py b/var/spack/repos/builtin/packages/viewres/package.py
index 3a32555075..0929dace52 100644
--- a/var/spack/repos/builtin/packages/viewres/package.py
+++ b/var/spack/repos/builtin/packages/viewres/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Viewres(Package):
+class Viewres(AutotoolsPackage):
"""viewres displays a tree showing the widget class hierarchy of the
Athena Widget Set (libXaw)."""
@@ -40,9 +40,3 @@ class Viewres(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/vim/package.py b/var/spack/repos/builtin/packages/vim/package.py
index e2542c3f56..d216cb0aed 100644
--- a/var/spack/repos/builtin/packages/vim/package.py
+++ b/var/spack/repos/builtin/packages/vim/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Vim(Package):
+class Vim(AutotoolsPackage):
"""Vim is a highly configurable text editor built to enable efficient text
editing. It is an improved version of the vi editor distributed with most
UNIX systems. Vim is often called a "programmer's editor," and so useful
@@ -37,6 +37,8 @@ class Vim(Package):
homepage = "http://www.vim.org"
url = "https://github.com/vim/vim/archive/v8.0.0134.tar.gz"
+ version('8.0.0503', '82b77bd5cb38b70514bed47cfe033b8c')
+ version('8.0.0454', '4030bf677bdfbd14efb588e4d9a24128')
version('8.0.0134', 'c74668d25c2acc85d655430dd60886cd')
version('7.4.2367', 'a0a7bc394f7ab1d95571fe6ab05da3ea')
@@ -50,15 +52,24 @@ class Vim(Package):
variant('ruby', default=False, description="build with Ruby")
depends_on('ruby', when='+ruby')
+ variant('lua', default=False, description="build with Lua")
+ depends_on('lua', when='+lua')
+
+ variant('perl', default=False, description="build with Perl")
+ depends_on('perl', when='+perl')
+
variant('cscope', default=False, description="build with cscope support")
depends_on('cscope', when='+cscope', type='run')
+ # TODO: Once better support for multi-valued variants is added, add
+ # support for auto/no/gtk2/gnome2/gtk3/motif/athena/neXtaw/photon/carbon
variant('gui', default=False, description="build with gui (gvim)")
- # virtual dependency?
+ variant('x', default=False, description="use the X Window System")
depends_on('ncurses', when="@7.4:")
- def install(self, spec, prefix):
+ def configure_args(self):
+ spec = self.spec
feature_set = None
for fs in self.feature_sets:
if "+" + fs in spec:
@@ -77,26 +88,50 @@ class Vim(Package):
if feature_set is None:
feature_set = 'normal'
- configure_args = []
+ configure_args = ["--enable-fail-if-missing"]
+
+ configure_args.append("--with-tlib=ncursesw")
+
configure_args.append("--with-features=" + feature_set)
if '+python' in spec:
configure_args.append("--enable-pythoninterp=yes")
else:
- configure_args.append("--enable-pythoninterp=dynamic")
+ configure_args.append("--enable-pythoninterp=no")
if '+ruby' in spec:
configure_args.append("--enable-rubyinterp=yes")
else:
- configure_args.append("--enable-rubyinterp=dynamic")
+ configure_args.append("--enable-rubyinterp=no")
+
+ if '+lua' in spec:
+ configure_args.append("--enable-luainterp=yes")
+ configure_args.append("--with-lua-prefix=%s" % spec['lua'].prefix)
+ else:
+ configure_args.append("--enable-luainterp=no")
+
+ if '+perl' in spec:
+ configure_args.append("--enable-perlinterp=yes")
+ else:
+ configure_args.append("--enable-perlinterp=no")
if '+gui' in spec:
configure_args.append("--enable-gui=auto")
+ else:
+ configure_args.append("--enable-gui=no")
+
+ if '+x' in spec:
+ configure_args.append("--with-x")
+ else:
+ configure_args.append("--without-x")
if '+cscope' in spec:
configure_args.append("--enable-cscope")
- configure("--prefix=%s" % prefix, *configure_args)
+ return configure_args
- make()
- make("install")
+ # Run the install phase with -j 1. There seems to be a problem with
+ # parallel builds that results in the creation of the links (e.g. view)
+ # to the vim binary silently failing.
+ def install(self, spec, prefix):
+ make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/virtualgl/package.py b/var/spack/repos/builtin/packages/virtualgl/package.py
new file mode 100644
index 0000000000..c80eea5345
--- /dev/null
+++ b/var/spack/repos/builtin/packages/virtualgl/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+#
+from spack import *
+
+
+class Virtualgl(CMakePackage):
+ """VirtualGL redirects 3D commands from a Unix/Linux OpenGL application
+ onto a server-side GPU and converts the rendered 3D images into a video
+ stream with which remote clients can interact to view and control the
+ 3D application in real time."""
+
+ homepage = "http://www.virtualgl.org/Main/HomePage"
+ url = "http://downloads.sourceforge.net/project/virtualgl/2.5.2/VirtualGL-2.5.2.tar.gz"
+
+ version('2.5.2', '1a9f404f4a35afa9f56381cb33ed210c')
+
+ depends_on("libjpeg-turbo")
+ # virtualgl require OpenGL but also wants to link libglu
+ # on systems without development packages, provide with spack and depends
+ # on mesa-glu, but we do not want Mesa OpenGL sw emulation, so added
+ # variant on mesa-glu to disable dependencies on sw emulated OpenGL
+ depends_on("mesa-glu~mesa")
diff --git a/var/spack/repos/builtin/packages/visit/package.py b/var/spack/repos/builtin/packages/visit/package.py
index 48a3762a2a..56dec99eec 100644
--- a/var/spack/repos/builtin/packages/visit/package.py
+++ b/var/spack/repos/builtin/packages/visit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,39 +25,37 @@
from spack import *
-class Visit(Package):
+class Visit(CMakePackage):
"""VisIt is an Open Source, interactive, scalable, visualization,
animation and analysis tool."""
homepage = "https://wci.llnl.gov/simulation/computer-codes/visit/"
url = "http://portal.nersc.gov/project/visit/releases/2.10.1/visit2.10.1.tar.gz"
+ version('2.12.2', '355779b1dbf440cdd548526eecd77b60')
version('2.10.3', 'a1082a6f6dab3e2dcb58993603456c2b')
version('2.10.2', '253de0837a9d69fb689befc98ea4d068')
version('2.10.1', '3cbca162fdb0249f17c4456605c4211e')
- depends_on('cmake', type='build')
+ depends_on('cmake@3.0:', type='build')
depends_on('vtk@6.1.0~opengl2')
depends_on('qt@4.8.6')
depends_on('python')
depends_on('silo+shared')
depends_on('hdf5~mpi')
- def install(self, spec, prefix):
- qt_bin = spec['qt'].prefix.bin
+ root_cmakelists_dir = 'src'
- with working_dir('spack-build', create=True):
- cmake_args = std_cmake_args[:]
- cmake_args.extend([
- '-DVTK_MAJOR_VERSION=6',
- '-DVTK_MINOR_VERSION=1',
- '-DVISIT_USE_GLEW=OFF',
- '-DVISIT_LOC_QMAKE_EXE:FILEPATH={0}/qmake-qt4'.format(qt_bin),
- '-DPYTHON_DIR:PATH={0}'.format(spec['python'].prefix),
- '-DVISIT_SILO_DIR:PATH={0}'.format(spec['silo'].prefix),
- '-DVISIT_HDF5_DIR:PATH={0}'.format(spec['hdf5'].prefix),
- '-DVISIT_VTK_DIR:PATH={0}'.format(spec['vtk'].prefix),
- ])
+ def cmake_args(self):
+ spec = self.spec
+ qt_bin = spec['qt'].prefix.bin
- cmake(join_path('..', 'src'), *cmake_args)
- make()
- make('install')
+ return [
+ '-DVTK_MAJOR_VERSION={0}'.format(spec['vtk'].version[0]),
+ '-DVTK_MINOR_VERSION={0}'.format(spec['vtk'].version[1]),
+ '-DVISIT_USE_GLEW=OFF',
+ '-DVISIT_LOC_QMAKE_EXE:FILEPATH={0}/qmake-qt4'.format(qt_bin),
+ '-DPYTHON_DIR:PATH={0}'.format(spec['python'].home),
+ '-DVISIT_SILO_DIR:PATH={0}'.format(spec['silo'].prefix),
+ '-DVISIT_HDF5_DIR:PATH={0}'.format(spec['hdf5'].prefix),
+ '-DVISIT_VTK_DIR:PATH={0}'.format(spec['vtk'].prefix),
+ ]
diff --git a/var/spack/repos/builtin/packages/vizglow/package.py b/var/spack/repos/builtin/packages/vizglow/package.py
index 9e4506b05a..b35af35164 100644
--- a/var/spack/repos/builtin/packages/vizglow/package.py
+++ b/var/spack/repos/builtin/packages/vizglow/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -39,20 +39,73 @@ class Vizglow(Package):
homepage = "http://esgeetech.com/products/vizglow-plasma-modeling/"
- version('2.2a-15', 'be2b5044f30f2b2c3bbe87a0037bf228', expand=False,
+ version('2.2alpha20', '2bef890c66f3a44aaf96f7c96788c89e', expand=False,
+ url="file://{0}/VizGlow_v2.2alpha20-Linux-x86_64-R09December2016-Install".format(os.getcwd()))
+ version('2.2alpha17', '1de268564363e0ee86f9ffff1c3b82e1', expand=False,
+ url="file://{0}/VizGlow_v2.2alpha17-R21November2016-Linux-x86_64-Install".format(os.getcwd()))
+ version('2.2alpha15', 'be2b5044f30f2b2c3bbe87a0037bf228', expand=False,
url="file://{0}/VizGlow_v2.2alpha15-Linux-x86_64-R31October2016-Install".format(os.getcwd()))
+ # depends_on('mesa') # TODO: mesa build doesn't work for me
+ depends_on('zlib')
+ depends_on('freetype')
+ depends_on('fontconfig')
+ depends_on('libxrender')
+ depends_on('xterm')
+ # Can't get mozjs to build, packagekit -> polkit -> mozjs
+ # depends_on('packagekit+gtk')
+ depends_on('libcanberra+gtk')
+
# Licensing
license_required = True
license_comment = '#'
license_files = ['esgeelm.lic']
license_vars = ['ESGEE_LICENSE_FILE']
+ def configure(self, prefix):
+ # Dictionary of responses
+ responses = {
+ 'CreateDesktopShortcut': 'No',
+ 'CreateQuickLaunchShortcut': 'No',
+ 'InstallDir': prefix
+ }
+
+ # Write response file
+ with open('spack-responses.txt', 'w') as response_file:
+ for key in responses:
+ response_file.write('{0}: {1}\n'.format(key, responses[key]))
+
def install(self, spec, prefix):
+ self.configure(prefix)
+
installer = glob.glob('VizGlow*Install')[0]
chmod = which('chmod')
chmod('+x', installer)
installer = Executable(installer)
- installer('--mode', 'silent', '--prefix', prefix)
+ installer('--mode', 'silent', '--response-file', 'spack-responses.txt')
+
+ self.filter_ld_library_path(spec, prefix)
+
+ def filter_ld_library_path(self, spec, prefix):
+ """Run after install to inject dependencies into LD_LIBRARY_PATH.
+
+ If we don't do this, the run files will clear the LD_LIBRARY_PATH.
+ Since the installer is a binary file, we have no means of specifying
+ an RPATH to use."""
+
+ files = glob.glob(prefix + '/binaries/*.run')
+
+ ld_library_path = ':'.join([
+ spec['zlib'].prefix.lib,
+ spec['freetype'].prefix.lib,
+ spec['fontconfig'].prefix.lib,
+ spec['libxrender'].prefix.lib,
+ spec['libcanberra'].prefix.lib
+ ])
+
+ for runfile in files:
+ filter_file('(export LD_LIBRARY_PATH=)$',
+ r'\1{0}'.format(ld_library_path),
+ runfile)
diff --git a/var/spack/repos/builtin/packages/vmatch/package.py b/var/spack/repos/builtin/packages/vmatch/package.py
new file mode 100644
index 0000000000..e58f9fbb22
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vmatch/package.py
@@ -0,0 +1,42 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vmatch(Package):
+ """Vmatch is a versatile software tool for efficiently solving large scale
+ sequence matching tasks"""
+
+ homepage = "http://www.vmatch.de/"
+ url = "http://www.vmatch.de/distributions/vmatch-2.3.0-Linux_x86_64-64bit.tar.gz"
+
+ version('2.3.0', '592a4f941239494d892f3c6ff21a1423')
+
+ def url_for_version(self, version):
+ url = 'http://www.vmatch.de/distributions/vmatch-{0}-Linux_x86_64-64bit.tar.gz'
+ return url.format(version)
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/voropp/package.py b/var/spack/repos/builtin/packages/voropp/package.py
new file mode 100644
index 0000000000..e88c20d864
--- /dev/null
+++ b/var/spack/repos/builtin/packages/voropp/package.py
@@ -0,0 +1,44 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Voropp(MakefilePackage):
+ """Voro++ is a open source software library for the computation of the
+ Voronoi diagram, a widely-used tessellation that has applications in many
+ scientific fields."""
+
+ homepage = "http://math.lbl.gov/voro++/about.html"
+ url = "http://math.lbl.gov/voro++/download/dir/voro++-0.4.6.tar.gz"
+
+ version('0.4.6', '2338b824c3b7b25590e18e8df5d68af9')
+
+ def edit(self, spec, prefix):
+ filter_file(r'CC=g\+\+',
+ 'CC={0}'.format(self.compiler.cxx),
+ 'config.mk')
+ filter_file(r'PREFIX=/usr/local',
+ 'PREFIX={0}'.format(self.prefix),
+ 'config.mk')
diff --git a/var/spack/repos/builtin/packages/votca-csg/package.py b/var/spack/repos/builtin/packages/votca-csg/package.py
new file mode 100644
index 0000000000..5c827ad36d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/votca-csg/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2017, The VOTCA Development Team (http://www.votca.org)
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class VotcaCsg(CMakePackage):
+ """Versatile Object-oriented Toolkit for Coarse-graining
+ Applications (VOTCA) is a package intended to reduce the amount of
+ routine work when doing systematic coarse-graining of various
+ systems. The core is written in C++.
+
+ This package contains the VOTCA coarse-graining engine.
+ """
+ homepage = "http://www.votca.org"
+ url = "https://github.com/votca/csg/tarball/v1.4"
+
+ version('develop', git='https://github.com/votca/csg', branch='master')
+ version('1.4', 'd009e761e5e3afd51eed89c420610a67')
+ version('1.4.1', 'e4195d69db2036e9d76f22115ae31f81')
+
+ depends_on("cmake@2.8:", type='build')
+ depends_on("votca-tools@1.4:1.4.999", when='@1.4:1.4.999')
+ depends_on("votca-tools@develop", when='@develop')
+ depends_on("gromacs~mpi@5.1:")
diff --git a/var/spack/repos/builtin/packages/votca-ctp/package.py b/var/spack/repos/builtin/packages/votca-ctp/package.py
new file mode 100644
index 0000000000..f02c7eb564
--- /dev/null
+++ b/var/spack/repos/builtin/packages/votca-ctp/package.py
@@ -0,0 +1,45 @@
+##############################################################################
+# Copyright (c) 2017, The VOTCA Development Team (http://www.votca.org)
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class VotcaCtp(CMakePackage):
+ """Versatile Object-oriented Toolkit for Coarse-graining
+ Applications (VOTCA) is a package intended to reduce the amount of
+ routine work when doing systematic coarse-graining of various
+ systems. The core is written in C++.
+
+ This package contains the VOTCA charge transport engine.
+ """
+ homepage = "http://www.votca.org"
+ # No release yet
+ # url = "https://github.com/votca/ctp/tarball/v1.4"
+
+ version('develop', git='https://github.com/votca/ctp', branch='master')
+
+ depends_on("cmake@2.8:", type='build')
+ depends_on("votca-tools@develop", when='@develop')
+ depends_on("votca-csg@develop", when='@develop')
+ depends_on("votca-moo@develop", when='@develop')
diff --git a/var/spack/repos/builtin/packages/votca-moo/package.py b/var/spack/repos/builtin/packages/votca-moo/package.py
new file mode 100644
index 0000000000..308d28aab1
--- /dev/null
+++ b/var/spack/repos/builtin/packages/votca-moo/package.py
@@ -0,0 +1,43 @@
+#############################################################################
+# Copyright (c) 2017, The VOTCA Development Team (http://www.votca.org)
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class VotcaMoo(CMakePackage):
+ """Versatile Object-oriented Toolkit for Coarse-graining
+ Applications (VOTCA) is a package intended to reduce the amount of
+ routine work when doing systematic coarse-graining of various
+ systems. The core is written in C++.
+
+ This package contains the VOTCA molecular orbital module.
+ """
+ homepage = "http://www.votca.org"
+ # No release yet
+ # url = "https://github.com/votca/moo/tarball/v1.4"
+
+ version('develop', git='https://github.com/votca/moo', branch='master')
+
+ depends_on("cmake@2.8:", type='build')
+ depends_on("votca-tools@develop", when='@develop')
diff --git a/var/spack/repos/builtin/packages/votca-tools/package.py b/var/spack/repos/builtin/packages/votca-tools/package.py
new file mode 100644
index 0000000000..9eb7fd147a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/votca-tools/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2017, The VOTCA Development Team (http://www.votca.org)
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class VotcaTools(CMakePackage):
+ """Versatile Object-oriented Toolkit for Coarse-graining
+ Applications (VOTCA) is a package intended to reduce the amount of
+ routine work when doing systematic coarse-graining of various
+ systems. The core is written in C++.
+
+ This package contains the basic tools library of VOTCA.
+ """
+ homepage = "http://www.votca.org"
+ url = "https://github.com/votca/tools/tarball/v1.4"
+
+ version('develop', git='https://github.com/votca/tools', branch='master')
+ version('1.4', 'cd47868e9f28e2c7b9d01f95aa0185ca')
+ version('1.4.1', '3176b72f8a41ec053cc740a5398e7dc4')
+
+ depends_on("cmake@2.8:", type='build')
+ depends_on("expat")
+ depends_on("fftw")
+ depends_on("gsl")
+ depends_on("boost")
+ depends_on("sqlite")
diff --git a/var/spack/repos/builtin/packages/votca-xtp/package.py b/var/spack/repos/builtin/packages/votca-xtp/package.py
new file mode 100644
index 0000000000..e2b8ee059e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/votca-xtp/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2017, The VOTCA Development Team (http://www.votca.org)
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class VotcaXtp(CMakePackage):
+ """Versatile Object-oriented Toolkit for Coarse-graining
+ Applications (VOTCA) is a package intended to reduce the amount of
+ routine work when doing systematic coarse-graining of various
+ systems. The core is written in C++.
+
+ This package contains the VOTCA exciton transport engine.
+ """
+ homepage = "http://www.votca.org"
+ url = "https://github.com/votca/xtp/tarball/v1.4"
+
+ version('develop', git='https://github.com/votca/xtp', branch='master')
+ version('1.4.1', '31a2dbd8bd48bf337bc88b20ab312050')
+
+ depends_on("cmake@2.8:", type='build')
+ depends_on("votca-tools@develop", when='@develop')
+ depends_on("votca-tools@1.4:1.4.999", when='@1.4:1.4.999')
+ depends_on("votca-csg@develop", when='@develop')
+ depends_on("votca-csg@1.4:1.4.999", when='@1.4:1.4.999')
+ depends_on("votca-ctp@develop", when='@develop')
+ depends_on("votca-moo@develop", when='@develop')
diff --git a/var/spack/repos/builtin/packages/vpfft/package.py b/var/spack/repos/builtin/packages/vpfft/package.py
new file mode 100644
index 0000000000..1de6bdcfe4
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vpfft/package.py
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vpfft(MakefilePackage):
+ """Proxy Application. VPFFT is an implementation of a mesoscale
+ micromechanical materials model. By solving the viscoplasticity
+ model, VPFFT simulates the evolution of a material under deformation.
+ The solution time to the viscoplasticity model, described by a set
+ of partial differential equations, is significantly reduced by the
+ application of Fast Fourier Transform in the VPFFT algorithm.
+ """
+
+ homepage = "http://www.exmatex.org/vpfft.html"
+ url = "https://github.com/exmatex/VPFFT/archive/master.tar.gz"
+ tag = ['proxy-app']
+
+ version('develop', git='https://github.com/exmatex/VPFFT.git')
+
+ depends_on('eigen')
+ depends_on('fftw')
+ depends_on('mpi')
+
+ @property
+ def build_targets(self):
+ targets = [
+ "--file=Makefile.make",
+ "EIGEN_PATH={0}".format(
+ join_path(
+ self.spec['eigen'].prefix.include,
+ 'eigen{0}'.format(
+ self.spec['eigen'].version.up_to(1)))),
+ "FFTW_PATH={0}".format(self.spec['fftw'].prefix),
+ "CC={0}".format(self.spec['mpi'].mpicxx)
+ ]
+ return targets
+
+ def install(self, spec, prefix):
+ mkdirp(prefix.bin)
+ install('VPFFT++', prefix.bin)
+ install('README.md', prefix)
+ install('README.make', prefix)
+ install('README-license.txt', prefix)
+ install_tree('docs', prefix.docs)
diff --git a/var/spack/repos/builtin/packages/vpic/package.py b/var/spack/repos/builtin/packages/vpic/package.py
new file mode 100644
index 0000000000..b5be3c6b82
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vpic/package.py
@@ -0,0 +1,49 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Vpic(CMakePackage):
+ """VPIC is a general purpose particle-in-cell simulation code for modeling
+ kinetic plasmas in one, two, or three spatial dimensions. It employs a
+ second-order, explicit, leapfrog algorithm to update charged particle
+ positions and velocities in order to solve the relativistic kinetic
+ equation for each species in the plasma, along with a full Maxwell
+ description for the electric and magnetic fields evolved via a second-
+ order finite-difference-time-domain (FDTD) solve.
+ """
+ homepage = "https://github.com/lanl/vpic"
+ url = "https://github.com/lanl/vpic/tarball/v1.0"
+
+ version('develop', git='https://github.com/lanl/vpic', branch='master', submodules=True)
+
+ depends_on("cmake@3.1:", type='build')
+ depends_on('mpi')
+
+ def cmake_args(self):
+ options = ['-DENABLE_INTEGRATED_TESTS=ON', '-DENABLE_UNIT_TESTS=ON']
+
+ return options
diff --git a/var/spack/repos/builtin/packages/vsearch/package.py b/var/spack/repos/builtin/packages/vsearch/package.py
new file mode 100644
index 0000000000..8a69123d17
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vsearch/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Vsearch(AutotoolsPackage):
+ """VSEARCH is a versatile open-source tool for metagenomics."""
+
+ homepage = "https://github.com/torognes/vsearch"
+ url = "https://github.com/torognes/vsearch/archive/v2.4.3.tar.gz"
+
+ version('2.4.3', '8f57210fe447a781078fde06e6402650')
+
+ depends_on('m4', type='build')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
diff --git a/var/spack/repos/builtin/packages/vtk/package.py b/var/spack/repos/builtin/packages/vtk/package.py
index c2d5ff399f..0ab9a1a131 100644
--- a/var/spack/repos/builtin/packages/vtk/package.py
+++ b/var/spack/repos/builtin/packages/vtk/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,14 +26,16 @@
from spack import *
-class Vtk(Package):
+class Vtk(CMakePackage):
"""The Visualization Toolkit (VTK) is an open-source, freely
available software system for 3D computer graphics, image
processing and visualization. """
homepage = "http://www.vtk.org"
- base_url = "http://www.vtk.org/files/release"
+ url = "http://www.vtk.org/files/release/7.1/VTK-7.1.0.tar.gz"
+ list_url = "http://www.vtk.org/download/"
+ version('7.1.0', 'a7e814c1db503d896af72458c2d0228f')
version('7.0.0', '5fe35312db5fb2341139b8e4955c367d')
version('6.3.0', '0231ca4840408e9dd60af48b314c5b6d')
version('6.1.0', '25e4dfb3bad778722dcaec80cd5dab7d')
@@ -42,58 +44,62 @@ class Vtk(Package):
variant('opengl2', default=True, description='Build with OpenGL2 instead of OpenGL as rendering backend')
variant('python', default=False, description='Build the python modules')
- patch('gcc.patch')
+ patch('gcc.patch', when='@6.1.0')
- depends_on('cmake', type='build')
depends_on('qt')
+ depends_on('hdf5')
+ depends_on('netcdf')
+ depends_on('netcdf-cxx')
extends('python', when='+python')
- depends_on('python', when='+python')
- def url_for_version(self, ver):
- return '{0}/{1}/VTK-{2}.tar.gz'.format(Vtk.base_url, ver.up_to(2), ver)
-
- def install(self, spec, prefix):
- def feature_to_bool(feature, on='ON', off='OFF'):
- return on if '+{0}'.format(feature) in spec else off
-
- with working_dir('spack-build', create=True):
- opengl_ver = 'OpenGL{0}'.format('2' if '+opengl2' in spec else '')
- qt_ver = spec['qt'].version.up_to(1)
- qt_bin = spec['qt'].prefix.bin
-
- cmake_args = std_cmake_args[:]
+ def url_for_version(self, version):
+ url = "http://www.vtk.org/files/release/{0}/VTK-{1}.tar.gz"
+ return url.format(version.up_to(2), version)
+
+ def cmake_args(self):
+ spec = self.spec
+
+ opengl_ver = 'OpenGL{0}'.format('2' if '+opengl2' in spec else '')
+ qt_ver = spec['qt'].version.up_to(1)
+ qt_bin = spec['qt'].prefix.bin
+
+ cmake_args = std_cmake_args[:]
+ cmake_args.extend([
+ '-DBUILD_SHARED_LIBS=ON',
+ '-DVTK_RENDERING_BACKEND:STRING={0}'.format(opengl_ver),
+ '-DVTK_USE_SYSTEM_HDF5=ON',
+ '-DVTK_USE_SYSTEM_NETCDF=ON',
+ '-DNETCDF_DIR={0}'.format(spec['netcdf'].prefix),
+ '-DNETCDF_C_ROOT={0}'.format(spec['netcdf'].prefix),
+ '-DNETCDF_CXX_ROOT={0}'.format(spec['netcdf-cxx'].prefix),
+
+ # Enable/Disable wrappers for Python.
+ '-DVTK_WRAP_PYTHON={0}'.format(
+ 'ON' if '+python' in spec else 'OFF'),
+
+ # Disable wrappers for other languages.
+ '-DVTK_WRAP_JAVA=OFF',
+ '-DVTK_WRAP_TCL=OFF',
+
+ # Enable Qt support here.
+ '-DVTK_QT_VERSION:STRING={0}'.format(qt_ver),
+ '-DQT_QMAKE_EXECUTABLE:PATH={0}/qmake'.format(qt_bin),
+ '-DVTK_Group_Qt:BOOL=ON',
+ ])
+
+ # NOTE: The following definitions are required in order to allow
+ # VTK to build with qt~webkit versions (see the documentation for
+ # more info: http://www.vtk.org/Wiki/VTK/Tutorials/QtSetup).
+ if '~webkit' in spec['qt']:
cmake_args.extend([
- '-DBUILD_SHARED_LIBS=ON',
- '-DVTK_RENDERING_BACKEND:STRING={0}'.format(opengl_ver),
-
- # Enable/Disable wrappers for Python.
- '-DVTK_WRAP_PYTHON={0}'.format(feature_to_bool('python')),
-
- # Disable wrappers for other languages.
- '-DVTK_WRAP_JAVA=OFF',
- '-DVTK_WRAP_TCL=OFF',
-
- # Enable Qt support here.
- '-DVTK_QT_VERSION:STRING={0}'.format(qt_ver),
- '-DQT_QMAKE_EXECUTABLE:PATH={0}/qmake'.format(qt_bin),
- '-DVTK_Group_Qt:BOOL=ON',
+ '-DVTK_Group_Qt:BOOL=OFF',
+ '-DModule_vtkGUISupportQt:BOOL=ON',
+ '-DModule_vtkGUISupportQtOpenGL:BOOL=ON',
])
- # NOTE: The following definitions are required in order to allow
- # VTK to build with qt~webkit versions (see the documentation for
- # more info: http://www.vtk.org/Wiki/VTK/Tutorials/QtSetup).
- if '~webkit' in spec['qt']:
- cmake_args.extend([
- '-DVTK_Group_Qt:BOOL=OFF',
- '-DModule_vtkGUISupportQt:BOOL=ON',
- '-DModule_vtkGUISupportQtOpenGL:BOOL=ON',
- ])
-
- if spec.satisfies('@:6.1.0'):
- cmake_args.append('-DCMAKE_C_FLAGS=-DGLX_GLXEXT_LEGACY')
- cmake_args.append('-DCMAKE_CXX_FLAGS=-DGLX_GLXEXT_LEGACY')
-
- cmake('..', *cmake_args)
- make()
- make('install')
+ if spec.satisfies('@:6.1.0'):
+ cmake_args.append('-DCMAKE_C_FLAGS=-DGLX_GLXEXT_LEGACY')
+ cmake_args.append('-DCMAKE_CXX_FLAGS=-DGLX_GLXEXT_LEGACY')
+
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/vtkh/package.py b/var/spack/repos/builtin/packages/vtkh/package.py
new file mode 100644
index 0000000000..9073c1f6f3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vtkh/package.py
@@ -0,0 +1,97 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Vtkh(Package):
+ """VTK-h is a toolkit of scientific visualization algorithms for emerging
+ processor architectures. VTK-h brings together several projects like VTK-m
+ and DIY2 to provide a toolkit with hybrid parallel capabilities."""
+
+ homepage = "https://github.com/Alpine-DAV/vtk-h"
+ url = "https://github.com/Alpine-DAV/vtk-h"
+
+ version('master',
+ git='https://github.com/Alpine-DAV/vtk-h.git',
+ branch='master',
+ submodules=True)
+
+ maintainers = ['cyrush']
+
+ variant("mpi", default=True, description="build mpi support")
+ variant("tbb", default=True, description="build tbb support")
+ variant("cuda", default=False, description="build cuda support")
+
+ depends_on("cmake")
+
+ depends_on("mpi", when="+mpi")
+ depends_on("tbb", when="+tbb")
+ depends_on("cuda", when="+cuda")
+
+ depends_on("vtkm@master")
+ depends_on("vtkm@master+tbb", when="+tbb")
+ depends_on("vtkm@master+cuda", when="+cuda")
+
+ def install(self, spec, prefix):
+ with working_dir('spack-build', create=True):
+ cmake_args = ["../src",
+ "-DVTKM_DIR={0}".format(spec["vtkm"].prefix),
+ "-DENABLE_TESTS=OFF",
+ "-DBUILD_TESTING=OFF"]
+ # mpi support
+ if "+mpi" in spec:
+ mpicc = spec['mpi'].mpicc
+ mpicxx = spec['mpi'].mpicxx
+ cmake_args.extend(["-DMPI_C_COMPILER={0}".format(mpicc),
+ "-DMPI_CXX_COMPILER={0}".format(mpicxx)])
+
+ # tbb support
+ if "+tbb" in spec:
+ cmake_args.append("-DTBB_DIR={0}".format(spec["tbb"].prefix))
+
+ # cuda support
+ if "+cuda" in spec:
+ cmake_args.append("-DENABLE_CUDA=ON")
+ # this fix is necessary if compiling platform has cuda, but
+ # no devices (this common for front end nodes on hpc clusters)
+ # we choose kepler as a lowest common denominator
+ cmake_args.append("-DVTKm_CUDA_Architecture=kepler")
+
+ # use release, instead of release with debug symbols b/c vtkh libs
+ # can overwhelm compilers with too many symbols
+ for arg in std_cmake_args:
+ if arg.count("CMAKE_BUILD_TYPE") == 0:
+ cmake_args.extend(std_cmake_args)
+ cmake_args.append("-DCMAKE_BUILD_TYPE=Release")
+ cmake(*cmake_args)
+ if "+cuda" in spec:
+ # avoid issues with make -j and FindCuda deps
+ # likely a ordering issue that needs to be resolved
+ # in vtk-h
+ make(parallel=False)
+ else:
+ make()
+ make("install")
diff --git a/var/spack/repos/builtin/packages/vtkm/package.py b/var/spack/repos/builtin/packages/vtkm/package.py
new file mode 100644
index 0000000000..c1bc968f85
--- /dev/null
+++ b/var/spack/repos/builtin/packages/vtkm/package.py
@@ -0,0 +1,83 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+import os
+
+
+class Vtkm(Package):
+ """VTK-m is a toolkit of scientific visualization algorithms for emerging
+ processor architectures. VTK-m supports the fine-grained concurrency for
+ data analysis and visualization algorithms required to drive extreme scale
+ computing by providing abstract models for data and execution that can be
+ applied to a variety of algorithms across many different processor
+ architectures."""
+
+ homepage = "https://m.vtk.org/"
+ url = "https://gitlab.kitware.com/vtk/vtk-m/repository/v1.1.0/archive.tar.gz"
+
+ version('1.1.0', "6aab1c0885f6ffaaffcf07930873d0df")
+
+ version('master',
+ git='https://gitlab.kitware.com/vtk/vtk-m.git',
+ branch='master')
+
+ variant("cuda", default=False, description="build cuda support")
+ variant("tbb", default=True, description="build TBB support")
+
+ depends_on("cmake")
+ depends_on("tbb", when="+tbb")
+ depends_on("cuda", when="+cuda")
+
+ def install(self, spec, prefix):
+ with working_dir('spack-build', create=True):
+ cmake_args = ["../",
+ "-DVTKm_ENABLE_TESTING=OFF",
+ "-DVTKm_BUILD_RENDERING=ON",
+ "-DVTKm_USE_64BIT_IDS=OFF",
+ "-DVTKm_USE_DOUBLE_PRECISION=ON"]
+ # tbb support
+ if "+tbb" in spec:
+ # vtk-m detectes tbb via TBB_ROOT env var
+ os.environ["TBB_ROOT"] = spec["tbb"].prefix
+ cmake_args.append("-DVTKm_ENABLE_TBB=ON")
+
+ # cuda support
+ if "+cuda" in spec:
+ cmake_args.append("-DVTKm_ENABLE_CUDA=ON")
+ # this fix is necessary if compiling platform has cuda, but
+ # no devices (this common for front end nodes on hpc clusters)
+ # we choose kepler as a lowest common denominator
+ cmake_args.append("-DVTKm_CUDA_Architecture=kepler")
+
+ # use release, instead of release with debug symbols b/c vtkm libs
+ # can overwhelm compilers with too many symbols
+ for arg in std_cmake_args:
+ if arg.count("CMAKE_BUILD_TYPE") == 0:
+ cmake_args.extend(std_cmake_args)
+ cmake_args.append("-DCMAKE_BUILD_TYPE=Release")
+ cmake(*cmake_args)
+ make()
+ make("install")
diff --git a/var/spack/repos/builtin/packages/wannier90/package.py b/var/spack/repos/builtin/packages/wannier90/package.py
index 119d2cf769..c940d6c171 100644
--- a/var/spack/repos/builtin/packages/wannier90/package.py
+++ b/var/spack/repos/builtin/packages/wannier90/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -29,7 +29,7 @@ import shutil
from spack import *
-class Wannier90(Package):
+class Wannier90(MakefilePackage):
"""Wannier90 calculates maximally-localised Wannier functions (MLWFs).
Wannier90 is released under the GNU General Public License.
@@ -37,6 +37,7 @@ class Wannier90(Package):
homepage = 'http://wannier.org'
url = 'http://wannier.org/code/wannier90-2.0.1.tar.gz'
+ version('2.1.0', '07a81c002b41d6d0f97857e55c57d769')
version('2.0.1', '4edd742506eaba93317249d33261fb22')
depends_on('mpi')
@@ -45,66 +46,71 @@ class Wannier90(Package):
parallel = False
- def install(self, spec, prefix):
+ build_targets = [
+ 'wannier', 'post', 'lib', 'w90chk2chk', 'w90vdw', 'w90pov'
+ ]
+
+ @property
+ def makefile_name(self):
+ # Older versions use 'make.sys'
+ filename = 'make.sys'
+
+ # While newer search for 'make.inc'
+ if self.spec.satisfies('@2.1.0:'):
+ filename = 'make.inc'
+
+ abspath = join_path(self.stage.source_path, filename)
+ return abspath
- lapack = self.spec['lapack'].lapack_libs
- blas = self.spec['blas'].blas_libs
+ def edit(self, spec, prefix):
+
+ lapack = self.spec['lapack'].libs
+ blas = self.spec['blas'].libs
substitutions = {
'@F90': spack_fc,
'@MPIF90': self.spec['mpi'].mpifc,
'@LIBS': (lapack + blas).joined()
}
- #######
- # TODO : this part is replicated in PEXSI
- # TODO : and may be a common pattern for Editable Makefiles
- # TODO : see #1186
+
template = join_path(
os.path.dirname(inspect.getmodule(self).__file__),
'make.sys'
)
- makefile = join_path(
- self.stage.source_path,
- 'make.sys'
- )
- shutil.copy(template, makefile)
+ shutil.copy(template, self.makefile_name)
for key, value in substitutions.items():
- filter_file(key, value, makefile)
- ######
+ filter_file(key, value, self.makefile_name)
+
+ def install(self, spec, prefix):
- make('wannier')
mkdirp(self.prefix.bin)
+ mkdirp(self.prefix.lib)
+
install(
join_path(self.stage.source_path, 'wannier90.x'),
join_path(self.prefix.bin, 'wannier90.x')
)
- make('post')
install(
join_path(self.stage.source_path, 'postw90.x'),
join_path(self.prefix.bin, 'postw90.x')
)
- make('lib')
- mkdirp(self.prefix.lib)
install(
join_path(self.stage.source_path, 'libwannier.a'),
join_path(self.prefix.lib, 'libwannier.a')
)
- make('w90chk2chk')
install(
join_path(self.stage.source_path, 'w90chk2chk.x'),
join_path(self.prefix.bin, 'w90chk2chk.x')
)
- make('w90vdw')
install(
join_path(self.stage.source_path, 'utility', 'w90vdw', 'w90vdw.x'),
join_path(self.prefix.bin, 'w90vdw.x')
)
- make('w90pov')
install(
join_path(self.stage.source_path, 'utility', 'w90pov', 'w90pov'),
join_path(self.prefix.bin, 'w90pov')
diff --git a/var/spack/repos/builtin/packages/wget/package.py b/var/spack/repos/builtin/packages/wget/package.py
index aff771b723..03e0c86cf3 100644
--- a/var/spack/repos/builtin/packages/wget/package.py
+++ b/var/spack/repos/builtin/packages/wget/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,27 +25,73 @@
from spack import *
-class Wget(Package):
+class Wget(AutotoolsPackage):
"""GNU Wget is a free software package for retrieving files using
- HTTP, HTTPS and FTP, the most widely-used Internet protocols. It
- is a non-interactive commandline tool, so it may easily be called
- from scripts, cron jobs, terminals without X-Windows support,
- etc."""
+ HTTP, HTTPS and FTP, the most widely-used Internet protocols. It is a
+ non-interactive commandline tool, so it may easily be called from scripts,
+ cron jobs, terminals without X-Windows support, etc."""
homepage = "http://www.gnu.org/software/wget/"
- url = "http://ftp.gnu.org/gnu/wget/wget-1.16.tar.gz"
-
- version('1.17', 'c4c4727766f24ac716936275014a0536')
- version('1.16', '293a37977c41b5522f781d3a3a078426')
-
- depends_on("openssl")
-
- def install(self, spec, prefix):
- configure(
- "--prefix=%s" % prefix,
- "--with-ssl=openssl",
- "OPENSSL_CFLAGS=-I%s" % spec['openssl'].prefix.include,
- "OPENSSL_LIBS=-L%s -lssl -lcrypto -lz" % spec[
- 'openssl'].prefix.lib)
- make()
- make("install")
+ url = "http://ftp.gnu.org/gnu/wget/wget-1.19.1.tar.gz"
+
+ version('1.19.1', '87cea36b7161fd43e3fd51a4e8b89689')
+ version('1.17', 'c4c4727766f24ac716936275014a0536')
+ version('1.16', '293a37977c41b5522f781d3a3a078426')
+
+ variant('ssl', default='openssl', values=('gnutls', 'openssl'),
+ description='Specify SSL backend')
+ variant('zlib', default=True,
+ description='Enable zlib support')
+ variant('libpsl', default=False,
+ description='Enable support for libpsl cookie checking')
+ variant('pcre', default=False,
+ description='Enable PCRE style regular expressions')
+ variant('python', default=False,
+ description='Enable Python support')
+
+ depends_on('gnutls', when='ssl=gnutls')
+ depends_on('openssl', when='ssl=openssl')
+
+ depends_on('gettext', type='build')
+ depends_on('python@3:', type='build', when='+python')
+
+ depends_on('zlib', when='+zlib')
+ depends_on('libpsl', when='+libpsl')
+ depends_on('pcre', when='+pcre')
+
+ depends_on('perl@5.12.0:', type='build')
+ depends_on('pkg-config@0.9.0:', type='build')
+
+ # TODO: Add a 'test' deptype
+ # depends_on('valgrind', type='test')
+
+ build_directory = 'spack-build'
+
+ def configure_args(self):
+ spec = self.spec
+
+ args = [
+ '--with-ssl={0}'.format(spec.variants['ssl'].value),
+ ]
+
+ if '+zlib' in spec:
+ args.append('--with-zlib')
+ else:
+ args.append('--without-zlib')
+
+ if '+libpsl' in spec:
+ args.append('--with-libpsl')
+ else:
+ args.append('--without-libpsl')
+
+ if '+pcre' in spec:
+ args.append('--enable-pcre')
+ else:
+ args.append('--disable-pcre')
+
+ if self.run_tests:
+ args.append('--enable-valgrind-tests')
+ else:
+ args.append('--disable-valgrind-tests')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/windowswmproto/package.py b/var/spack/repos/builtin/packages/windowswmproto/package.py
index f163d1afb0..70f1aae995 100644
--- a/var/spack/repos/builtin/packages/windowswmproto/package.py
+++ b/var/spack/repos/builtin/packages/windowswmproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Windowswmproto(Package):
+class Windowswmproto(AutotoolsPackage):
"""This module provides the definition of the WindowsWM extension to the
X11 protocol, used for coordination between an X11 server and the
Microsoft Windows native window manager.
@@ -37,8 +37,3 @@ class Windowswmproto(Package):
url = "https://www.x.org/archive/individual/proto/windowswmproto-1.0.4.tar.gz"
version('1.0.4', '558db92a8e4e1b07e9c62eca3f04dd8d')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/wt/package.py b/var/spack/repos/builtin/packages/wt/package.py
new file mode 100644
index 0000000000..36eefdf2c0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/wt/package.py
@@ -0,0 +1,95 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Wt(CMakePackage):
+ """Wt, C++ Web Toolkit.
+
+ Wt is a C++ library for developing web applications."""
+
+ homepage = "http://www.webtoolkit.eu/wt"
+ url = "https://github.com/emweb/wt/archive/3.3.7.tar.gz"
+
+ version('3.3.7', '09858901f2dcf5c3d36a9237daba3e3f')
+ version('master', branch='master',
+ git='https://github.com/emweb/wt.git')
+
+ # wt builds in parallel, but requires more than 5 GByte RAM per -j <njob>
+ # which most machines do not provide and crash the build
+ parallel = False
+
+ variant('openssl', default=True,
+ description='SSL and WebSockets support in the built-in httpd, '
+ 'the HTTP(S) client, and additional cryptographic '
+ 'hashes in the authentication module')
+ variant('libharu', default=True, description='painting to PDF')
+ # variant('graphicsmagick', default=True,
+ # description='painting to PNG, GIF')
+ variant('sqlite', default=False, description='create SQLite3 DBO')
+ variant('mariadb', default=False, description='create MariaDB/MySQL DBO')
+ variant('postgresql', default=False, description='create PostgreSQL DBO')
+ # variant('firebird', default=False, description='create Firebird DBO')
+ variant('pango', default=True,
+ description='improved font support in PDF and raster image '
+ 'painting')
+ variant('zlib', default=True,
+ description='compression in the built-in httpd')
+ # variant('fastcgi', default=False,
+ # description='FastCGI connector via libfcgi++')
+
+ depends_on('boost@1.46.1:')
+ depends_on('openssl', when='+openssl')
+ depends_on('libharu', when='+libharu')
+ depends_on('sqlite', when='+sqlite')
+ depends_on('mariadb', when='+mariadb')
+ depends_on('postgresql', when='+postgresql')
+ depends_on('pango', when='+pango')
+ depends_on('zlib', when='+zlib')
+
+ def cmake_args(self):
+ spec = self.spec
+
+ cmake_args = [
+ '-DBUILD_EXAMPLES:BOOL=OFF',
+ '-DCONNECTOR_FCGI:BOOL=OFF',
+ '-DENABLE_OPENGL:BOOL=OFF',
+ '-DENABLE_QT4:BOOL=OFF'
+ ]
+ cmake_args.extend([
+ '-DENABLE_SSL:BOOL={0}'.format((
+ 'ON' if '+openssl' in spec else 'OFF')),
+ '-DENABLE_HARU:BOOL={0}'.format((
+ 'ON' if '+libharu' in spec else 'OFF')),
+ '-DENABLE_PANGO:BOOL={0}'.format((
+ 'ON' if '+pango' in spec else 'OFF')),
+ '-DENABLE_SQLITE:BOOL={0}'.format((
+ 'ON' if '+sqlite' in spec else 'OFF')),
+ '-DENABLE_MYSQL:BOOL={0}'.format((
+ 'ON' if '+mariadb' in spec else 'OFF')),
+ '-DENABLE_POSTGRES:BOOL={0}'.format((
+ 'ON' if '+postgres' in spec else 'OFF'))
+ ])
+ return cmake_args
diff --git a/var/spack/repos/builtin/packages/wx/package.py b/var/spack/repos/builtin/packages/wx/package.py
index 42d39df9e6..fc42b5153f 100644
--- a/var/spack/repos/builtin/packages/wx/package.py
+++ b/var/spack/repos/builtin/packages/wx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -23,9 +23,10 @@
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
+import sys
-class Wx(Package):
+class Wx(AutotoolsPackage):
"""wxWidgets is a C++ library that lets developers create
applications for Windows, Mac OS X, Linux and other platforms
with a single code base. It has popular language bindings for
@@ -41,18 +42,27 @@ class Wx(Package):
version('3.0.2', '6461eab4428c0a8b9e41781b8787510484dea800')
version('3.0.1', '73e58521d6871c9f4d1e7974c6e3a81629fddcf8')
- depends_on('gtkplus')
+ version('develop', git='https://github.com/wxWidgets/wxWidgets.git', branch='master')
- def make_wx(self):
- make()
+ depends_on('pkg-config', type='build')
+ depends_on('gtkplus')
@when('@:3.0.2')
- def make_wx(self):
+ def build(self, spec, prefix):
make(parallel=False)
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix, "--enable-unicode",
- "--disable-precomp-headers")
+ def configure_args(self):
+ spec = self.spec
+ options = [
+ '--enable-unicode',
+ '--disable-precomp-headers'
+ ]
+
+ # see http://trac.wxwidgets.org/ticket/17639
+ if spec.satisfies('@:3.1.0') and sys.platform == 'darwin':
+ options.extend([
+ '--disable-qtkit',
+ '--disable-mediactrl'
+ ])
- self.make_wx()
- make("install")
+ return options
diff --git a/var/spack/repos/builtin/packages/wxpropgrid/package.py b/var/spack/repos/builtin/packages/wxpropgrid/package.py
index cc9ff445d6..7df30895fc 100644
--- a/var/spack/repos/builtin/packages/wxpropgrid/package.py
+++ b/var/spack/repos/builtin/packages/wxpropgrid/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/x11perf/package.py b/var/spack/repos/builtin/packages/x11perf/package.py
index 91db1e8a59..b5a2e9344b 100644
--- a/var/spack/repos/builtin/packages/x11perf/package.py
+++ b/var/spack/repos/builtin/packages/x11perf/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class X11perf(Package):
+class X11perf(AutotoolsPackage):
"""Simple X server performance benchmarker."""
homepage = "http://cgit.freedesktop.org/xorg/app/x11perf"
@@ -41,9 +41,3 @@ class X11perf(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xapian-core/package.py b/var/spack/repos/builtin/packages/xapian-core/package.py
new file mode 100644
index 0000000000..8ea340a55a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xapian-core/package.py
@@ -0,0 +1,39 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class XapianCore(AutotoolsPackage):
+ """Xapian is a highly adaptable toolkit which allows developers to easily
+ add advanced indexing and search facilities to their own applications.
+ It supports the Probabilistic Information Retrieval model and also
+ supports a rich set of boolean query operators."""
+
+ homepage = "https://xapian.org"
+ url = "http://oligarchy.co.uk/xapian/1.4.3/xapian-core-1.4.3.tar.xz"
+
+ version('1.4.3', '143f72693219f7fc5913815ed858f295')
+
+ depends_on('zlib')
diff --git a/var/spack/repos/builtin/packages/xauth/package.py b/var/spack/repos/builtin/packages/xauth/package.py
index 6d6a03c899..ac02ba48b9 100644
--- a/var/spack/repos/builtin/packages/xauth/package.py
+++ b/var/spack/repos/builtin/packages/xauth/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xauth(Package):
+class Xauth(AutotoolsPackage):
"""The xauth program is used to edit and display the authorization
information used in connecting to the X server."""
@@ -43,9 +43,4 @@ class Xauth(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- # make('check') # TODO: add package for cmdtest build dependency
- make('install')
+ # TODO: add package for cmdtest test dependency
diff --git a/var/spack/repos/builtin/packages/xbacklight/package.py b/var/spack/repos/builtin/packages/xbacklight/package.py
index f1a9ecc124..2f4057ee80 100644
--- a/var/spack/repos/builtin/packages/xbacklight/package.py
+++ b/var/spack/repos/builtin/packages/xbacklight/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xbacklight(Package):
+class Xbacklight(AutotoolsPackage):
"""Xbacklight is used to adjust the backlight brightness where supported.
It uses the RandR extension to find all outputs on the X server
supporting backlight brightness control and changes them all in the
@@ -41,9 +41,3 @@ class Xbacklight(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xbiff/package.py b/var/spack/repos/builtin/packages/xbiff/package.py
index f5c53c5997..7d85e59fbf 100644
--- a/var/spack/repos/builtin/packages/xbiff/package.py
+++ b/var/spack/repos/builtin/packages/xbiff/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xbiff(Package):
+class Xbiff(AutotoolsPackage):
"""xbiff provides graphical notification of new e-mail.
It only handles mail stored in a filesystem accessible file,
not via IMAP, POP or other remote access protocols."""
@@ -43,9 +43,3 @@ class Xbiff(Package):
depends_on('xbitmaps', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xbitmaps/package.py b/var/spack/repos/builtin/packages/xbitmaps/package.py
index 1c6fb79d3a..6282ce7041 100644
--- a/var/spack/repos/builtin/packages/xbitmaps/package.py
+++ b/var/spack/repos/builtin/packages/xbitmaps/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xbitmaps(Package):
+class Xbitmaps(AutotoolsPackage):
"""The xbitmaps package contains bitmap images used by multiple
applications built in Xorg."""
@@ -36,8 +36,3 @@ class Xbitmaps(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcalc/package.py b/var/spack/repos/builtin/packages/xcalc/package.py
index a470d1c9d0..5218ecac99 100644
--- a/var/spack/repos/builtin/packages/xcalc/package.py
+++ b/var/spack/repos/builtin/packages/xcalc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xcalc(Package):
+class Xcalc(AutotoolsPackage):
"""xcalc is a scientific calculator X11 client that can emulate a TI-30
or an HP-10C."""
@@ -41,9 +41,3 @@ class Xcalc(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-demo/package.py b/var/spack/repos/builtin/packages/xcb-demo/package.py
index 62433e3b32..7a2c2f65f4 100644
--- a/var/spack/repos/builtin/packages/xcb-demo/package.py
+++ b/var/spack/repos/builtin/packages/xcb-demo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbDemo(Package):
+class XcbDemo(AutotoolsPackage):
"""xcb-demo: A collection of demo programs that use the XCB library."""
homepage = "https://xcb.freedesktop.org/"
@@ -40,12 +40,5 @@ class XcbDemo(Package):
depends_on('pkg-config@0.9.0:', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- # FIXME: crashes with the following error message
- # X11/XCB/xcb.h: No such file or directory
-
- make()
- make('check')
- make('install')
+ # FIXME: crashes with the following error message
+ # X11/XCB/xcb.h: No such file or directory
diff --git a/var/spack/repos/builtin/packages/xcb-proto/package.py b/var/spack/repos/builtin/packages/xcb-proto/package.py
index d2ac54d34f..9cb2480b17 100644
--- a/var/spack/repos/builtin/packages/xcb-proto/package.py
+++ b/var/spack/repos/builtin/packages/xcb-proto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbProto(Package):
+class XcbProto(AutotoolsPackage):
"""xcb-proto provides the XML-XCB protocol descriptions that libxcb uses to
generate the majority of its code and API."""
@@ -35,10 +35,7 @@ class XcbProto(Package):
version('1.12', '5ee1ec124ea8d56bd9e83b8e9e0b84c4')
version('1.11', 'c8c6cb72c84f58270f4db1f39607f66a')
- extends('python')
+ # TODO: uncomment once build deps can be resolved separately
+ # extends('python')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- # make('check') # fails xmllint validation
- make('install')
+ patch('xcb-proto-1.12-schema-1.patch', when='@1.12')
diff --git a/var/spack/repos/builtin/packages/xcb-proto/xcb-proto-1.12-schema-1.patch b/var/spack/repos/builtin/packages/xcb-proto/xcb-proto-1.12-schema-1.patch
new file mode 100644
index 0000000000..2a0b69255c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xcb-proto/xcb-proto-1.12-schema-1.patch
@@ -0,0 +1,52 @@
+Submitted By: Bruce Dubbs <bdubbs at linuxfromscratch dot org>
+Date: 2016-06-01
+Initial Package Version: 1.12
+Upstream Status: Not Committed
+Origin: https://lists.freedesktop.org/archives/xcb/2016-February/010676.html
+Description: Fixes make check
+
+
+--- a/src/xcb.xsd
++++ b/src/xcb.xsd
+@@ -44,6 +44,15 @@ authorization from the authors.
+ <xsd:complexType>
+ <xsd:attribute name="bytes" type="xsd:integer" use="optional" />
+ <xsd:attribute name="align" type="xsd:integer" use="optional" />
++ <xsd:attribute name="serialize" type="xsd:boolean" use="optional" />
++ </xsd:complexType>
++ </xsd:element>
++
++ <!-- Alignment -->
++ <xsd:element name="required_start_align" >
++ <xsd:complexType>
++ <xsd:attribute name="align" type="xsd:integer" use="required" />
++ <xsd:attribute name="offset" type="xsd:integer" use="optional" />
+ </xsd:complexType>
+ </xsd:element>
+
+@@ -76,14 +85,13 @@ authorization from the authors.
+ <xsd:sequence>
+ <!-- switch(expression) -->
+ <xsd:group ref="expression" minOccurs="1" maxOccurs="1" />
++ <xsd:element ref="required_start_align" minOccurs="0" maxOccurs="1" />
+ <xsd:choice>
+ <!-- bitcase expression - bit test -->
+ <xsd:element name="bitcase" type="caseexpr" minOccurs="0" maxOccurs="unbounded" />
+ <!-- case expression - value test -->
+ <xsd:element name="case" type="caseexpr" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:choice>
+- <!-- default: -->
+- <xsd:group ref="fields" minOccurs="0" maxOccurs="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+@@ -201,6 +209,7 @@ authorization from the authors.
+ <xsd:element ref="field" />
+ <xsd:element ref="list" />
+ <xsd:element ref="fd" />
++ <xsd:element ref="required_start_align" />
+ </xsd:choice>
+ </xsd:group>
+
+
+
diff --git a/var/spack/repos/builtin/packages/xcb-util-cursor/package.py b/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
index b25fb181a6..64faa37207 100644
--- a/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-cursor/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilCursor(Package):
+class XcbUtilCursor(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -43,9 +43,3 @@ class XcbUtilCursor(Package):
depends_on('xcb-util-image')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util-errors/package.py b/var/spack/repos/builtin/packages/xcb-util-errors/package.py
index c287a0ec6e..07aa424ddc 100644
--- a/var/spack/repos/builtin/packages/xcb-util-errors/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-errors/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilErrors(Package):
+class XcbUtilErrors(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -42,10 +42,3 @@ class XcbUtilErrors(Package):
depends_on('xcb-proto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util-image/package.py b/var/spack/repos/builtin/packages/xcb-util-image/package.py
index 4413c7e11d..a9f2f2263a 100644
--- a/var/spack/repos/builtin/packages/xcb-util-image/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-image/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilImage(Package):
+class XcbUtilImage(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -43,10 +43,3 @@ class XcbUtilImage(Package):
depends_on('xproto@7.0.8:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('check')
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py b/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
index 0de6391b18..3901624e9a 100644
--- a/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-keysyms/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilKeysyms(Package):
+class XcbUtilKeysyms(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -42,9 +42,3 @@ class XcbUtilKeysyms(Package):
depends_on('xproto@7.0.8:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py b/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
index d41c88206c..e9a325e83c 100644
--- a/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-renderutil/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilRenderutil(Package):
+class XcbUtilRenderutil(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -41,9 +41,3 @@ class XcbUtilRenderutil(Package):
depends_on('libxcb@1.4:')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util-wm/package.py b/var/spack/repos/builtin/packages/xcb-util-wm/package.py
index ef3db06aec..5d9a5e3932 100644
--- a/var/spack/repos/builtin/packages/xcb-util-wm/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util-wm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtilWm(Package):
+class XcbUtilWm(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -41,9 +41,3 @@ class XcbUtilWm(Package):
depends_on('libxcb@1.4:')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcb-util/package.py b/var/spack/repos/builtin/packages/xcb-util/package.py
index 820592a319..c8ac0d40ab 100644
--- a/var/spack/repos/builtin/packages/xcb-util/package.py
+++ b/var/spack/repos/builtin/packages/xcb-util/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XcbUtil(Package):
+class XcbUtil(AutotoolsPackage):
"""The XCB util modules provides a number of libraries which sit on top
of libxcb, the core X protocol library, and some of the extension
libraries. These experimental libraries provide convenience functions
@@ -41,9 +41,3 @@ class XcbUtil(Package):
depends_on('libxcb@1.4:')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xclip/package.py b/var/spack/repos/builtin/packages/xclip/package.py
new file mode 100644
index 0000000000..d685d1f07c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xclip/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Xclip(AutotoolsPackage):
+ """xclip is a command line utility that is designed to run on any system
+ with an X11 implementation. It provides an interface to X selections
+ ("the clipboard") from the command line. It can read data from standard
+ in or a file and place it in an X selection for pasting into other X
+ applications. xclip can also print an X selection to standard out,
+ which can then be redirected to a file or another program."""
+
+ homepage = "https://github.com/astrand/xclip"
+ url = "https://github.com/astrand/xclip"
+
+ version('0.13', git='https://github.com/astrand/xclip', commit='9aa7090c3b8b437c6489edca32ae43d82e0c1281')
+
+ depends_on('libxmu')
+ depends_on('libx11')
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
diff --git a/var/spack/repos/builtin/packages/xclipboard/package.py b/var/spack/repos/builtin/packages/xclipboard/package.py
index d9af19da71..bad81a9a96 100644
--- a/var/spack/repos/builtin/packages/xclipboard/package.py
+++ b/var/spack/repos/builtin/packages/xclipboard/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xclipboard(Package):
+class Xclipboard(AutotoolsPackage):
"""xclipboard is used to collect and display text selections that are
sent to the CLIPBOARD by other clients. It is typically used to save
CLIPBOARD selections for later use. It stores each CLIPBOARD
@@ -45,9 +45,3 @@ class Xclipboard(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xclock/package.py b/var/spack/repos/builtin/packages/xclock/package.py
index 5bd38826db..47614e50e1 100644
--- a/var/spack/repos/builtin/packages/xclock/package.py
+++ b/var/spack/repos/builtin/packages/xclock/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xclock(Package):
+class Xclock(AutotoolsPackage):
"""xclock is the classic X Window System clock utility. It displays
the time in analog or digital form, continuously updated at a
frequency which may be specified by the user."""
@@ -46,9 +46,3 @@ class Xclock(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcmiscproto/package.py b/var/spack/repos/builtin/packages/xcmiscproto/package.py
index 2b15d1b3e7..92c1b886a5 100644
--- a/var/spack/repos/builtin/packages/xcmiscproto/package.py
+++ b/var/spack/repos/builtin/packages/xcmiscproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xcmiscproto(Package):
+class Xcmiscproto(AutotoolsPackage):
"""XC-MISC Extension.
This extension defines a protocol that provides Xlib two ways to query
@@ -38,8 +38,3 @@ class Xcmiscproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcmsdb/package.py b/var/spack/repos/builtin/packages/xcmsdb/package.py
index 4d12e3a843..b59a254262 100644
--- a/var/spack/repos/builtin/packages/xcmsdb/package.py
+++ b/var/spack/repos/builtin/packages/xcmsdb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xcmsdb(Package):
+class Xcmsdb(AutotoolsPackage):
"""xcmsdb is used to load, query, or remove Device Color Characterization
data stored in properties on the root window of the screen as
specified in section 7, Device Color Characterization, of the
@@ -40,9 +40,3 @@ class Xcmsdb(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcompmgr/package.py b/var/spack/repos/builtin/packages/xcompmgr/package.py
index fc5bbb4b9c..dc8aa398b1 100644
--- a/var/spack/repos/builtin/packages/xcompmgr/package.py
+++ b/var/spack/repos/builtin/packages/xcompmgr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xcompmgr(Package):
+class Xcompmgr(AutotoolsPackage):
"""xcompmgr is a sample compositing manager for X servers supporting the
XFIXES, DAMAGE, RENDER, and COMPOSITE extensions. It enables basic
eye-candy effects."""
@@ -43,9 +43,3 @@ class Xcompmgr(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xconsole/package.py b/var/spack/repos/builtin/packages/xconsole/package.py
index f86fe753b6..2c130091d3 100644
--- a/var/spack/repos/builtin/packages/xconsole/package.py
+++ b/var/spack/repos/builtin/packages/xconsole/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xconsole(Package):
+class Xconsole(AutotoolsPackage):
"""xconsole displays in a X11 window the messages which are usually sent
to /dev/console."""
@@ -42,9 +42,3 @@ class Xconsole(Package):
depends_on('xproto@7.0.17:')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xcursor-themes/package.py b/var/spack/repos/builtin/packages/xcursor-themes/package.py
index 7c38c9999c..112d63c274 100644
--- a/var/spack/repos/builtin/packages/xcursor-themes/package.py
+++ b/var/spack/repos/builtin/packages/xcursor-themes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
diff --git a/var/spack/repos/builtin/packages/xcursorgen/package.py b/var/spack/repos/builtin/packages/xcursorgen/package.py
index 4e43844646..c2b808b0af 100644
--- a/var/spack/repos/builtin/packages/xcursorgen/package.py
+++ b/var/spack/repos/builtin/packages/xcursorgen/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xcursorgen(Package):
+class Xcursorgen(AutotoolsPackage):
"""xcursorgen prepares X11 cursor sets for use with libXcursor."""
homepage = "http://cgit.freedesktop.org/xorg/app/xcursorgen"
@@ -39,9 +39,3 @@ class Xcursorgen(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xdbedizzy/package.py b/var/spack/repos/builtin/packages/xdbedizzy/package.py
index 7a8f97401f..9e21e54ca6 100644
--- a/var/spack/repos/builtin/packages/xdbedizzy/package.py
+++ b/var/spack/repos/builtin/packages/xdbedizzy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xdbedizzy(Package):
+class Xdbedizzy(AutotoolsPackage):
"""xdbedizzy is a demo of the X11 Double Buffer Extension (DBE)
creating a double buffered spinning scene."""
@@ -39,9 +39,3 @@ class Xdbedizzy(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xditview/package.py b/var/spack/repos/builtin/packages/xditview/package.py
index 3fececd12e..5111de58af 100644
--- a/var/spack/repos/builtin/packages/xditview/package.py
+++ b/var/spack/repos/builtin/packages/xditview/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xditview(Package):
+class Xditview(AutotoolsPackage):
"""xditview displays ditroff output on an X display."""
homepage = "http://cgit.freedesktop.org/xorg/app/xditview"
@@ -40,9 +40,3 @@ class Xditview(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xdm/package.py b/var/spack/repos/builtin/packages/xdm/package.py
index d42ced9a57..8f1b544f6d 100644
--- a/var/spack/repos/builtin/packages/xdm/package.py
+++ b/var/spack/repos/builtin/packages/xdm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xdm(Package):
+class Xdm(AutotoolsPackage):
"""X Display Manager / XDMCP server."""
homepage = "http://cgit.freedesktop.org/xorg/app/xdm"
@@ -46,9 +46,3 @@ class Xdm(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xdpyinfo/package.py b/var/spack/repos/builtin/packages/xdpyinfo/package.py
index c69af3b357..ab5935b474 100644
--- a/var/spack/repos/builtin/packages/xdpyinfo/package.py
+++ b/var/spack/repos/builtin/packages/xdpyinfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xdpyinfo(Package):
+class Xdpyinfo(AutotoolsPackage):
"""xdpyinfo is a utility for displaying information about an X server.
It is used to examine the capabilities of a server, the predefined
@@ -44,11 +44,8 @@ class Xdpyinfo(Package):
depends_on('libxcb')
depends_on('xproto@7.0.22:', type='build')
+ depends_on('recordproto', type='build')
+ depends_on('inputproto', type='build')
+ depends_on('fixesproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xdriinfo/package.py b/var/spack/repos/builtin/packages/xdriinfo/package.py
index 7548175f6f..86645072c0 100644
--- a/var/spack/repos/builtin/packages/xdriinfo/package.py
+++ b/var/spack/repos/builtin/packages/xdriinfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xdriinfo(Package):
+class Xdriinfo(AutotoolsPackage):
"""xdriinfo - query configuration information of X11 DRI drivers."""
homepage = "http://cgit.freedesktop.org/xorg/app/xdriinfo"
@@ -44,9 +44,3 @@ class Xdriinfo(Package):
depends_on('glproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xedit/package.py b/var/spack/repos/builtin/packages/xedit/package.py
index da5f28809f..752fbf61d5 100644
--- a/var/spack/repos/builtin/packages/xedit/package.py
+++ b/var/spack/repos/builtin/packages/xedit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xedit(Package):
+class Xedit(AutotoolsPackage):
"""Xedit is a simple text editor for X."""
homepage = "https://cgit.freedesktop.org/xorg/app/xedit"
@@ -40,9 +40,3 @@ class Xedit(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xerces-c/package.py b/var/spack/repos/builtin/packages/xerces-c/package.py
index 9f3ad8a4dc..3e832784f8 100644
--- a/var/spack/repos/builtin/packages/xerces-c/package.py
+++ b/var/spack/repos/builtin/packages/xerces-c/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,21 +25,17 @@
from spack import *
-class XercesC(Package):
+class XercesC(AutotoolsPackage):
"""Xerces-C++ is a validating XML parser written in a portable subset of
C++. Xerces-C++ makes it easy to give your application the ability to read
and write XML data. A shared library is provided for parsing, generating,
manipulating, and validating XML documents using the DOM, SAX, and SAX2
- APIs.
- """
+ APIs."""
homepage = "https://xerces.apache.org/xerces-c"
- url = "https://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.4.tar.bz2"
+ url = "https://archive.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.4.tar.bz2"
+
version('3.1.4', 'd04ae9d8b2dee2157c6db95fa908abfd')
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix,
- "--disable-network")
- make("clean")
- make()
- make("install")
+ def configure_args(self):
+ return ['--disable-network']
diff --git a/var/spack/repos/builtin/packages/xev/package.py b/var/spack/repos/builtin/packages/xev/package.py
index 5727d4e428..fbccb0e103 100644
--- a/var/spack/repos/builtin/packages/xev/package.py
+++ b/var/spack/repos/builtin/packages/xev/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xev(Package):
+class Xev(AutotoolsPackage):
"""xev creates a window and then asks the X server to send it X11 events
whenever anything happens to the window (such as it being moved,
resized, typed in, clicked in, etc.). You can also attach it to an
@@ -45,9 +45,3 @@ class Xev(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xextproto/package.py b/var/spack/repos/builtin/packages/xextproto/package.py
index 9c1c123527..d02c1935c2 100644
--- a/var/spack/repos/builtin/packages/xextproto/package.py
+++ b/var/spack/repos/builtin/packages/xextproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xextproto(Package):
+class Xextproto(AutotoolsPackage):
"""X Protocol Extensions."""
homepage = "http://cgit.freedesktop.org/xorg/proto/xextproto"
@@ -37,8 +37,3 @@ class Xextproto(Package):
depends_on('util-macros', type='build')
parallel = False
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xeyes/package.py b/var/spack/repos/builtin/packages/xeyes/package.py
index cfea92fda3..232f46212b 100644
--- a/var/spack/repos/builtin/packages/xeyes/package.py
+++ b/var/spack/repos/builtin/packages/xeyes/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xeyes(Package):
+class Xeyes(AutotoolsPackage):
"""xeyes - a follow the mouse X demo, using the X SHAPE extension"""
homepage = "http://cgit.freedesktop.org/xorg/app/xeyes"
@@ -41,9 +41,3 @@ class Xeyes(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86bigfontproto/package.py b/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
index 6c1dc8f37d..4a1315b617 100644
--- a/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86bigfontproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Xf86bigfontproto(Package):
+class Xf86bigfontproto(AutotoolsPackage):
"""X.org XF86BigFontProto protocol headers."""
homepage = "https://cgit.freedesktop.org/xorg/proto/xf86bigfontproto"
url = "https://www.x.org/archive/individual/proto/xf86bigfontproto-1.2.0.tar.gz"
version('1.2.0', '91b0733ff4cbe55808d96073258aa3d1')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86dga/package.py b/var/spack/repos/builtin/packages/xf86dga/package.py
index 8add6fbca7..3768fced15 100644
--- a/var/spack/repos/builtin/packages/xf86dga/package.py
+++ b/var/spack/repos/builtin/packages/xf86dga/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xf86dga(Package):
+class Xf86dga(AutotoolsPackage):
"""dga is a simple test client for the XFree86-DGA extension."""
homepage = "http://cgit.freedesktop.org/xorg/app/xf86dga"
@@ -38,9 +38,3 @@ class Xf86dga(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86dgaproto/package.py b/var/spack/repos/builtin/packages/xf86dgaproto/package.py
index 05b64c9534..88cd07c286 100644
--- a/var/spack/repos/builtin/packages/xf86dgaproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86dgaproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Xf86dgaproto(Package):
+class Xf86dgaproto(AutotoolsPackage):
"""X.org XF86DGAProto protocol headers."""
homepage = "https://cgit.freedesktop.org/xorg/proto/xf86dgaproto"
url = "https://www.x.org/archive/individual/proto/xf86dgaproto-2.1.tar.gz"
version('2.1', '1fe79dc07857ad3e1fb8b8f2bdd70d1b')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86driproto/package.py b/var/spack/repos/builtin/packages/xf86driproto/package.py
index 655d1bc60b..4877440649 100644
--- a/var/spack/repos/builtin/packages/xf86driproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86driproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xf86driproto(Package):
+class Xf86driproto(AutotoolsPackage):
"""XFree86 Direct Rendering Infrastructure Extension.
This extension defines a protocol to allow user applications to access
@@ -39,8 +39,3 @@ class Xf86driproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86miscproto/package.py b/var/spack/repos/builtin/packages/xf86miscproto/package.py
index 4b7e279077..60e1db78bf 100644
--- a/var/spack/repos/builtin/packages/xf86miscproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86miscproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xf86miscproto(Package):
+class Xf86miscproto(AutotoolsPackage):
"""This package includes the protocol definitions of the "XFree86-Misc"
extension to the X11 protocol. The "XFree86-Misc" extension is
supported by the XFree86 X server and versions of the Xorg X server
@@ -35,8 +35,3 @@ class Xf86miscproto(Package):
url = "https://www.x.org/archive/individual/proto/xf86miscproto-0.9.3.tar.gz"
version('0.9.3', 'c6432f04f84929c94fa05b3a466c489d')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86rushproto/package.py b/var/spack/repos/builtin/packages/xf86rushproto/package.py
index bdd192970b..6b29e07c6a 100644
--- a/var/spack/repos/builtin/packages/xf86rushproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86rushproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,15 +25,10 @@
from spack import *
-class Xf86rushproto(Package):
+class Xf86rushproto(AutotoolsPackage):
"""X.org XF86RushProto protocol headers."""
homepage = "https://cgit.freedesktop.org/xorg/proto/xf86rushproto"
url = "https://www.x.org/archive/individual/proto/xf86rushproto-1.1.2.tar.gz"
version('1.1.2', '6a6389473332ace01146cccfef228576')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py b/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
index ece389f9e6..f8ce028474 100644
--- a/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
+++ b/var/spack/repos/builtin/packages/xf86vidmodeproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xf86vidmodeproto(Package):
+class Xf86vidmodeproto(AutotoolsPackage):
"""XFree86 Video Mode Extension.
This extension defines a protocol for dynamically configuring modelines
@@ -38,8 +38,3 @@ class Xf86vidmodeproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfd/package.py b/var/spack/repos/builtin/packages/xfd/package.py
index 669cd83bf5..024f8ce141 100644
--- a/var/spack/repos/builtin/packages/xfd/package.py
+++ b/var/spack/repos/builtin/packages/xfd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfd(Package):
+class Xfd(AutotoolsPackage):
"""xfd - display all the characters in a font using either the
X11 core protocol or libXft2."""
@@ -44,9 +44,3 @@ class Xfd(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfindproxy/package.py b/var/spack/repos/builtin/packages/xfindproxy/package.py
index e4b83433c4..fc12753133 100644
--- a/var/spack/repos/builtin/packages/xfindproxy/package.py
+++ b/var/spack/repos/builtin/packages/xfindproxy/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfindproxy(Package):
+class Xfindproxy(AutotoolsPackage):
"""xfindproxy is used to locate available X11 proxy services.
It utilizes the Proxy Management Protocol to communicate with a proxy
@@ -45,9 +45,3 @@ class Xfindproxy(Package):
depends_on('xproxymanagementprotocol', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfontsel/package.py b/var/spack/repos/builtin/packages/xfontsel/package.py
index 772ff8d570..2a615216d5 100644
--- a/var/spack/repos/builtin/packages/xfontsel/package.py
+++ b/var/spack/repos/builtin/packages/xfontsel/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfontsel(Package):
+class Xfontsel(AutotoolsPackage):
"""xfontsel application provides a simple way to display the X11 core
protocol fonts known to your X server, examine samples of each, and
retrieve the X Logical Font Description ("XLFD") full name for a font."""
@@ -42,9 +42,3 @@ class Xfontsel(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfs/package.py b/var/spack/repos/builtin/packages/xfs/package.py
index 72429dee90..6846c320e2 100644
--- a/var/spack/repos/builtin/packages/xfs/package.py
+++ b/var/spack/repos/builtin/packages/xfs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfs(Package):
+class Xfs(AutotoolsPackage):
"""X Font Server."""
homepage = "http://cgit.freedesktop.org/xorg/app/xfs"
@@ -37,12 +37,7 @@ class Xfs(Package):
depends_on('font-util')
depends_on('xproto@7.0.17:', type='build')
+ depends_on('fontsproto', type='build')
depends_on('xtrans', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfsinfo/package.py b/var/spack/repos/builtin/packages/xfsinfo/package.py
index b31ad1c1e0..8f8ec13247 100644
--- a/var/spack/repos/builtin/packages/xfsinfo/package.py
+++ b/var/spack/repos/builtin/packages/xfsinfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfsinfo(Package):
+class Xfsinfo(AutotoolsPackage):
"""xfsinfo is a utility for displaying information about an X font
server. It is used to examine the capabilities of a server, the
predefined values for various parameters used in communicating between
@@ -42,9 +42,3 @@ class Xfsinfo(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xfwp/package.py b/var/spack/repos/builtin/packages/xfwp/package.py
index 5f073a8806..b0c8fa9158 100644
--- a/var/spack/repos/builtin/packages/xfwp/package.py
+++ b/var/spack/repos/builtin/packages/xfwp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xfwp(Package):
+class Xfwp(AutotoolsPackage):
"""xfwp proxies X11 protocol connections, such as through a firewall."""
homepage = "http://cgit.freedesktop.org/xorg/app/xfwp"
@@ -40,11 +40,5 @@ class Xfwp(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- # FIXME: fails with the error message:
- # io.c:1039:7: error: implicit declaration of function 'swab'
-
- make()
- make('install')
+ # FIXME: fails with the error message:
+ # io.c:1039:7: error: implicit declaration of function 'swab'
diff --git a/var/spack/repos/builtin/packages/xgamma/package.py b/var/spack/repos/builtin/packages/xgamma/package.py
index b8abec293a..b417a47c1c 100644
--- a/var/spack/repos/builtin/packages/xgamma/package.py
+++ b/var/spack/repos/builtin/packages/xgamma/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xgamma(Package):
+class Xgamma(AutotoolsPackage):
"""xgamma allows X users to query and alter the gamma correction of a
monitor via the X video mode extension (XFree86-VidModeExtension)."""
@@ -40,9 +40,3 @@ class Xgamma(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xgc/package.py b/var/spack/repos/builtin/packages/xgc/package.py
index 608e6e0360..0b507332da 100644
--- a/var/spack/repos/builtin/packages/xgc/package.py
+++ b/var/spack/repos/builtin/packages/xgc/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xgc(Package):
+class Xgc(AutotoolsPackage):
"""xgc is an X11 graphics demo that shows various features of the X11
core protocol graphics primitives."""
@@ -41,9 +41,3 @@ class Xgc(Package):
depends_on('bison', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xhost/package.py b/var/spack/repos/builtin/packages/xhost/package.py
index f01c481ee7..072a5a29b1 100644
--- a/var/spack/repos/builtin/packages/xhost/package.py
+++ b/var/spack/repos/builtin/packages/xhost/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xhost(Package):
+class Xhost(AutotoolsPackage):
"""xhost is used to manage the list of host names or user names
allowed to make connections to the X server."""
@@ -41,9 +41,3 @@ class Xhost(Package):
depends_on('xproto@7.0.22:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xineramaproto/package.py b/var/spack/repos/builtin/packages/xineramaproto/package.py
index baededbb25..b05e26254b 100644
--- a/var/spack/repos/builtin/packages/xineramaproto/package.py
+++ b/var/spack/repos/builtin/packages/xineramaproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xineramaproto(Package):
+class Xineramaproto(AutotoolsPackage):
"""X Xinerama Extension.
This is an X extension that allows multiple physical screens controlled
@@ -38,8 +38,3 @@ class Xineramaproto(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xinit/package.py b/var/spack/repos/builtin/packages/xinit/package.py
index 9f3bc09229..03487e44a2 100644
--- a/var/spack/repos/builtin/packages/xinit/package.py
+++ b/var/spack/repos/builtin/packages/xinit/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xinit(Package):
+class Xinit(AutotoolsPackage):
"""The xinit program is used to start the X Window System server and a
first client program on systems that are not using a display manager
such as xdm."""
@@ -40,9 +40,3 @@ class Xinit(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xinput/package.py b/var/spack/repos/builtin/packages/xinput/package.py
index 3c4fb35503..2a441d545d 100644
--- a/var/spack/repos/builtin/packages/xinput/package.py
+++ b/var/spack/repos/builtin/packages/xinput/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xinput(Package):
+class Xinput(AutotoolsPackage):
"""xinput is a utility to configure and test XInput devices."""
homepage = "http://cgit.freedesktop.org/xorg/app/xinput"
@@ -40,11 +40,8 @@ class Xinput(Package):
depends_on('libxinerama')
depends_on('inputproto@2.1.99.1:', type='build')
+ depends_on('fixesproto', type='build')
+ depends_on('randrproto', type='build')
+ depends_on('xineramaproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkbcomp/package.py b/var/spack/repos/builtin/packages/xkbcomp/package.py
index e6e8875fa7..2385bb75e9 100644
--- a/var/spack/repos/builtin/packages/xkbcomp/package.py
+++ b/var/spack/repos/builtin/packages/xkbcomp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkbcomp(Package):
+class Xkbcomp(AutotoolsPackage):
"""The X Keyboard (XKB) Extension essentially replaces the core protocol
definition of a keyboard. The extension makes it possible to specify
clearly and explicitly most aspects of keyboard behaviour on a per-key
@@ -45,9 +45,3 @@ class Xkbcomp(Package):
depends_on('bison', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkbdata/package.py b/var/spack/repos/builtin/packages/xkbdata/package.py
index fc84631e36..cb35f1ae3a 100644
--- a/var/spack/repos/builtin/packages/xkbdata/package.py
+++ b/var/spack/repos/builtin/packages/xkbdata/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkbdata(Package):
+class Xkbdata(AutotoolsPackage):
"""The XKB data files for the various keyboard models, layouts,
and locales."""
@@ -35,9 +35,3 @@ class Xkbdata(Package):
version('1.0.1', 'a7e0fbc9cc84c621243c777694388064')
depends_on('xkbcomp', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkbevd/package.py b/var/spack/repos/builtin/packages/xkbevd/package.py
index 462d989db2..8ca91494b1 100644
--- a/var/spack/repos/builtin/packages/xkbevd/package.py
+++ b/var/spack/repos/builtin/packages/xkbevd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkbevd(Package):
+class Xkbevd(AutotoolsPackage):
"""XKB event daemon demo."""
homepage = "http://cgit.freedesktop.org/xorg/app/xkbevd"
@@ -39,9 +39,3 @@ class Xkbevd(Package):
depends_on('bison', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkbprint/package.py b/var/spack/repos/builtin/packages/xkbprint/package.py
index dc92ac4126..8d5205843f 100644
--- a/var/spack/repos/builtin/packages/xkbprint/package.py
+++ b/var/spack/repos/builtin/packages/xkbprint/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkbprint(Package):
+class Xkbprint(AutotoolsPackage):
"""xkbprint generates a printable or encapsulated PostScript description
of an XKB keyboard description."""
@@ -40,9 +40,3 @@ class Xkbprint(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkbutils/package.py b/var/spack/repos/builtin/packages/xkbutils/package.py
index a4c6c97578..c4f604407a 100644
--- a/var/spack/repos/builtin/packages/xkbutils/package.py
+++ b/var/spack/repos/builtin/packages/xkbutils/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkbutils(Package):
+class Xkbutils(AutotoolsPackage):
"""xkbutils is a collection of small utilities utilizing the XKeyboard
(XKB) extension to the X11 protocol."""
@@ -42,9 +42,3 @@ class Xkbutils(Package):
depends_on('inputproto', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkeyboard-config/package.py b/var/spack/repos/builtin/packages/xkeyboard-config/package.py
index 3ad7ea197c..5995a7eae7 100644
--- a/var/spack/repos/builtin/packages/xkeyboard-config/package.py
+++ b/var/spack/repos/builtin/packages/xkeyboard-config/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XkeyboardConfig(Package):
+class XkeyboardConfig(AutotoolsPackage):
"""This project provides a consistent, well-structured, frequently
released, open source database of keyboard configuration data. The
project is targeted to XKB-based systems."""
@@ -49,9 +49,3 @@ class XkeyboardConfig(Package):
# gmsgfmt
# perl@5.8.1:
# perl XML::Parser
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xkill/package.py b/var/spack/repos/builtin/packages/xkill/package.py
index 061d756eec..37ee488071 100644
--- a/var/spack/repos/builtin/packages/xkill/package.py
+++ b/var/spack/repos/builtin/packages/xkill/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xkill(Package):
+class Xkill(AutotoolsPackage):
"""xkill is a utility for forcing the X server to close connections to
clients. This program is very dangerous, but is useful for aborting
programs that have displayed undesired windows on a user's screen."""
@@ -41,9 +41,3 @@ class Xkill(Package):
depends_on('xproto@7.0.22:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xload/package.py b/var/spack/repos/builtin/packages/xload/package.py
index 2fc91043b5..cda2ab21a7 100644
--- a/var/spack/repos/builtin/packages/xload/package.py
+++ b/var/spack/repos/builtin/packages/xload/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xload(Package):
+class Xload(AutotoolsPackage):
"""xload displays a periodically updating histogram of the
system load average."""
@@ -42,9 +42,3 @@ class Xload(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xlogo/package.py b/var/spack/repos/builtin/packages/xlogo/package.py
index 77f5bd3639..aca6a47df8 100644
--- a/var/spack/repos/builtin/packages/xlogo/package.py
+++ b/var/spack/repos/builtin/packages/xlogo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xlogo(Package):
+class Xlogo(AutotoolsPackage):
"""The xlogo program simply displays the X Window System logo."""
homepage = "http://cgit.freedesktop.org/xorg/app/xlogo"
@@ -45,9 +45,3 @@ class Xlogo(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xlsatoms/package.py b/var/spack/repos/builtin/packages/xlsatoms/package.py
index 8722b57c8c..b85fac8660 100644
--- a/var/spack/repos/builtin/packages/xlsatoms/package.py
+++ b/var/spack/repos/builtin/packages/xlsatoms/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xlsatoms(Package):
+class Xlsatoms(AutotoolsPackage):
"""xlsatoms lists the interned atoms defined on an X11 server."""
homepage = "http://cgit.freedesktop.org/xorg/app/xlsatoms"
@@ -38,9 +38,3 @@ class Xlsatoms(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xlsclients/package.py b/var/spack/repos/builtin/packages/xlsclients/package.py
index 3714de2706..6deb2c88e8 100644
--- a/var/spack/repos/builtin/packages/xlsclients/package.py
+++ b/var/spack/repos/builtin/packages/xlsclients/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xlsclients(Package):
+class Xlsclients(AutotoolsPackage):
"""xlsclients is a utility for listing information about the client
applications running on a X11 server."""
@@ -39,9 +39,3 @@ class Xlsclients(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xlsfonts/package.py b/var/spack/repos/builtin/packages/xlsfonts/package.py
index 011ca5aa0e..15761e2d9f 100644
--- a/var/spack/repos/builtin/packages/xlsfonts/package.py
+++ b/var/spack/repos/builtin/packages/xlsfonts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xlsfonts(Package):
+class Xlsfonts(AutotoolsPackage):
"""xlsfonts lists fonts available from an X server via the X11
core protocol."""
@@ -39,9 +39,3 @@ class Xlsfonts(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmag/package.py b/var/spack/repos/builtin/packages/xmag/package.py
index 27843299c8..5a8ae6e961 100644
--- a/var/spack/repos/builtin/packages/xmag/package.py
+++ b/var/spack/repos/builtin/packages/xmag/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xmag(Package):
+class Xmag(AutotoolsPackage):
"""xmag displays a magnified snapshot of a portion of an X11 screen."""
homepage = "http://cgit.freedesktop.org/xorg/app/xmag"
@@ -40,9 +40,3 @@ class Xmag(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xman/package.py b/var/spack/repos/builtin/packages/xman/package.py
index 629a457edc..df11504f69 100644
--- a/var/spack/repos/builtin/packages/xman/package.py
+++ b/var/spack/repos/builtin/packages/xman/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xman(Package):
+class Xman(AutotoolsPackage):
"""xman is a graphical manual page browser using the Athena Widgets (Xaw)
toolkit."""
@@ -40,9 +40,3 @@ class Xman(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmessage/package.py b/var/spack/repos/builtin/packages/xmessage/package.py
index 9b2ee5102e..dee5d86e21 100644
--- a/var/spack/repos/builtin/packages/xmessage/package.py
+++ b/var/spack/repos/builtin/packages/xmessage/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xmessage(Package):
+class Xmessage(AutotoolsPackage):
"""xmessage displays a message or query in a window. The user can click
on an "okay" button to dismiss it or can select one of several buttons
to answer a question. xmessage can also exit after a specified time."""
@@ -40,9 +40,3 @@ class Xmessage(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmh/package.py b/var/spack/repos/builtin/packages/xmh/package.py
index cdde63e149..65873360c2 100644
--- a/var/spack/repos/builtin/packages/xmh/package.py
+++ b/var/spack/repos/builtin/packages/xmh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xmh(Package):
+class Xmh(AutotoolsPackage):
"""The xmh program provides a graphical user interface to the
MH Message Handling System. To actually do things with your
mail, it makes calls to the MH package."""
@@ -43,9 +43,3 @@ class Xmh(Package):
depends_on('xbitmaps@1.1.0:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmlto/package.py b/var/spack/repos/builtin/packages/xmlto/package.py
index 0dbc81de32..b1122d8ef6 100644
--- a/var/spack/repos/builtin/packages/xmlto/package.py
+++ b/var/spack/repos/builtin/packages/xmlto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,22 +25,16 @@
from spack import *
-class Xmlto(Package):
+class Xmlto(AutotoolsPackage):
"""Utility xmlto is a simple shell script for converting XML files to various
formats. It serves as easy to use command line frontend to make fine output
without remembering many long options and searching for the syntax of the
backends."""
- homepage = "http://cyberelk.net/tim/software/xmlto/"
- url = "https://fedorahosted.org/releases/x/m/xmlto/xmlto-0.0.28.tar.gz"
+ homepage = "https://pagure.io/xmlto"
+ url = "https://releases.pagure.org/xmlto/xmlto-0.0.28.tar.gz"
version('0.0.28', 'a1fefad9d83499a15576768f60f847c6')
# FIXME: missing a lot of dependencies
depends_on('libxslt')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmodmap/package.py b/var/spack/repos/builtin/packages/xmodmap/package.py
index abe40dbb43..62582df6f2 100644
--- a/var/spack/repos/builtin/packages/xmodmap/package.py
+++ b/var/spack/repos/builtin/packages/xmodmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xmodmap(Package):
+class Xmodmap(AutotoolsPackage):
"""The xmodmap program is used to edit and display the keyboard modifier
map and keymap table that are used by client applications to convert
event keycodes into keysyms. It is usually run from the user's
@@ -42,9 +42,3 @@ class Xmodmap(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xmore/package.py b/var/spack/repos/builtin/packages/xmore/package.py
index 8f8ccd7138..0b76828999 100644
--- a/var/spack/repos/builtin/packages/xmore/package.py
+++ b/var/spack/repos/builtin/packages/xmore/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xmore(Package):
+class Xmore(AutotoolsPackage):
"""xmore - plain text display program for the X Window System."""
homepage = "http://cgit.freedesktop.org/xorg/app/xmore"
@@ -38,9 +38,3 @@ class Xmore(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xorg-cf-files/package.py b/var/spack/repos/builtin/packages/xorg-cf-files/package.py
index c7b22d904f..edeba12f0e 100644
--- a/var/spack/repos/builtin/packages/xorg-cf-files/package.py
+++ b/var/spack/repos/builtin/packages/xorg-cf-files/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XorgCfFiles(Package):
+class XorgCfFiles(AutotoolsPackage):
"""The xorg-cf-files package contains the data files for the imake utility,
defining the known settings for a wide variety of platforms (many of which
have not been verified or tested in over a decade), and for many of the
@@ -37,8 +37,3 @@ class XorgCfFiles(Package):
version('1.0.6', 'c0ce98377c70d95fb48e1bd856109bf8')
depends_on('pkg-config@0.9.0:', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xorg-docs/package.py b/var/spack/repos/builtin/packages/xorg-docs/package.py
index 5c320bba7b..bb67538f0a 100644
--- a/var/spack/repos/builtin/packages/xorg-docs/package.py
+++ b/var/spack/repos/builtin/packages/xorg-docs/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XorgDocs(Package):
+class XorgDocs(AutotoolsPackage):
"""This package provides miscellaneous documentation for the X Window
System that doesn't better fit into other packages.
@@ -40,9 +40,3 @@ class XorgDocs(Package):
depends_on('util-macros', type='build')
depends_on('xorg-sgml-doctools@1.8:', type='build')
depends_on('xmlto', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xorg-gtest/package.py b/var/spack/repos/builtin/packages/xorg-gtest/package.py
index 6978d610d3..594ba2a3bd 100644
--- a/var/spack/repos/builtin/packages/xorg-gtest/package.py
+++ b/var/spack/repos/builtin/packages/xorg-gtest/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XorgGtest(Package):
+class XorgGtest(AutotoolsPackage):
"""Provides a Google Test environment for starting and stopping
a X server for testing purposes."""
@@ -43,9 +43,3 @@ class XorgGtest(Package):
# TODO: may be missing evemu package?
# TODO: what is the difference between xorg-gtest and googletest packages?
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xorg-server/package.py b/var/spack/repos/builtin/packages/xorg-server/package.py
index 9d9b49f9c2..6b616bfe43 100644
--- a/var/spack/repos/builtin/packages/xorg-server/package.py
+++ b/var/spack/repos/builtin/packages/xorg-server/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XorgServer(Package):
+class XorgServer(AutotoolsPackage):
"""X.Org Server is the free and open source implementation of the display
server for the X Window System stewarded by the X.Org Foundation."""
@@ -100,9 +100,3 @@ class XorgServer(Package):
# LIBUDEV="libudev >= 143"
# LIBSELINUX="libselinux >= 2.0.86"
# LIBDBUS="dbus-1 >= 1.0"
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py b/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
index c2e5797efa..1adc06dc41 100644
--- a/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
+++ b/var/spack/repos/builtin/packages/xorg-sgml-doctools/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class XorgSgmlDoctools(Package):
+class XorgSgmlDoctools(AutotoolsPackage):
"""This package provides a common set of SGML entities and XML/CSS style
sheets used in building/formatting the documentation provided in other
X.Org packages."""
@@ -37,9 +37,3 @@ class XorgSgmlDoctools(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xphelloworld/package.py b/var/spack/repos/builtin/packages/xphelloworld/package.py
index 6d445d69be..10f9be36df 100644
--- a/var/spack/repos/builtin/packages/xphelloworld/package.py
+++ b/var/spack/repos/builtin/packages/xphelloworld/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xphelloworld(Package):
+class Xphelloworld(AutotoolsPackage):
"""Xprint sample applications."""
homepage = "http://cgit.freedesktop.org/xorg/app/xphelloworld"
@@ -46,9 +46,3 @@ class Xphelloworld(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xplor-nih/package.py b/var/spack/repos/builtin/packages/xplor-nih/package.py
new file mode 100644
index 0000000000..3be84ebf22
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xplor-nih/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+import os
+
+
+class XplorNih(Package):
+ """XPLOR-NIH is a structure determination program.
+
+ Note: A manual download is required for XPLOR-NIH.
+ Spack will search your current directory for the download file.
+ Alternatively, add this file to a mirror so that Spack can find it.
+ For instructions on how to set up a mirror, see
+ http://spack.readthedocs.io/en/latest/mirrors.html"""
+
+ homepage = "https://nmr.cit.nih.gov/xplor-nih/"
+
+ version('2.45', 'ab3e046604beb0effc89a1adb7bab438')
+
+ depends_on('python', type=('build', 'run'))
+
+ def url_for_version(self, version):
+ return "file://{0}/xplor-nih-{1}-Linux_x86_64.tar.gz".format(os.getcwd(), version)
+
+ def install(self, spec, prefix):
+ install_tree(self.stage.source_path, prefix.bin)
diff --git a/var/spack/repos/builtin/packages/xplsprinters/package.py b/var/spack/repos/builtin/packages/xplsprinters/package.py
index 55de272a33..0757de82ba 100644
--- a/var/spack/repos/builtin/packages/xplsprinters/package.py
+++ b/var/spack/repos/builtin/packages/xplsprinters/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xplsprinters(Package):
+class Xplsprinters(AutotoolsPackage):
"""List Xprint printers."""
homepage = "http://cgit.freedesktop.org/xorg/app/xplsprinters"
@@ -39,9 +39,3 @@ class Xplsprinters(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xpr/package.py b/var/spack/repos/builtin/packages/xpr/package.py
index 669693e084..5d246e957a 100644
--- a/var/spack/repos/builtin/packages/xpr/package.py
+++ b/var/spack/repos/builtin/packages/xpr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xpr(Package):
+class Xpr(AutotoolsPackage):
"""xpr takes as input a window dump file produced by xwd
and formats it for output on various types of printers."""
@@ -40,9 +40,3 @@ class Xpr(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xprehashprinterlist/package.py b/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
index 4578c3c191..65701b180f 100644
--- a/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
+++ b/var/spack/repos/builtin/packages/xprehashprinterlist/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xprehashprinterlist(Package):
+class Xprehashprinterlist(AutotoolsPackage):
"""Rehash list of Xprint printers."""
homepage = "http://cgit.freedesktop.org/xorg/app/xprehashprinterlist"
@@ -38,9 +38,3 @@ class Xprehashprinterlist(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xprop/package.py b/var/spack/repos/builtin/packages/xprop/package.py
index 0e1a591bcb..359ed6d6f1 100644
--- a/var/spack/repos/builtin/packages/xprop/package.py
+++ b/var/spack/repos/builtin/packages/xprop/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xprop(Package):
+class Xprop(AutotoolsPackage):
"""xprop is a command line tool to display and/or set window and font
properties of an X server."""
@@ -39,9 +39,3 @@ class Xprop(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xproto/package.py b/var/spack/repos/builtin/packages/xproto/package.py
index 67074a6993..2396e2966f 100644
--- a/var/spack/repos/builtin/packages/xproto/package.py
+++ b/var/spack/repos/builtin/packages/xproto/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xproto(Package):
+class Xproto(AutotoolsPackage):
"""X Window System Core Protocol.
This package provides the headers and specification documents defining
@@ -36,14 +36,15 @@ class Xproto(Package):
common definitions and porting layer."""
homepage = "http://cgit.freedesktop.org/xorg/proto/x11proto"
- url = "https://www.x.org/archive/individual/proto/xproto-7.0.29.tar.gz"
+ url = "https://www.x.org/archive/individual/proto/xproto-7.0.31.tar.gz"
+ version('7.0.31', '04b925bf9e472c80f9212615cd684f1e')
version('7.0.29', '16a78dd2c5ad73011105c96235f6a0af')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
+ # Installation fails in parallel
+ # See https://github.com/spack/spack/issues/4805
+ make('install', parallel=False)
diff --git a/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py b/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
index e5bfcb8cbc..2f70146e00 100644
--- a/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
+++ b/var/spack/repos/builtin/packages/xproxymanagementprotocol/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xproxymanagementprotocol(Package):
+class Xproxymanagementprotocol(AutotoolsPackage):
"""The Proxy Management Protocol is an ICE based protocol that provides a
way for application servers to easily locate proxy services available to
them."""
@@ -34,8 +34,3 @@ class Xproxymanagementprotocol(Package):
url = "https://www.x.org/archive/individual/proto/xproxymanagementprotocol-1.0.3.tar.gz"
version('1.0.3', 'c4ab05a6174b4e9b6ae5b7cfbb6d718e')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xqilla/package.py b/var/spack/repos/builtin/packages/xqilla/package.py
new file mode 100644
index 0000000000..0c63fa6c3f
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xqilla/package.py
@@ -0,0 +1,56 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Xqilla(AutotoolsPackage):
+ """XQilla is an XQuery and XPath 2 library and command line utility
+ written in C++, implemented on top of the Xerces-C library."""
+
+ homepage = "http://xqilla.sourceforge.net/HomePage"
+ url = "https://downloads.sourceforge.net/project/xqilla/XQilla-2.3.3.tar.gz"
+
+ version('2.3.3', '8ece20348687b6529bb934c17067803c')
+
+ variant('debug', default=False, description='Build a debugging version.')
+ variant('shared', default=True, description='Build shared libraries.')
+
+ depends_on('xerces-c')
+
+ def configure_args(self):
+ args = ['--with-xerces={0}'.format(self.spec['xerces-c'].prefix)]
+
+ if '+shared' in self.spec:
+ args.extend(['--enable-shared=yes',
+ '--enable-static=no'])
+ else:
+ args.extend(['--enable-shared=no',
+ '--enable-static=yes',
+ '--with-pic'])
+
+ if '+debug' in self.spec:
+ args.append('--enable-debug')
+
+ return args
diff --git a/var/spack/repos/builtin/packages/xrandr/package.py b/var/spack/repos/builtin/packages/xrandr/package.py
index 35e21c6047..4aeb34d020 100644
--- a/var/spack/repos/builtin/packages/xrandr/package.py
+++ b/var/spack/repos/builtin/packages/xrandr/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xrandr(Package):
+class Xrandr(AutotoolsPackage):
"""xrandr - primitive command line interface to X11 Resize, Rotate, and
Reflect (RandR) extension."""
@@ -41,9 +41,3 @@ class Xrandr(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xrdb/package.py b/var/spack/repos/builtin/packages/xrdb/package.py
index 93847a19a0..075e04e9dc 100644
--- a/var/spack/repos/builtin/packages/xrdb/package.py
+++ b/var/spack/repos/builtin/packages/xrdb/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xrdb(Package):
+class Xrdb(AutotoolsPackage):
"""xrdb - X server resource database utility."""
homepage = "http://cgit.freedesktop.org/xorg/app/xrdb"
@@ -39,9 +39,3 @@ class Xrdb(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xrefresh/package.py b/var/spack/repos/builtin/packages/xrefresh/package.py
index f99810beea..76a094779e 100644
--- a/var/spack/repos/builtin/packages/xrefresh/package.py
+++ b/var/spack/repos/builtin/packages/xrefresh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xrefresh(Package):
+class Xrefresh(AutotoolsPackage):
"""xrefresh - refresh all or part of an X screen."""
homepage = "http://cgit.freedesktop.org/xorg/app/xrefresh"
@@ -38,9 +38,3 @@ class Xrefresh(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xrootd/package.py b/var/spack/repos/builtin/packages/xrootd/package.py
index db076dbc56..94ee3eda46 100644
--- a/var/spack/repos/builtin/packages/xrootd/package.py
+++ b/var/spack/repos/builtin/packages/xrootd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -26,27 +26,16 @@
from spack import *
-class Xrootd(Package):
+class Xrootd(CMakePackage):
"""The XROOTD project aims at giving high performance, scalable fault
tolerant access to data repositories of many kinds."""
homepage = "http://xrootd.org"
- url = "http://xrootd.org/download/v4.3.0/xrootd-4.3.0.tar.gz"
+ url = "http://xrootd.org/download/v4.6.0/xrootd-4.6.0.tar.gz"
+ version('4.6.0', '5d60aade2d995b68fe0c46896bc4a5d1')
+ version('4.5.0', 'd485df3d4a991e1c35efa4bf9ef663d7')
+ version('4.4.1', '72b0842f802ccc94dede4ac5ab2a589e')
+ version('4.4.0', '58f55e56801d3661d753ff5fd33dbcc9')
version('4.3.0', '39c2fab9f632f35e12ff607ccaf9e16c')
- depends_on('cmake', type='build')
-
- def install(self, spec, prefix):
- options = []
- options.extend(std_cmake_args)
-
- build_directory = join_path(self.stage.path, 'spack-build')
- source_directory = self.stage.source_path
-
- if '+debug' in spec:
- options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
-
- with working_dir(build_directory, create=True):
- cmake(source_directory, *options)
- make()
- make("install")
+ depends_on('cmake@2.6:', type='build')
diff --git a/var/spack/repos/builtin/packages/xrx/package.py b/var/spack/repos/builtin/packages/xrx/package.py
index 4457c2f164..fba6a88df1 100644
--- a/var/spack/repos/builtin/packages/xrx/package.py
+++ b/var/spack/repos/builtin/packages/xrx/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xrx(Package):
+class Xrx(AutotoolsPackage):
"""The remote execution (RX) service specifies a MIME format for invoking
applications remotely, for example via a World Wide Web browser. This
RX format specifies a syntax for listing network services required by
@@ -49,9 +49,3 @@ class Xrx(Package):
depends_on('xproxymanagementprotocol', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsbench/package.py b/var/spack/repos/builtin/packages/xsbench/package.py
new file mode 100644
index 0000000000..345d566bc0
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xsbench/package.py
@@ -0,0 +1,66 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the LICENSE file for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Xsbench(MakefilePackage):
+ """XSBench is a mini-app representing a key computational
+ kernel of the Monte Carlo neutronics application OpenMC.
+ A full explanation of the theory and purpose of XSBench
+ is provided in docs/XSBench_Theory.pdf."""
+
+ homepage = "https://github.com/ANL-CESAR/XSBench/"
+ url = "https://github.com/ANL-CESAR/XSBench/archive/v13.tar.gz"
+
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ version('14', '94d5d28eb031fd4ef35507c9c1862169')
+ version('13', '72a92232d2f5777fb52f5ea4082aff37')
+
+ variant('mpi', default=False, description='Build with MPI support')
+
+ depends_on('mpi', when='+mpi')
+
+ build_directory = 'src'
+
+ @property
+ def build_targets(self):
+
+ targets = []
+
+ cflags = '-std=gnu99'
+ if '+mpi' in self.spec:
+ targets.append('CC={0}'.format(self.spec['mpi'].mpicc))
+
+ cflags += ' ' + self.compiler.openmp_flag
+ targets.append('CFLAGS={0}'.format(cflags))
+ targets.append('LDFLAGS=-lm')
+
+ return targets
+
+ def install(self, spec, prefix):
+ mkdir(prefix.bin)
+ install('src/XSBench', prefix.bin)
diff --git a/var/spack/repos/builtin/packages/xscope/package.py b/var/spack/repos/builtin/packages/xscope/package.py
index cf33c9767e..c851fcf5f3 100644
--- a/var/spack/repos/builtin/packages/xscope/package.py
+++ b/var/spack/repos/builtin/packages/xscope/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xscope(Package):
+class Xscope(AutotoolsPackage):
"""XSCOPE -- a program to monitor X11/Client conversations."""
homepage = "http://cgit.freedesktop.org/xorg/app/xscope"
@@ -37,9 +37,3 @@ class Xscope(Package):
depends_on('xtrans', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsdk/package.py b/var/spack/repos/builtin/packages/xsdk/package.py
new file mode 100644
index 0000000000..901613f77d
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xsdk/package.py
@@ -0,0 +1,84 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+import os
+from spack import *
+
+
+class Xsdk(Package):
+ """Xsdk is a suite of Department of Energy (DOE) packages for numerical
+ simulation. This is a Spack bundle package that installs the xSDK
+ packages
+ """
+
+ homepage = "http://xsdk.info"
+
+ # Dummy url since Spack complains if I don't list something, will be
+ # removed when metapackage is available
+ url = 'https://bitbucket.org/saws/saws/get/master.tar.gz'
+
+ version('develop', 'a52dc710c744afa0b71429b8ec9425bc')
+ version('xsdk-0.2.0', 'a52dc710c744afa0b71429b8ec9425bc')
+
+ depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0')
+ depends_on('hypre@develop~internal-superlu', when='@develop')
+
+ depends_on('superlu-dist@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('superlu-dist@develop', when='@develop')
+
+ depends_on('trilinos@xsdk-0.2.0+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
+ when='@xsdk-0.2.0')
+ depends_on('trilinos@develop+xsdkflags+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra~ifpack2~zoltan2~amesos2~exodus',
+ when='@develop')
+
+ depends_on('petsc@xsdk-0.2.0+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64',
+ when='@xsdk-0.2.0')
+ depends_on('petsc@develop+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64',
+ when='@develop')
+
+ depends_on('pflotran@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('pflotran@develop', when='@develop')
+
+ depends_on('alquimia@xsdk-0.2.0', when='@xsdk-0.2.0')
+ depends_on('alquimia@develop', when='@develop')
+
+ # xSDKTrilinos depends on the version of Trilinos built with
+ # +tpetra which is turned off for faster xSDK
+ # depends_on('xsdktrilinos@xsdk-0.2.0', when='@xsdk-0.2.0')
+ # depends_on('xsdktrilinos@develop', when='@develop')
+
+ variant('debug', default=False, description='Compile in debug mode')
+
+ # How do we propagate debug flag to all depends on packages ?
+ # If I just do spack install xsdk+debug will that propogate it down?
+
+ # Dummy install for now, will be removed when metapackage is available
+ def install(self, spec, prefix):
+ # Prevent the error message
+ # ==> Error: Install failed for xsdk. Nothing was installed!
+ # ==> Error: Installation process had nonzero exit code : 256
+ with open(os.path.join(spec.prefix, 'bundle-package.txt'), 'w') as out:
+ out.write('This is a bundle\n')
+ out.close()
diff --git a/var/spack/repos/builtin/packages/xsdktrilinos/package.py b/var/spack/repos/builtin/packages/xsdktrilinos/package.py
index ea49054435..cc75589937 100644
--- a/var/spack/repos/builtin/packages/xsdktrilinos/package.py
+++ b/var/spack/repos/builtin/packages/xsdktrilinos/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,33 +32,36 @@ class Xsdktrilinos(CMakePackage):
Trilinos.
"""
homepage = "https://trilinos.org/"
- base_url = "https://github.com/trilinos/xSDKTrilinos/archive"
+ url = "https://github.com/trilinos/xSDKTrilinos/archive/trilinos-release-12-8-1.tar.gz"
version('develop', git='https://github.com/trilinos/xSDKTrilinos.git', tag='master')
+ version('xsdk-0.2.0', git='https://github.com/trilinos/xSDKTrilinos.git', tag='xsdk-0.2.0')
version('12.8.1', '9cc338ded17d1e10ea6c0dc18b22dcd4')
version('12.6.4', '44c4c54ccbac73bb8939f68797b9454a')
- def url_for_version(self, version):
- return '%s/trilinos-release-%s.tar.gz' % \
- (Xsdktrilinos.base_url, version.dashed)
-
variant('hypre', default=True,
description='Compile with Hypre preconditioner')
variant('petsc', default=True,
description='Compile with PETSc solvers')
variant('shared', default=True,
description='Enables the build of shared libraries')
- variant('debug', default=False,
- description='Builds a debug version of the libraries')
# MPI related dependencies
depends_on('mpi')
depends_on('hypre~internal-superlu', when='+hypre')
- depends_on('petsc+mpi~complex', when='+petsc')
+ depends_on('hypre@xsdk-0.2.0~internal-superlu', when='@xsdk-0.2.0+hypre')
+ depends_on('hypre@develop~internal-superlu', when='@develop+hypre')
+ depends_on('petsc@xsdk-0.2.0+mpi~complex', when='@xsdk-0.2.0+petsc')
+ depends_on('petsc@develop+mpi~complex', when='@develop+petsc')
depends_on('trilinos@12.6.4', when='@12.6.4')
depends_on('trilinos@12.8.1', when='@12.8.1')
+ depends_on('trilinos@xsdk-0.2.0', when='@xsdk-0.2.0')
depends_on('trilinos@develop', when='@develop')
+ def url_for_version(self, version):
+ url = "https://github.com/trilinos/xSDKTrilinos/archive/trilinos-release-{0}.tar.gz"
+ return url.format(version.dashed)
+
def cmake_args(self):
spec = self.spec
@@ -70,8 +73,6 @@ class Xsdktrilinos(CMakePackage):
'-DxSDKTrilinos_ENABLE_TESTS:BOOL=ON',
'-DxSDKTrilinos_ENABLE_EXAMPLES:BOOL=ON',
'-DTrilinos_INSTALL_DIR=%s' % spec['trilinos'].prefix,
- '-DCMAKE_BUILD_TYPE:STRING=%s' % (
- 'DEBUG' if '+debug' in spec else 'RELEASE'),
'-DBUILD_SHARED_LIBS:BOOL=%s' % (
'ON' if '+shared' in spec else 'OFF'),
'-DTPL_ENABLE_MPI:BOOL=ON',
diff --git a/var/spack/repos/builtin/packages/xset/package.py b/var/spack/repos/builtin/packages/xset/package.py
index 462bea8cfe..8488ded70c 100644
--- a/var/spack/repos/builtin/packages/xset/package.py
+++ b/var/spack/repos/builtin/packages/xset/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xset(Package):
+class Xset(AutotoolsPackage):
"""User preference utility for X."""
homepage = "http://cgit.freedesktop.org/xorg/app/xset"
@@ -39,9 +39,3 @@ class Xset(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsetmode/package.py b/var/spack/repos/builtin/packages/xsetmode/package.py
index f05fd0f123..e4d9b1a6a0 100644
--- a/var/spack/repos/builtin/packages/xsetmode/package.py
+++ b/var/spack/repos/builtin/packages/xsetmode/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xsetmode(Package):
+class Xsetmode(AutotoolsPackage):
"""Set the mode for an X Input device."""
homepage = "http://cgit.freedesktop.org/xorg/app/xsetmode"
@@ -38,9 +38,3 @@ class Xsetmode(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsetpointer/package.py b/var/spack/repos/builtin/packages/xsetpointer/package.py
index e9bf2fc9fe..296dae801b 100644
--- a/var/spack/repos/builtin/packages/xsetpointer/package.py
+++ b/var/spack/repos/builtin/packages/xsetpointer/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xsetpointer(Package):
+class Xsetpointer(AutotoolsPackage):
"""Set an X Input device as the main pointer."""
homepage = "http://cgit.freedesktop.org/xorg/app/xsetpointer"
@@ -39,9 +39,3 @@ class Xsetpointer(Package):
depends_on('inputproto@1.4:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsetroot/package.py b/var/spack/repos/builtin/packages/xsetroot/package.py
index 3e62d41e9b..1468aa7e2e 100644
--- a/var/spack/repos/builtin/packages/xsetroot/package.py
+++ b/var/spack/repos/builtin/packages/xsetroot/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xsetroot(Package):
+class Xsetroot(AutotoolsPackage):
"""xsetroot - root window parameter setting utility for X."""
homepage = "http://cgit.freedesktop.org/xorg/app/xsetroot"
@@ -41,9 +41,3 @@ class Xsetroot(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xsm/package.py b/var/spack/repos/builtin/packages/xsm/package.py
index 9d9c896365..0bbd3ec805 100644
--- a/var/spack/repos/builtin/packages/xsm/package.py
+++ b/var/spack/repos/builtin/packages/xsm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xsm(Package):
+class Xsm(AutotoolsPackage):
"""X Session Manager."""
homepage = "http://cgit.freedesktop.org/xorg/app/xsm"
@@ -41,9 +41,3 @@ class Xsm(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xstdcmap/package.py b/var/spack/repos/builtin/packages/xstdcmap/package.py
index bb19bdff1a..9b8d4a1641 100644
--- a/var/spack/repos/builtin/packages/xstdcmap/package.py
+++ b/var/spack/repos/builtin/packages/xstdcmap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xstdcmap(Package):
+class Xstdcmap(AutotoolsPackage):
"""The xstdcmap utility can be used to selectively define standard colormap
properties. It is intended to be run from a user's X startup script to
create standard colormap definitions in order to facilitate sharing of
@@ -42,9 +42,3 @@ class Xstdcmap(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xterm/package.py b/var/spack/repos/builtin/packages/xterm/package.py
new file mode 100644
index 0000000000..8c24931d7a
--- /dev/null
+++ b/var/spack/repos/builtin/packages/xterm/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Xterm(AutotoolsPackage):
+ """The xterm program is a terminal emulator for the X Window System. It
+ provides DEC VT102 and Tektronix 4014 compatible terminals for programs
+ that can't use the window system directly."""
+
+ homepage = "http://invisible-island.net/xterm/"
+ url = "http://invisible-island.net/xterm/xterm-327.tgz"
+
+ version('327', '3c32e931adcad44e64e57892e75d9e02')
+
+ depends_on('libxft')
+ depends_on('fontconfig')
+ depends_on('libxaw')
+ depends_on('libxmu')
+ depends_on('libxt')
+ depends_on('libx11')
+ depends_on('libxinerama')
+ depends_on('libxpm')
+ depends_on('libice')
+ depends_on('freetype')
+ depends_on('libxrender')
+ depends_on('libxext')
+ depends_on('libsm')
+ depends_on('libxcb')
+ depends_on('libxau')
+ depends_on('bzip2')
+
+ depends_on('pkg-config', type='build')
diff --git a/var/spack/repos/builtin/packages/xtrans/package.py b/var/spack/repos/builtin/packages/xtrans/package.py
index ed46059d9d..186e3587e6 100644
--- a/var/spack/repos/builtin/packages/xtrans/package.py
+++ b/var/spack/repos/builtin/packages/xtrans/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xtrans(Package):
+class Xtrans(AutotoolsPackage):
"""xtrans is a library of code that is shared among various X packages to
handle network protocol transport in a modular fashion, allowing a
single place to add new transport types. It is used by the X server,
@@ -38,8 +38,3 @@ class Xtrans(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make('install')
diff --git a/var/spack/repos/builtin/packages/xtrap/package.py b/var/spack/repos/builtin/packages/xtrap/package.py
index 405ec2f848..ef297e9e6d 100644
--- a/var/spack/repos/builtin/packages/xtrap/package.py
+++ b/var/spack/repos/builtin/packages/xtrap/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xtrap(Package):
+class Xtrap(AutotoolsPackage):
"""XTrap sample clients."""
homepage = "http://cgit.freedesktop.org/xorg/app/xtrap"
@@ -38,9 +38,3 @@ class Xtrap(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xts/package.py b/var/spack/repos/builtin/packages/xts/package.py
index c3993cf391..985a35bd5a 100644
--- a/var/spack/repos/builtin/packages/xts/package.py
+++ b/var/spack/repos/builtin/packages/xts/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xts(Package):
+class Xts(AutotoolsPackage):
"""This is a revamped version of X Test Suite (XTS) which removes some of
the ugliness of building and running the tests."""
@@ -50,11 +50,5 @@ class Xts(Package):
depends_on('xset', type='build')
depends_on('xdpyinfo', type='build')
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- # FIXME: Crashes during compilation
- # error: redeclaration of enumerator 'XawChainTop'
-
- make()
- make('install')
+ # FIXME: Crashes during compilation
+ # error: redeclaration of enumerator 'XawChainTop'
diff --git a/var/spack/repos/builtin/packages/xvidtune/package.py b/var/spack/repos/builtin/packages/xvidtune/package.py
index ac5352df5f..573c027627 100644
--- a/var/spack/repos/builtin/packages/xvidtune/package.py
+++ b/var/spack/repos/builtin/packages/xvidtune/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xvidtune(Package):
+class Xvidtune(AutotoolsPackage):
"""xvidtune is a client interface to the X server video mode
extension (XFree86-VidModeExtension)."""
@@ -42,9 +42,3 @@ class Xvidtune(Package):
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xvinfo/package.py b/var/spack/repos/builtin/packages/xvinfo/package.py
index 359f1f23de..358573dcbe 100644
--- a/var/spack/repos/builtin/packages/xvinfo/package.py
+++ b/var/spack/repos/builtin/packages/xvinfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xvinfo(Package):
+class Xvinfo(AutotoolsPackage):
"""xvinfo prints out the capabilities of any video adaptors associated
with the display that are accessible through the X-Video extension."""
@@ -40,9 +40,3 @@ class Xvinfo(Package):
depends_on('xproto@7.0.25:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xwd/package.py b/var/spack/repos/builtin/packages/xwd/package.py
index d1f9ee1dfb..0b992365be 100644
--- a/var/spack/repos/builtin/packages/xwd/package.py
+++ b/var/spack/repos/builtin/packages/xwd/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xwd(Package):
+class Xwd(AutotoolsPackage):
"""xwd - dump an image of an X window."""
homepage = "http://cgit.freedesktop.org/xorg/app/xwd"
@@ -39,9 +39,3 @@ class Xwd(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xwininfo/package.py b/var/spack/repos/builtin/packages/xwininfo/package.py
index bba97ca671..bba7088166 100644
--- a/var/spack/repos/builtin/packages/xwininfo/package.py
+++ b/var/spack/repos/builtin/packages/xwininfo/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xwininfo(Package):
+class Xwininfo(AutotoolsPackage):
"""xwininfo prints information about windows on an X server. Various
information is displayed depending on which options are selected."""
@@ -40,9 +40,3 @@ class Xwininfo(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xwud/package.py b/var/spack/repos/builtin/packages/xwud/package.py
index a30d55b7c6..b4b92cd214 100644
--- a/var/spack/repos/builtin/packages/xwud/package.py
+++ b/var/spack/repos/builtin/packages/xwud/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Xwud(Package):
+class Xwud(AutotoolsPackage):
"""xwud allows X users to display in a window an image saved in a
specially formatted dump file, such as produced by xwd."""
@@ -39,9 +39,3 @@ class Xwud(Package):
depends_on('xproto@7.0.17:', type='build')
depends_on('pkg-config@0.9.0:', type='build')
depends_on('util-macros', type='build')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- make('install')
diff --git a/var/spack/repos/builtin/packages/xz/package.py b/var/spack/repos/builtin/packages/xz/package.py
index 8b0609f50e..04d91c76ac 100644
--- a/var/spack/repos/builtin/packages/xz/package.py
+++ b/var/spack/repos/builtin/packages/xz/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,21 +25,15 @@
from spack import *
-class Xz(Package):
+class Xz(AutotoolsPackage):
"""XZ Utils is free general-purpose data compression software with
high compression ratio. XZ Utils were written for POSIX-like
systems, but also work on some not-so-POSIX systems. XZ Utils are
the successor to LZMA Utils."""
homepage = "http://tukaani.org/xz/"
url = "http://tukaani.org/xz/xz-5.2.0.tar.bz2"
+ list_url = "http://tukaani.org/xz/old.html"
- version('5.2.0', '867cc8611760240ebf3440bd6e170bb9')
+ version('5.2.3', '1592e7ca3eece099b03b35f4d9179e7c')
version('5.2.2', 'f90c9a0c8b259aee2234c4e0d7fd70af')
-
- def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
-
- make()
- if self.run_tests:
- make('check')
- make('install')
+ version('5.2.0', '867cc8611760240ebf3440bd6e170bb9')
diff --git a/var/spack/repos/builtin/packages/yajl/package.py b/var/spack/repos/builtin/packages/yajl/package.py
new file mode 100644
index 0000000000..604144c6e5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/yajl/package.py
@@ -0,0 +1,35 @@
+##############################################################################
+# Copyright (c) 2017, Los Alamos National Security, LLC
+# Produced at the Los Alamos National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Yajl(CMakePackage):
+ """Yet Another JSON Library (YAJL)"""
+
+ homepage = "http://lloyd.github.io/yajl/"
+ url = "https://github.com/lloyd/yajl/archive/2.1.0.zip"
+
+ version('develop', git='https://github.com/lloyd/yajl.git', branch='master')
+ version('2.1.0', '5eb9c16539bf354b937fcb20e263d1eb')
diff --git a/var/spack/repos/builtin/packages/yaml-cpp/package.py b/var/spack/repos/builtin/packages/yaml-cpp/package.py
index 0ced7c89fc..aaf6ab0a53 100644
--- a/var/spack/repos/builtin/packages/yaml-cpp/package.py
+++ b/var/spack/repos/builtin/packages/yaml-cpp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -32,8 +32,11 @@ class YamlCpp(CMakePackage):
url = "https://github.com/jbeder/yaml-cpp/archive/yaml-cpp-0.5.3.tar.gz"
version('0.5.3', '4e47733d98266e46a1a73ae0a72954eb')
+ version('develop', git='https://github.com/jbeder/yaml-cpp', branch='master')
- variant('fpic', default=False,
+ variant('shared', default=True,
+ description='Enable build of shared libraries')
+ variant('pic', default=True,
description='Build with position independent code')
depends_on('boost', when='@:0.5.3')
@@ -42,9 +45,11 @@ class YamlCpp(CMakePackage):
spec = self.spec
options = []
- if '+fpic' in spec:
- options.extend([
- '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true'
- ])
+ options.extend([
+ '-DBUILD_SHARED_LIBS:BOOL=%s' % (
+ 'ON' if '+shared' in spec else 'OFF'),
+ '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=%s' % (
+ 'ON' if '+pic' in spec else 'OFF'),
+ ])
return options
diff --git a/var/spack/repos/builtin/packages/yasm/package.py b/var/spack/repos/builtin/packages/yasm/package.py
index f14bdbcee7..0d35e41e04 100644
--- a/var/spack/repos/builtin/packages/yasm/package.py
+++ b/var/spack/repos/builtin/packages/yasm/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Yasm(Package):
+class Yasm(AutotoolsPackage):
"""Yasm is a complete rewrite of the NASM-2.11.06 assembler. It
supports the x86 and AMD64 instruction sets, accepts NASM and
GAS assembler syntaxes and outputs binary, ELF32 and ELF64
@@ -34,8 +34,3 @@ class Yasm(Package):
url = "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz"
version('1.3.0', 'fc9e586751ff789b34b1f21d572d96af')
-
- def install(self, spec, prefix):
- configure("--prefix=%s" % prefix)
- make()
- make("install")
diff --git a/var/spack/repos/builtin/packages/yorick/package.py b/var/spack/repos/builtin/packages/yorick/package.py
index 52a4d8787d..c30f9ca4ed 100644
--- a/var/spack/repos/builtin/packages/yorick/package.py
+++ b/var/spack/repos/builtin/packages/yorick/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -31,7 +31,7 @@ import glob
class Yorick(Package):
"""Yorick is an interpreted programming language for scientific simulations
or calculations, postprocessing or steering large simulation codes,
- interactive scientific graphics, and reading, writing, or translating
+ interactive scientific graphics, and reading, writing, or translating
files of numbers. Yorick includes an interactive graphics package, and a
binary file package capable of translating to and from the raw numeric
formats of all modern computers. Yorick is written in ANSI C and runs on
@@ -39,9 +39,9 @@ class Yorick(Package):
"""
homepage = "http://dhmunro.github.io/yorick-doc/"
- url = "https://github.com/dhmunro/yorick/archive/y_2_2_04.tar.gz"
+ url = "https://github.com/dhmunro/yorick/archive/y_2_2_04.tar.gz"
- version('2.2.04', md5='1b5b0da6ad81b2d9dba64d991ec17939')
+ version('2.2.04', '1b5b0da6ad81b2d9dba64d991ec17939')
version('master', branch='master',
git='https://github.com/dhmunro/yorick.git')
version('f90-plugin', branch='f90-plugin',
@@ -51,6 +51,12 @@ class Yorick(Package):
depends_on('libx11', when='+X')
+ extendable = True
+
+ def url_for_version(self, version):
+ url = "https://github.com/dhmunro/yorick/archive/y_{0}.tar.gz"
+ return url.format(version.underscored)
+
def install(self, spec, prefix):
os.environ['FORTRAN_LINKAGE'] = '-Df_linkage'
diff --git a/var/spack/repos/builtin/packages/z3/package.py b/var/spack/repos/builtin/packages/z3/package.py
new file mode 100644
index 0000000000..2234b7e596
--- /dev/null
+++ b/var/spack/repos/builtin/packages/z3/package.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+
+from spack import *
+
+
+class Z3(MakefilePackage):
+ """Z3 is a theorem prover from Microsoft Research.
+ It is licensed under the MIT license."""
+
+ homepage = "https://github.com/Z3Prover/z3/wiki"
+ url = "https://github.com/Z3Prover/z3/archive/z3-4.5.0.tar.gz"
+
+ version('4.5.0', 'f332befa0d66d81818a06279a0973e25')
+ version('4.4.1', '4336a9df24f090e711c6d42fd4e2b1fc')
+ version('4.4.0', '2bcbb0381cc1572cace99aac8af08990')
+
+ phases = ['bootstrap', 'build', 'install']
+
+ variant('python', default=False, description='Enable python support')
+ depends_on('python', when='+python')
+
+ build_directory = 'build'
+
+ def configure_args(self):
+ spec = self.spec
+ return [
+ '--python' if '+python' in spec else ''
+ ]
+
+ def bootstrap(self, spec, prefix):
+ options = ['--prefix={0}'.format(prefix)] + self.configure_args()
+ spec['python'].command('scripts/mk_make.py', *options)
diff --git a/var/spack/repos/builtin/packages/zeromq/package.py b/var/spack/repos/builtin/packages/zeromq/package.py
index cafd3c2125..f48e868891 100644
--- a/var/spack/repos/builtin/packages/zeromq/package.py
+++ b/var/spack/repos/builtin/packages/zeromq/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,11 +25,15 @@
from spack import *
-class Zeromq(Package):
+class Zeromq(AutotoolsPackage):
""" The ZMQ networking/concurrency library and core API """
homepage = "http://zguide.zeromq.org/"
url = "http://download.zeromq.org/zeromq-4.1.2.tar.gz"
+ version('develop', branch='master',
+ git='https://github.com/zeromq/libzmq.git')
+ version('4.2.2', '52499909b29604c1e47a86f1cb6a9115',
+ url='https://github.com/zeromq/libzmq/releases/download/v4.2.2/zeromq-4.2.2.tar.gz')
version('4.1.4', 'a611ecc93fffeb6d058c0e6edf4ad4fb')
version('4.1.2', '159c0c56a895472f02668e692d122685')
version('4.1.1', '0a4b44aa085644f25c177f79dc13f253')
@@ -40,8 +44,19 @@ class Zeromq(Package):
depends_on("libsodium")
depends_on("libsodium@:1.0.3", when='@:4.1.2')
- def install(self, spec, prefix):
- configure("--with-libsodium", "--prefix=%s" % prefix)
+ depends_on('autoconf', type='build', when='@develop')
+ depends_on('automake', type='build', when='@develop')
+ depends_on('libtool', type='build', when='@develop')
+ depends_on('pkg-config', type='build', when='@develop')
- make()
- make("install")
+ @when('@develop')
+ def autoreconf(self, spec, prefix):
+ bash = which('bash')
+ bash('./autogen.sh')
+
+ def configure_args(self):
+ config_args = ['--with-libsodium']
+ if 'clang' in self.compiler.cc:
+ config_args.append("CFLAGS=-Wno-gnu")
+ config_args.append("CXXFLAGS=-Wno-gnu")
+ return config_args
diff --git a/var/spack/repos/builtin/packages/zfp/package.py b/var/spack/repos/builtin/packages/zfp/package.py
index a898ab03d3..704dc9dc72 100644
--- a/var/spack/repos/builtin/packages/zfp/package.py
+++ b/var/spack/repos/builtin/packages/zfp/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,29 +25,63 @@
from spack import *
-class Zfp(Package):
+class Zfp(MakefilePackage):
"""zfp is an open source C library for compressed floating-point arrays
that supports very high throughput read and write random acces,
target error bounds or bit rates. Although bit-for-bit lossless
compression is not always possible, zfp is usually accurate to
within machine epsilon in near-lossless mode, and is often orders
- of magnitude more accurate than other lossy compressors.
-
+ of magnitude more accurate than other lossy compressors. Versions
+ of zfp 0.5.1 or newer also support compression of integer data.
"""
- homepage = "http://computation.llnl.gov/projects/floating-point-compression"
- url = "http://computation.llnl.gov/projects/floating-point-compression/download/zfp-0.5.0.tar.gz"
+ homepage = 'http://computation.llnl.gov/projects/floating-point-compression'
+ url = 'http://computation.llnl.gov/projects/floating-point-compression/download/zfp-0.5.1.tar.gz'
+ version('0.5.1', '0ed7059a9b480635e0dd33745e213d17')
version('0.5.0', '2ab29a852e65ad85aae38925c5003654')
+ variant('bsws',
+ default='64',
+ values=('8', '16', '32', '64'),
+ multi=False,
+ description='Bit stream word size: use smaller for finer ' \
+ 'rate granularity. Use 8 for H5Z-ZFP filter.')
+
+ variant('shared', default=True,
+ description='Build shared versions of the library')
+
+ def edit(self, spec, prefix):
+ config_file = FileFilter('Config')
+ config_file.filter(
+ '^\s*#\s*DEFS\s*\+=\s*-DBIT_STREAM_WORD_TYPE\s*=\s*uint8',
+ 'DEFS += -DBIT_STREAM_WORD_TYPE=uint%s' %
+ spec.variants['bsws'].value)
+
+ def build(self, spec, prefix):
+ with working_dir('src'):
+ if '~shared' in spec:
+ make('static')
+ else:
+ make('shared')
+
def install(self, spec, prefix):
- make("shared")
+ incdir = 'include' if spec.satisfies('@0.5.1:') else 'inc'
- # No install provided
+ # Note: ZFP package does not provide an install target
mkdirp(prefix.lib)
mkdirp(prefix.include)
- install('lib/libzfp.so', prefix.lib)
- install('inc/zfp.h', prefix.include)
- install('inc/types.h', prefix.include)
- install('inc/bitstream.h', prefix.include)
- install('inc/system.h', prefix.include)
+ # Note: ZFP package builds .so files even on OSX
+ if '~shared' in spec:
+ install('lib/libzfp.a', prefix.lib)
+ else:
+ install('lib/libzfp.so', prefix.lib)
+ install('%s/zfp.h' % incdir, prefix.include)
+ install('%s/bitstream.h' % incdir, prefix.include)
+ if spec.satisfies('@0.5.1:'):
+ mkdirp('%s/zfp' % prefix.include)
+ install('%s/zfp/system.h' % incdir, '%s/zfp' % prefix.include)
+ install('%s/zfp/types.h' % incdir, '%s/zfp' % prefix.include)
+ else:
+ install('%s/types.h' % incdir, prefix.include)
+ install('%s/system.h' % incdir, prefix.include)
diff --git a/var/spack/repos/builtin/packages/zip/package.py b/var/spack/repos/builtin/packages/zip/package.py
new file mode 100644
index 0000000000..255f254dee
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zip/package.py
@@ -0,0 +1,46 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Zip(MakefilePackage):
+ """Zip is a compression and file packaging/archive utility."""
+
+ homepage = 'http://www.info-zip.org/Zip.html'
+ url = 'http://downloads.sourceforge.net/infozip/zip30.tar.gz'
+
+ version('3.0', '7b74551e63f8ee6aab6fbc86676c0d37')
+
+ depends_on('bzip2')
+
+ def url_for_version(self, version):
+ return 'http://downloads.sourceforge.net/infozip/zip{0}.tar.gz'.format(version.joined)
+
+ make_args = ['-f', 'unix/Makefile']
+ build_targets = make_args + ['generic']
+
+ @property
+ def install_targets(self):
+ return self.make_args + ['prefix={0}'.format(self.prefix), 'install']
diff --git a/var/spack/repos/builtin/packages/zlib/package.py b/var/spack/repos/builtin/packages/zlib/package.py
index ea758e0188..4898bf2b77 100644
--- a/var/spack/repos/builtin/packages/zlib/package.py
+++ b/var/spack/repos/builtin/packages/zlib/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,22 +25,51 @@
from spack import *
-class Zlib(AutotoolsPackage):
+# Although zlib comes with a configure script, it does not use Autotools
+# The AutotoolsPackage causes zlib to fail to build with PGI
+class Zlib(Package):
"""A free, general-purpose, legally unencumbered lossless
data-compression library."""
homepage = "http://zlib.net"
- url = "http://zlib.net/fossils/zlib-1.2.10.tar.gz"
+ # URL must remain http:// so Spack can bootstrap curl
+ url = "http://zlib.net/fossils/zlib-1.2.11.tar.gz"
- version('1.2.10', 'd9794246f853d15ce0fcbf79b9a3cf13')
- # author had this to say about 1.2.9....
- # Due to the bug fixes, any installations of 1.2.9 should be immediately
- # replaced with 1.2.10.
+ version('1.2.11', '1c9f62f0778697a09d36121ead88e08e')
+ # Due to the bug fixes, any installations of 1.2.9 or 1.2.10 should be
+ # immediately replaced with 1.2.11.
version('1.2.8', '44d667c142d7cda120332623eab69f40')
+ version('1.2.3', 'debc62758716a169df9f62e6ab2bc634')
variant('pic', default=True,
description='Produce position-independent code (for shared libs)')
+ variant('shared', default=True,
+ description='Enables the build of shared libraries.')
+ variant('optimize', default=True,
+ description='Enable -O2 for a more optimized lib')
+
+ patch('w_patch.patch', when="@1.2.11%cce")
+
+ @property
+ def libs(self):
+ shared = '+shared' in self.spec
+ return find_libraries(
+ ['libz'], root=self.prefix, recurse=True, shared=shared
+ )
def setup_environment(self, spack_env, run_env):
if '+pic' in self.spec:
- spack_env.set('CFLAGS', self.compiler.pic_flag)
+ spack_env.append_flags('CFLAGS', self.compiler.pic_flag)
+ if '+optimize' in self.spec:
+ spack_env.append_flags('CFLAGS', '-O2')
+
+ def install(self, spec, prefix):
+ config_args = []
+ if '~shared' in spec:
+ config_args.append('--static')
+ configure('--prefix={0}'.format(prefix), *config_args)
+
+ make()
+ if self.run_tests:
+ make('check')
+ make('install')
diff --git a/var/spack/repos/builtin/packages/zlib/w_patch.patch b/var/spack/repos/builtin/packages/zlib/w_patch.patch
new file mode 100644
index 0000000000..756cff6a78
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zlib/w_patch.patch
@@ -0,0 +1,13 @@
+diff --git a/configure b/configure
+index e974d1f..ed26a63 100755
+--- a/configure
++++ b/configure
+@@ -409,7 +409,7 @@ EOF
+ if test $shared -eq 1; then
+ echo Checking for shared library support... | tee -a configure.log
+ # we must test in two steps (cc then ld), required at least on SunOS 4.x
+- if try $CC -w -c $SFLAGS $test.c &&
++ if try $CC -c $SFLAGS $test.c &&
+ try $LDSHARED $SFLAGS -o $test$shared_ext $test.o; then
+ echo Building shared library $SHAREDLIBV with $CC. | tee -a configure.log
+ elif test -z "$old_cc" -a -z "$old_cflags"; then
diff --git a/var/spack/repos/builtin/packages/zoltan/package.py b/var/spack/repos/builtin/packages/zoltan/package.py
index 8d4dd321b0..eb393d3990 100644
--- a/var/spack/repos/builtin/packages/zoltan/package.py
+++ b/var/spack/repos/builtin/packages/zoltan/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -41,7 +41,7 @@ class Zoltan(Package):
"""
homepage = "http://www.cs.sandia.gov/zoltan"
- base_url = "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions"
+ url = "http://www.cs.sandia.gov/~kddevin/Zoltan_Distributions/zoltan_distrib_v3.83.tar.gz"
version('3.83', '1ff1bc93f91e12f2c533ddb01f2c095f')
version('3.8', '9d8fba8a990896881b85351d4327c4a9')
@@ -56,9 +56,6 @@ class Zoltan(Package):
depends_on('mpi', when='+mpi')
- def url_for_version(self, version):
- return '%s/zoltan_distrib_v%s.tar.gz' % (Zoltan.base_url, version)
-
def install(self, spec, prefix):
# FIXME: The older Zoltan versions fail to compile the F90 MPI wrappers
# because of some complicated generic type problem.
@@ -79,7 +76,7 @@ class Zoltan(Package):
if '+shared' in spec:
config_args.append('RANLIB=echo')
config_args.append('--with-ar=$(CXX) -shared $(LDFLAGS) -o')
- config_cflags.append('-fPIC')
+ config_cflags.append(self.compiler.pic_flag)
if spec.satisfies('%gcc'):
config_args.append('--with-libs={0}'.format('-lgfortran'))
@@ -88,9 +85,18 @@ class Zoltan(Package):
config_args.append('CXX={0}'.format(spec['mpi'].mpicxx))
config_args.append('FC={0}'.format(spec['mpi'].mpifc))
- mpi_libs = ' -l'.join(self.get_mpi_libs())
config_args.append('--with-mpi={0}'.format(spec['mpi'].prefix))
- config_args.append('--with-mpi-libs=-l{0}'.format(mpi_libs))
+
+ mpi_libs = self.get_mpi_libs()
+
+ # NOTE: Some external mpi installations may have empty lib
+ # directory (e.g. bg-q). In this case we need to explicitly
+ # pass empty library name.
+ if mpi_libs:
+ mpi_libs = ' -l'.join(mpi_libs)
+ config_args.append('--with-mpi-libs=-l{0}'.format(mpi_libs))
+ else:
+ config_args.append('--with-mpi-libs= ')
# NOTE: Early versions of Zoltan come packaged with a few embedded
# library packages (e.g. ParMETIS, Scotch), which messes with Spack's
diff --git a/var/spack/repos/builtin/packages/zsh/package.py b/var/spack/repos/builtin/packages/zsh/package.py
index a70d307be9..53b3c7d536 100644
--- a/var/spack/repos/builtin/packages/zsh/package.py
+++ b/var/spack/repos/builtin/packages/zsh/package.py
@@ -1,13 +1,13 @@
##############################################################################
-# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
-# For details, see https://github.com/llnl/spack
-# Please also see the LICENSE file for our notice and the LGPL.
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
@@ -25,7 +25,7 @@
from spack import *
-class Zsh(Package):
+class Zsh(AutotoolsPackage):
"""Zsh is a shell designed for interactive use, although it is also a
powerful scripting language. Many of the useful features of bash, ksh, and
tcsh were incorporated into zsh; many original features were added.
@@ -34,12 +34,24 @@ class Zsh(Package):
homepage = "http://www.zsh.org"
url = "http://downloads.sourceforge.net/project/zsh/zsh/5.1.1/zsh-5.1.1.tar.gz"
+ version('5.3.1', checksum='d583fbca0c2410bf9542ce8a651c26ca')
version('5.1.1', checksum='8ba28a9ef82e40c3a271602f18343b2f')
+ # Testing for terminal related things causes failures in e.g. Jenkins.
+ # See e.g. https://www.zsh.org/mla/users/2003/msg00845.html,
+ # although the name of the option has evolved since then.
+ variant('skip-tcsetpgrp-test', default=True,
+ description="Skip configure's tcsetpgrp test")
+
depends_on("pcre")
+ depends_on("ncurses")
- def install(self, spec, prefix):
- configure('--prefix=%s' % prefix)
+ def configure_args(self):
+ if '+skip-tcsetpgrp-test' in self.spec:
+ # assert that we have a functional tcsetpgrp
+ args = ['--with-tcsetpgrp']
+ else:
+ # let configure run it's test and see what's what
+ args = []
- make()
- make("install")
+ return args
diff --git a/var/spack/repos/builtin/packages/zstd/package.py b/var/spack/repos/builtin/packages/zstd/package.py
new file mode 100644
index 0000000000..9387311fbb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/zstd/package.py
@@ -0,0 +1,40 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/spack/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Zstd(MakefilePackage):
+ """Zstandard, or zstd as short version, is a fast lossless compression
+ algorithm, targeting real-time compression scenarios at zlib-level and
+ better compression ratios."""
+
+ homepage = "http://facebook.github.io/zstd/"
+ url = "https://github.com/facebook/zstd/archive/v1.1.2.tar.gz"
+
+ version('1.3.0', '888660a850e33c2dcc7c4f9d0b04d347')
+ version('1.1.2', '4c57a080d194bdaac83f2d3251fc7ffc')
+
+ def install(self, spec, prefix):
+ make('install', 'PREFIX={0}'.format(prefix))